入手了个Kindle

一方面是收到K总蛊惑,一方面是决定调整下多看点书,不能每天浪费太多时间刷微博,但是天天带iPad一是沉,而是的确很费眼睛。于是小长假前未经领导批示,大出血入了Kindle 3G+官方带灯皮套,目前看来,Kindle物有所值,受K总忽悠入了3G版其实意义不大,带灯皮套很好,但是价格太坑爹了。

3月份过完年的时候给老妈买了个百看,这次本来也是在各类电子书之间犹豫的,买了Kindle主要还是看重有些书可以直接在Amazon买Kindle版,排版比自己用PDF转的要好多了。到手之后,发现做工上Kindle还是比百看强出一条街的,翻页响应也快不少,不过就是保修麻烦,而上次那个百看买了两个月都没怎么用过就花屏了,寄回京东重新换了个新的。所以这回干脆狠狠心入了个皮套,想想3G版都买了,于是干脆入了个带灯的皮套,于是最后花出去的钱基本可以买两个广告版的了,还是比较烧包的。

用了两天,总结如下:

  • 从看书来说,E-Ink秒杀一切,除了随手写写画画和快速翻页比不上纸质书,其余都远远超出,而且如果是用来看非技术类书籍,因为基本不需要记录,可以认为是完美,甚至可以说超过了纸质书
  • Kindle最大的优势应该是Amazon背后强大的内容,这个其实和iPad是一样的,我先是下了个Kindle版的Domain Specific Languages的sample,看完了Chapter1.1于是掏出信用卡买了全本电子版。
  • 3G对美国人民可能很有用,但是对中国人民意思不大,会检查你的ip所在的国度,要求传真验证地址身份,看看到时候麻烦哪位在美国的同学把Kindle挂到他名下去
  • 皮套的保护很不错,可是太厚重了,加了皮套单手持着就有些中了。灯很有意义,特别是晚上坐公车回家的时候,供电设计也很有意思,只是不能均匀照射到整个屏幕
  • 6寸的Kindle,用来看技术书,如果是Kindle版的或者正版制作好的mobi版可以接受,但是Kindle DXG应该会更加完美
  • 键盘加bookmark和note还是有一定意义的,内置字典非常有用,没有必要刷多看,原生系统用来看书足够了
  • 原生的PDF阅读功能基本没用,书还是要转成Mobi,因为PDF的不能重排也不能调字体,所以等于没用,专门制作的6寸的PDF太罕见了,而且如果是专门制作的,完全可以搞Mobi么

Anyway,结论是,重度阅读者必备工具啊,让随时随地的阅读体验大大提升。

回过头来说,书籍电子化已经发展了很多年了,然而作为一个中国人民,想舒舒服服看电子书仍然只有糟糕的两个选择,盗版,或者装作一个美国人民。就像我前面说得,Kindle对我来说,最有吸引力的并不是3G上网或者硬件设备,而是在良好的阅读体验之上,Amazon拥有的无数Well-Formatted的书,这样我就不再需要买纸质书占地方了,而且所有的书,我都可以在看完sample之后决定要不要买,从这个角度来说,Kindle 3G可以提供的可以说是最佳的购书体验了。不需要你没有看过书就决定买不买(目前国内网上买书最大的缺点是很多书不知道值不值得买来看),也不许要跑到书店里去买(我已经多年没有进过书店了,但是这几年),甚至都不需要等快递送上门了(有时候想看书买了之后等快递要一个礼拜)。

可惜,这些优势都是只有美国人民有,中国人民只能 1. 装作美国人掏美刀跑到Amazon上买还要受歧视不让你买 2. 盗版,而且那么多年,这些国内的出版商和零售商真是完全不思进取,严肃书籍,除了China-Pub搞了些没人看的技术书籍电子版之外,就没有人有动作的。我一直认为,最蠢的一种想法就是惧怕盗版,要知道,这个阵地他们不占领,就会被盗版占领,现在互联网上已经有大量的自制的盗版版本了,质量虽然比不上Amazon Kindle的那种,有些错字,但是完全可以看了,不出电子版,就只能坐等大家去看盗版。如果真能够做到像Amazon在北美那样,可以试看,购买,同步,记笔记,同步笔记,然后绑定好设备来给盗版增加麻烦,我相信虽然不可能是一个iPad这样的市场,也会完全是一个有得做的市场,事实上,国内目前的iOS的App也有不少的正版软件消费量了。

当然,其实大家都知道,国内的出版商和在线零售商是没有足够的技术支撑来干这事儿的,唯一有点指望的是卓越能够跨过外资这道门槛把Amazon在美国的服务复制到中国来,或者,用脚投票投奔U.S.A.去。如果国内的电子书渠道能够像Amazon在美国这样,我想我就会考虑再入一台Kindle DXG的。


Go Back to the Fundamental

这周LJ发现系统里有大量的缓存没有清掉,一开始误以为是我的定时提交的Job中有什么问题,虽然最终发现是因为系统对于验证阶段不能通过的Job就会缓存Job文件供日后分析,但是在怀疑自己提交的Job有问题的时候,花了两天时间清理掉了以前没有解决的Bug,并且进一步发现了某些Bug的深层原因。这事儿又是给自己一个教训,一是凡是出错必有原因。二是所有新功能都应当在显然是Bug的东西修复了之后完成。其实这样的错误不是第一次犯了,而且从道理上也清楚的知道该怎么做,但是时不时总会觉得自己已经有足够的经验去把握各种优先级了,于是时不时就会再犯一次,希望这是最后一次了。大部分事情要做好其实很简单,按照自然规律,一步一步仔仔细细做完,Over,可惜总是急躁地想抄近道,最后在事后付出代价。好在的确工作年限多了点,现在犯的错误往往不是致命的,最多也就是多浪费了那么一点时间罢了。

今天又和好久未见的Mars同学聊了一阵,现在我们算是一个行业里了,聊到目前飞速发展的互联网和电子商务,一边感慨的确入对了行,一边也都觉得行业里大部分的人还都是过于浮躁了,机会虽然看起来很多,但是大家都急冲冲地做的结果就是门槛看似很低,但是大部分都会死。然而很多死者,无论是做技术还是做市场做商务的,其实都没有真正做到把自己的事情做好,也许真是要退潮了,才能看出谁是裸泳者。

其实这个和写程序是一样的,问题暴露出来之前,各种抄近道导致的Tech Debt都不会被意识到的,所以还是告诫自己,有耐心地,一点一滴的把事情做好。

看了看春节里写的今年看三本书的计划,当时我还觉得时间还蛮宽裕的,但是仔细算算,其实也不怎么够用,如果每天看个一两节,其实看完这三本书一年都不够,不管了,每天1-3节吧,多了也坚持不下来的。


不对自我设限与来自未来的挑战

话说我是一贯认为程序员是个很有前途的职业,因为工作的这几年来,最大的感触就是好的程序员太少,好的程序员的供给,其实是远远小于市场的需求的。这个原因有两方面,一方面是,贵国发展太快,聪明的孩子们现在的选择太多,当PM的,当Dev Manager的,甚或是转行去读MBA的,考公务员的,搞金融的,总之是聪明人的挣钱过舒服日子的实在不少,于是,程序员这个很有前途的职业就被大家放弃了;另一方面,互联网行业在贵国发展太快,现在需要好的程序员的公司实在太多。这样一两面夹击,您要真是能做个优秀的开发人员,过过中产生活应当是绰绰有余(当然,您要在北京二环买房,没有个叫李刚的爸爸可能买不了)。而且,您要真是个优秀的程序员,也是可以干到60岁的,常见的所谓30岁怎么办,其实是个巨大的误区,这个问题,因为不是本文的主旨,所以就不展开讨论了,下次专门写个文章说一下为啥这行业可以干到60岁。

然而尽管我如此认为,我最近也时常想,也许20年后我也不一定每天写程序了,虽然每天写程序的概率仍然很大。之所以这么想,其中有一部分是因为这个链接。想想几十年前,汽车业也是最NB,最伟大的行业啊,虽然现在也算不上夕阳行业了,但是远不如那时候那么激动人心了。想想福特的蓝血十杰,要搁现在应该都去华尔街或者干互联网了吧。所以虽然现在的互联网仍然是风起云涌,是各位好人们挥洒大好青春的领地,但是在等20年,可能最刺激的时代就会过去了吧。而我之所以现在仍然自称喜欢写程序,无非是三方面的原因,一是求知的乐趣,二是看得到奔头的物质回报,三是觉得自己好歹在创造点有用的东西的成就感。而每当看到这样的文章的我,就容易头脑发热,觉得自己死活应该去读个博士。

所以我想,虽然我接下来四五年一定是在做程序员这个很有前途的行业,但是几年以后如果能像Elon Musk或者John Carmack一样参与到发射火箭的活动中,我会毫不犹豫跑去吧,所以为了这个,我也应该做个学好数学的程序员吧,对于擅长逻辑思维和计算的我,写程序和数学算是我未来有机会跨行业干活的重要工具吧。

说到这里估计会被人当作少不经事太爱幻想,不过这几年我越来越发现人不能对自我设限,自我设限通常结果不是让你脚踏实地而是容易让你原地踏步。本来我想我大学没好好念书,也就不想啥再去读个PhD了,但是看了Paul McKenney老人家的简历,我觉其实准备准备也可以考虑三四十去读个PhD么?以前总觉得没指望名片上从Mr.改成Dr.的限制其实都来自自己么?其实,工作了这几年,越来越发现,其实身边的大牛们,并没有比我多个脑袋,或者一定每天只需要睡4个小时,无非是天赋、机遇、眼界,加上日供一卒的努力罢了,大部分身边的大牛们,和你我的差别不在天赋上,不在机遇上,而往往是在眼界和每日持续的努力上。而自我设限,一是愣把眼界降低一层,非觉得别人能拿一等奖能读博,自己不能总只想着卖烧饼;二是往往主动放弃了每天向前一点点的努力,因为觉得读不了博了干脆就不学点儿难的数学GRE或者Lisp了。最后是啥也没干成,但这种自我预言的实现是十足地犯傻呢。

未来还很长呢,想想十多年前上大学的时候,我还没手机呢,现在手机3G上网都比我家上网快了,又有谁会知道15年后我会去干什么,虽然多半我仍然在写着我那很有前途的程序,兴许外星人真来了我去当翻译了呢。虽然,图灵奖我估摸着的确应该是拿不了了,但咱们怎么也这辈子读个博士,发两篇有点儿意义的论文先吧。


疯狂坦克重新设计

前两天半夜里和同事聊到的,怎么在免费的模式下设计疯狂坦克的游戏模式,来粘住用户,这边纪录以下。

1.游戏有两种模式,普通模式和比赛模式,普通模式基本和原来的疯狂坦克一样,但是获胜和失败都会获得经验,获胜的多一些,失败的少一些。
2.普通模式可以使用固定数量的道具(比如一场4个),最基本的道具免费,一般道具可使用游戏中的钱或者真实货币来买,高级道具只能通过游戏中的钱或者真实货币来买宝箱,随机开启。
3.普通模式中所有玩家可以选择的坦克状态都是相同的。
4.比赛模式中,每个玩家可以在一开始买一辆原始的坦克(多种初始类型可以选择),然后用经验进行升级,就是加血,攻,防,移动。
5.比赛模式每天固定时间开放(比如晚8:00-12:00),为N败淘汰制,就是说输了N场就被踢出去了,今天不能进比赛模式了。
6.比赛模式当日排名前10获得宝箱,有一定几率拿到钱or经验or装备or道具,其他人根据胜负场数获得一定数目的钱。
7.比赛模式道具使用数量不限,装备作为永久性道具出现(比如双炮管,等于永远有双发),装备在比赛中有一定几率损坏。

基本上,出发点就是如何让休闲类的网游像MMO RPG一样来粘住用户,同时又不失去平时普通休闲游戏的用户。办法就是让核心玩家通过普通模式,养一个比赛模式的坦克,让他们能有升级,PK等等的快感。同时,由于这个坦克不能用在普通模式中,不会破坏普通模式里休闲玩家的游戏体验。

至于什么国战、工会等等都可以在这个基础上做扩展。


赛场沙盘

下班回到家的路上,想起和小文同学解释篮球战术的痛苦,然后想到其实可以在blog上画画赛场沙盘,分享我对篮球战术的理解。似乎很少在internet上找到相关的赛场沙盘,然后发现手工画赛场一定是一件很痛苦的事,于是就有了这个Idea。

其实很简单,就是做一个用来画战术示意图的赛场沙盘的工具,拖拉O和X作为双方队员,可以设置实线和虚线表示跑位,背景是球场缩略图,然后可以将图片储存为jpg,预计工作量为一天,不过以我做事拖拉的性格,不知道毕业之前能搞定么,对于NBA Fans + Blogger应该还算是个有用的工具。立此存照,争取写完毕设和论文开始动手搞定。