一年又一年,说是过去的时光流逝得比较快,但回忆起这一年来,却又感觉好漫长。

很多事物的细节经不起回忆,我就只讲个梗概吧。

这一年,我读了很多书。

这个“很多”并不是绝对数量的多,而是相对数量的多,是跟以前的我相比,读的书多了。比起那些真正读书多的人,我这点阅读量是上不得台面的。但是比以前多,便是个极大的进步,至少花在阅读上的时间是平时工作之余挤出来的,说明我的自制力在增强,不会总是将这些宝贵的时间浪费在玩游戏和看电影上,当然啦,游戏该玩还得玩,电影该看还得看,只不过时间分配上得到了优化。

除了读书,我还写读书笔记。写读书笔记这件事,并不是我之前玩笑的那样仅仅是为了附庸风雅。堂妹问过我,感觉自己读书读不进去,或者说读完之后没有收获,怎么办?我支的招就是在读的过程要去想,怎样把读到的东西转述给其它人。这也就是我写读书笔记的真实目的,凡人总是健忘,我尤甚。细细数起来,我今年写的读书笔记不过寥寥四篇,我有些诧异,于是又细细地数过一遍,确定是四篇,好吧,四篇就四篇吧。

书越读越多,也便越读越快,上一本书的读书笔记没有来得及写,下一本书业已读完了。有些书不适合写成读书笔记,比如说托克维尔的《论美国的民主<精华版>》,看完之后虽然也有些许收获,但精华版终究只是得其两三,不能得其全貌,贸然下笔,怕是会贻笑大方的。而小说一类于我,也不适合写读书笔记,如毛姆的《月亮与六便士》、加西亚-马尔克斯的《百年独孤》、东野圭吾的《解忧杂货店》和《白夜行》、詹姆斯-M-凯恩的《邮差总按两遍铃》和《双重赔偿》。所谓“一千个人,就有一千个哈姆雷特”,我所理解的并不一定就是作者想要表述的,蓝窗帘可能他妈的就是蓝窗帘,并无深意,干脆也就不写了。

我一般会给说理性比较强的书写读书笔记。《万历十五年》、《自私的基因》、《独裁者笔记》都是此类,两个月前读完的《枪炮、钢铁与病菌》和眼下正在阅读的《必然》也是此类,只不过《枪炮、病菌与钢铁》所涉及的课题极为宏大,几番思量还是有些难以下笔,再者前面一直忙于编写输入法,便耽搁至今。今日在此立个字据,在这个春节过完之前,务必把此书的读书笔记写出来。而咪蒙的《我喜欢这个功利的世界》则属于异类了,若不是女朋友很推崇,我也不会去看她的作品。这本书特别有“情绪”,读完感觉心中总有郁节需要抒发。吐槽也罢,赞叹也罢,我反而觉得在四篇读书笔记里面,给《我喜欢这个功利的世界》写的那篇最佳,看来我还是嘲讽比较在行。

读书也不完全是读个意思,就像听歌不能就为了听个响。养成读书习惯的一大好处是,进入心流的时间变短了,进入心流之后的持续时间变长了。所谓心流,就是一种特别专注的状态,像程序员写代码的时候就容易进入这种状态。以前读书读不进去,读不了一会儿便抓耳挠腮起来,如今读习惯了,很快就可以进入状态,即便中间中断了,回去之后也可以很快找回来。这一点大概也是我所以能把工作之余的零碎时间利用起来的原因吧。

这一年,我学习了一些新技术。

虽然我已经毕业了,也许从此再也与象牙塔无缘,但我始终觉得自己还是一个学生。而作为一个以程序员自居的伪程序员,终身学习是一项必不可少的技能。之前的师友偶尔会问起我,现在还写不写代码呀?我的回答都是,写。不仅写,而且还要写得比以前更用心,毕竟工作之后能够拿来写代码的时间是相当宝贵的。在我学习的新技术中,以Xamarin开发技术为主。在《我为什么选择Xamarin》一文中,我解释了学习Xamarin开发技术的原因——我想用它开发iOS版的岁寒输入法,并使其尽可能具有跨平台的能力。这其中有些许的巧合性,因为直到2016年4月份,微软才将原Xamarin公司收购并将其产品免费提供给开发者。在此之前,Xamarin的开发授权费用是非常昂贵的,这意味着如果我早一些决定开发iOS,或微软晚一些收购Xamarin,我都只有原生开发方案可选。

比起开瓶器和水果刀,我总是偏爱瑞士军刀。但选择Xamarin方案并不是只有好处,Xamarin方案在国内并不流行,几乎所有的可用技术资料都是英文的,阅读起来颇为费劲。但这也不算什么,语言这个东西与编程是一样的,多读多看自然就习惯了。如今阅读整篇的英文文章,并从中寻找有用信息解决实际问题,已是一件家常便饭。为了能够访问到外国好的资源,我开始尝试购买VPN服务,这里顺便说一句,如果你也是学习编程的,那一定要有一个好的VPN服务去访问全球互联网,Google搜索得到的结果比百度好不止一点半点。

Xamarin的技术资源不像Android和iOS原生技术那样俯拾皆是,一本关于Xamarin的教程在淘宝上能够卖上两三百块,还别无分店。这固然是一个困难,但同时也是一个机遇,我便在自学Xamarin开发之余,将过程中遇到的问题或者是值得一书的知识点写成技术文章,发布到简书平台上,供大家阅览。虽然我的文章水平一般,所述之问题也停留在术的层面,但已可以让初入门径之人少走一些弯路,自觉足矣。

这一年,我又开发了一次岁寒输入法。

之所以说“又”,是因为仔细算起来,我此前已经完全重写过三次岁寒输入法。这一次可以算半次,毕竟不完全是另起炉灶,Android版岁寒输入法的核心代码基本上被原封不动的保留下来,只不过需要从Java版转成C#版。而两种语言本身具有的相似性,使得整个转换的过程完成得非常之顺利,剩下的事情就是重写一套iOS版的界面和新的业务逻辑。这套新的业务逻辑是完完全全跨平台的,换言之,我如果想要写一个WP版的岁寒输入法,需要做的事情会比写iOS版还要少——写一套WP版的界面就可以了。可惜的是,WP的生态已然无药可救,而且微软并没有给第三方输入法预留接口。

虽然Xamarin是跨平台的开发技术,但想要从事iOS的开发,mac操作系统仍是必不可少的。虽然我也可以尝试安装黑苹果,但折腾黑苹果的时间成本是我难以忍受的。为此我花费3千8百块钱从同事那边接手了一部12年出的macBook pro,又花了2百块钱扩展了内存,经过半年多来的使用,我认为这笔钱花得很值当。所谓“工欲善其事,必先利其器”,macBook确实是开发者的一件开发利器,它专一、美观而且强大。得益于此,我才能在年前将iOS版的岁寒输入法开发出来并发布到App Store上。我想我已经开始慢慢理解花钱买时间的奥义了。至于我现在从iOS版的岁寒输入法上赚到多少钱的问题,这种令人伤心的事情咱们可以先按下不表吗?

其实盈利不是开发iOS版岁寒输入法的全部目的,不过我要承认的是,做一款能赚钱的岁寒输入法的欲望比以往任何时候都要强烈。都说一鼓作气,再而衰,三而竭,我想知道,我还有没有再出发的勇气?

这一年,我似乎又长大了些。

从毕业参加工作到今天整好一年零一周。我又想起那个雾霾沉重的夜晚,那是一座工业城市冬季的主色调,我和同学推拉着旅行箱,提拎着包裹,一起穿过被寒冷冻结的空气,脚边的积雪掺糅进了尘埃和渣石,灵性已无。我们面对的是一个完全陌生的环境,虽然我们很快会对这里变得异常的熟悉,但此一时,此一刻,我们站在一张全新的地图上,好像多走几步都可能迷路。

读书使人明理,有些道理我是从书学到的,而有些道理,不经历似乎永远也不可能明白。学生时代的我仿佛是一个反复在阅读社会运行说明书的孩子,不懂装懂地在其上指指点点,参加工作之后,我才真正地感受到细密的社会分工所拥有的强大威力,知道一个齿轮的工作原理和成为一个齿轮在系统中运行是两种全然不同的体悟。

成长其实是一件说不清道不明的东西,有时候感觉自己已经长成了大人模样,有时候又觉得自己越活越倒退。也许是时间不容许自己不长大,我并不是说过一年便自然的长一岁,而是岁月会在身边的人身上留下不容忽视的痕迹。几个月前,侄女的出生给整个家庭带来了无穷的欢乐,而即将到来的新年是父亲的本命年,父亲也步入了花甲之年。我能看见他听我侃侃而谈时脑袋会不自禁地摇摆,我也能看见他满头霜白,我仿佛看见,鲜活的生命在新生,也在衰老,美丽的容颜在绽放,也在凋谢。一双无形的大手推搡着我走到大河的中央,我需要在水面将我淹没之前学会游泳。

你是否也听见,窗外的鞭炮声隆隆不止,这将会是崭新的一天,又明明与以往的每一天一般无二,但愿黎明再现时,我能沐浴在高纬度的阳光里。