2015 年终总结
我在写这个开头的时候,脑中跳出的头一句是:“2015是变革的一年,是发展的一年,是丰收的一年”。可以是觉得有点写思想汇报即视感,于是作罢。
想要写点什么新奇的东西,可以又觉得任凭我怎么总结2015都会有所疏漏,因而作此文不为总结,只为留下些东西,权作日后的参考。
2015新工作的开始
2015开始的标志是新工作的开始。2014人生的低谷以从Bloomberg辞职划上了一个句号。遇到那些恶心的事情也没什么好抱怨的,只能说天时地利人和自己一个不占,又没有什么实力,被小人暗算也是情理之中。好在在年终及时找到新工作,结束了长达半年的折磨。整个事件过去一年了,回想起来那些细节却依然历历在目,小人的各种鬼蜮伎俩实令人难以招架,最后以自己一败涂地收尾。虽然临走时在HR那边仔细说明了事件的经过,但是应该没有什么效用,一个离开公司的人,你的画又能有多少分量。
加入新公司,所有事情都是新的:搬到了乡下的新家,又恢复自己住的日子,从每天坐地铁上下班改成开车上下班,从一个几千人的大公司到了一个只有不到100人的小公司,从一幢高大上的玻璃大楼搬到狭小而且没有窗户的小办公司,落差确实很大。索性新工作就有很多有趣的新技术可以学,从头开始学C#,研究ASP.NET,修理奇怪的Bug,研究怎么提高算法的效率,提高计算的速度。总体来说,在小公司一年学到的东西要比在Bloomberg三年学到的东西多得多。更可贵的是,小公司也没有复杂的政治斗争,人际就是工作关系,目标简单:做好工作,创造价值。此外无他。所以一起工作都是以创造价值为基础的。比如做的第一个项目是把一份用了很久的测试软件升级为64位,因为这份软件很消耗内存,而32位寻址最大到4GB的限制就很影响软件的应用。整个项目耗时大约1个月,因为不是很简单的把Build Target改成x64就能解决问题,要处理很多包的依赖性问题,因为32位和64不位不能轻易混用,又要考虑重新编译很多第三方的库,最后还要保证输出的输出的数值和原来元件相同。看起来不复杂的任务也做了很久。
第二个项目是我最主要的项目,要求把一个原先用Matlab写的库全部转换成C#。经过研究,决定使用商业的软件作为数值计算的基础,而中间又经历了很多次的测试和Profiling,我会在另外一片文章中仔细讲如何提到ILNumerics的性能,以达到比Matlab速度还快,毕竟全部使用CPU的库要达到使用GPU的库的速度,还是需要些技巧。
2015 工作之余
2015年中面过Amazon纽约被拒后,自己分析了下自身的情况,决定停止面试转而想办法提到业务水平,作为以个转行CS的业余码工,许多知识都闻所未闻,及时知道了也是一知半解。于是决定开始用Evernote记录平时遇到的一些好东西,比如微信上面的分享文章,网络上的技术博客,或者Stackoverflow上不错的问答。同时决定开始从头开始制作博客。因为想做一个类似沙盒的博客,也就是说,以后可以随时拿这个博客来测试一些新奇的玩意,所以我没有现成的像是Wordpress或者Blogger这样服务,而是用NodeJs搭出现在这个博客。中间件用的是Express,后面加挂Reddit作为缓存。前台用RequireJS做包管理,开始用AngularJS来做一些可以重用的View,在后来ReactJS流行后,边逐步改成ReactJs。我只能说,这个博客还是在初级阶段,我一直努力写一些有营养的文章,无奈目前能力所限,只能在今后的一年里更加努力。
2015 读书, 读好书
书籍是人类进步的阶梯。2015前半年零零散散读了些小说散文:
看了刘慈溪的《三体》,很是佩服作者的想象力,不过感觉和欧美更加硬核的科幻比起来,《三体》的逻辑性还有待提高。
2015看的最好的一本是是Greg McKeown的《Essentialism》,这本书从人们日常学习工作的一些常见的行为入手,分析了为什么有些人很忙却没有什么收货,有些人却可以有四两拨千斤的功力。关键在于学会说”不“,学会选择,学会规划,窃以为沉陷于职场中的每个人都应该好好读读那么书。
Barbara Sher的《Refuse to Choose》。我只仔细读了前半部分,作者讲了另外一种人——Scanner,这类人的特点是1)好奇心重,喜欢学习任何可以学习的东西;2)喜欢同时做很多事情;3)很容易对反复做同样的事情感到厌倦;4)不喜欢深入研究某个技能,往往半途而费。看了这本书,觉得完全是在总结我的特点。作者给了一些建议,比如把所有想做的事情写下来,固定时间选一项做。或者不要有心里压力,半途而费也没什么,因为很多东西只是为了满足Scanner学习的欲望。
Malcolm Gladwell的Outliers。这本书给人耳目一新的感觉,作者以日常的一些想象入手。比如为什么好的橄榄球运动员大多出生在一月到三月?为什么Bill Gates, Steve Jobs或者Bill Joy能够那么成功,究竟是一万小时定律还是有别的原因?为什么不同地方的人有不同的行为?
Ta-Nehisi Coates的《Between the world and me》最近的畅销书,不做评论。
Robin Cook的《Nano》,感觉一般,觉得这种大众“畅销书作者写书有一种套路,比如Nichlas Sparks或者John Grisham等等,他们的书Plot都很类似,只是换了人物和地点,所以随便看一辆本评价不错的也就可以了。
Ayaan Hirsi Ali的《Herectic》希望了解穆斯林的都应该读读,作者本来严格信封伊斯兰教,但是后来放弃了这个宗教,整本书仔细剖析了伊斯兰教成形成,和其他宗教的区别以及现代恐怖主义的成因。
在读的其他书也有很多,以后有机会再一一写下吧。
其他技术类的也看了一些
Javascript Ninja,强烈推荐的一本书,虽然新的ES6开始广泛应用,书里有些技巧用不到了,但是还是可以通过看这本书来体会到Javascript的博大精深。
深入浅出Nodejs,国内大神的一本讲Node的书,国外买不到只好找来PDF打印,和网路上大部分Node教程不同,这本书的特点就是深, 详尽,有些东西比如用C++写Node模块估计一般人也不大会用到,但是非常感谢作者提到这些,这本书作为参考书或者学习用书都是再合适不过了。
其他很多技术书还一直在读,因为我不喜欢读完一本书再去实现,而是喜欢先实现,再翻翻书,再实现,再翻书,直到把整本书都看完,所谓技术书读的会比较慢。