今天,已经是 2016 年的第八天了。时间总是这样,当我们身处其中时觉得很漫长,但是过后看看,也没觉得什么。
2015 年是毕业后正式工作的第一年,地点从上海转到了杭州,2014 年终总结时做的那些计划,貌似也没能全部实现。
这篇文章主要回忆 2015 年中那些印象深刻的事与人,同时展望美好的 2016。

工作

再见,上海

毕业后找到第一份工作是在上海的 Ucloud,干的不是很开心,所以在15年年初趁着跳槽高峰期,我也离开了,来到了现在的公司——有赞。

现在还记得当时我是怎么去 Ucloud 面试的,当时办公地点还是在五角场,是租的创新工厂的办公区,里面聚集了很多创业公司,记得没事的时候就去楼梯间打打乒乓球,也是挺开心的。换了隆昌路新的办公室后,就没这个条件了。
在上海的生活也还可以,和一个学英语的男生合租的,平时也会自己做些饭,所以这段时间体重也没下来过。
房东人是对老夫妻,七八十岁的样子,人很好,我们刚搬进来的时候他们就嘱咐楼上楼下的邻居照顾我们,也会和我说些年轻人应该怎么闯闯之类的话,也是挺感谢的,希望他们身体健康。

在上海还有一件印象深刻的是,在元旦我和熊俊去外滩玩,那天我们去的早,后来人越来越多,我们就走了,第二天一看新闻,说外滩发生了踩踏事件,一身冷汗,现在想想也是挺后怕的。正好最近看到一篇英文文章,学到了一个词,stampede,表示“(人群的)蜂拥,恐慌”,看到一位网友调侃道:

去年的新年第一天,上海 stampede;今年的股市第一天,上海再一次 stampede。

加入有赞

离开 Ucloud 后,来到了现在的公司,之前也写过一篇文章我来有赞了 记录初到有赞的感受,准确应该是3月底加入有赞的,还记得当时在上海转租房子,没找到合适的人,我就和房东说了下自己的情况,然后东西一打包,就来杭州了。来杭州也没房子,住在公司附近的布丁酒店一周多,后来经同事介绍来到了现在住的望月公寓

这边的工作氛围比上海我觉得要好些,比较自由,时间规定也没那么严格。在这边的工作的收获也自然更多,不过也觉得不是特别满意,这边和 Ucloud 做基础云计算不一样,业务会多一些,所以我的专业知识提高的没我想的多,更多的是去熟悉业务。我不知道这种状态是好是坏,从 Ucloud 出来也没能摸清下面这些问题:

到底该如何专注一个方向?现在这样的工作状态是我想要的嘛?我到底想要什么?

杭州的生活也要比上海好些,没有那么多高楼大厦,自然也就没那么压抑。夏天那会还经常跑跑步,周末搞一些小东西,写写博客,挺开心的。

今天小兰实习正式结束了,虽然平时我对他也不知道“友好”,但他这么一走,我心里还真是有些不舍,也不知道怎么表达,祝小兰前途一切顺利,改日有机会再聚。

读书

14 年年终总结时说要看完下面三本书:

到今天,是一个都没完成。当时自己确实没能很好评估这三本书的“质量”,这三本书并不是“十天教你学会C语言”之类的书籍,它们每一本都需要花费大量时间去思考、揣摩,像《GEB》这部著作怕是需要较深的数学功底与AI方面的知识才能领略其精髓。SICP 中文版在268页的注解224中有提到 GEB 的部分内容,这里做个摘抄:

有人觉得这样的求值器是违反直觉的,因为它由一个相对简单的过程实现,却能去模拟可能比求值器本身还要负责的各种程序。通用求值器的存在是计算的一种深刻而美妙的性质。递归论是数理逻辑的一个分支,这一理论研究计算的逻辑限制。Douglas Hofstadter 的美妙著作《GEB》(1979)里探索了其中的一些思想。

在公司内部搞了个 SICP 读书小组,每周分享、讲解习题,开始进行的挺好,后来随着大家激情的消退,进度也一再推迟,现在印象比较深的是双 11 前后,我当时为了参加 SF 黑客马拉松,就暂停了两周的读书会,黑客马拉松结束后赶上双11公司做活动,然后就一直拖,第三章看完用了三个月,虽然第三章的内容比较多,怎么也不至于三个月时间才看完。现在进行到第四章了,不管怎样,一定要把这本书坚持一下,什么东西开始都是靠激情,但是能把一件事情做好,除了激情外,肯定需要坚持,而且是长时间的坚持。我也相信古今中外那些让我们记住名字的人,他们的杰出贡献和他们几十年如一日的坚持是分不开的。
比较欣慰的是,自己的 SICP 笔记截止到现在已经有 113 个 star,这也算是一种鼓励吧,同时自己也写了个 Scheme 方言,算是真正领略到了编程语言的奥秘,SICP 虽然是个时间黑洞,但是绝对值得投入。
Github Contributions

从上面 Github 的 Contributions 基本也可以看出来在,我在 5、6、7月份是比较活跃,这阶段应该也是看 SICP 最快的时间段,16 年争取让这个图更平均一些。

除了 SICP 之外,较完整看完的一本书是《Dive Into Python 3》,我的书评在这里。这本书很大一部分是在坐 89 路公交车去公司的路上看完的,算是充分利用时间吧,这里不得不推荐一下 Kindle,真是看书神器。其他还在看的书有:

更多可以查阅我的豆瓣我读页面。
2015 在看的书

写博客

我写博客遵循下面三个原则:

  • 原创。我们不是知识的“搬运工”,我们是知识的创造者
  • 干货。探究知识的本质,并不仅仅是 how,重要的是 why
  • 通俗易懂。最好让你一个不学计算机的人也能懂

15 年总共写出了 16 篇文章,数量不算多,但是我绝对可以说是我花费大量时间写出来的,除了一两篇是纪录生活轨迹的,绝大部分都是对一些知识的思考。
像年初写的关于 javascript 的两篇文章《javascript中的数据类型》《javascript中的面向对象编程》,基本把 javascript中的 good parts 写出来了,其中比较让人困惑的__proto__this、面向对象的实现等都有比较详尽的解释,我相信可以胜过互联网上其他关于 javascript 的介绍。

然后是关于 Java 集合框架的一些文章,其中我觉得写的比较好的有《Java集合框架综述》《Java HashMap 源码解析》《Java TreeMap 源码解析》,看了 SICP 后,对数据结构的理解也更深刻了,语言提供的各种类库基本都是对数据的各种封装,只不过由于应用场景不一样,所以底层实现的方式不一样。

之后是关于 SICP 前三章的总结:《SICP 第一章总结》《SICP 第二章总结》《SICP 第三章总结》。SICP 这本书给我带来太多太多关于编程上的认识了,希望对编程还有激情的同行们有机会一定要看一看。在看 SICP 之余,使用 Java 实现了个 Scheme 方言,《我的第一个玩具语言 JCScheme 问世了》这篇文章介绍了实现一个解释器的方方面面,感兴趣的可以参考。

年底最后一篇有份量的文章是《字符串,那些你不知道的事》,这部分内容是我在看《Dive into Python 3》时了解到的,真是大开眼界,我相信你应该也“小看”字符串了,抓紧去看看吧😊。

一直觉得能够写出一些通俗易懂但又有干货的文章不容易,我一直在努力。2016,希望为这世界贡献些美好的东西。

生活

今年五一期间,家里的姐姐结婚了,不过离我老家并不是很远。现在我的小外甥也已经四五个月了。倩姐也在15年12月30号嫁人了。
想想同龄人,大部分人都娶妻生子,只有一少部分人比较“另类”,还在坚持着不可预知的梦想。不过我觉得这也是正常的,大部分人注定平庸,只有那些不断坚持的人才有可能脱颖而出,当然我也不指望成为什么大老板,只是希望对得起自己的内心,记得小时候看过中央卫视的一个公益广告:心有多大,舞台就有多大,还有一句话也挺触动我的:

比你优秀的人不可怕,可怕的是比你优秀的人比你更努力

是呀,什么东西都比不过坚持,《肖申克的救赎》中的男主角真是做到了十年如一日。我们每个人都很容易被生活磨平了棱角,当初刚毕业时的雄心壮志也不知道丢在了那里。想想我从初中到现在的求学之路,也算幸运,遇到了几个对我人生有重大启发的老师,虽然大学上的不是什么985、211,但是也看到了很多之前不了解的东西,明白了只有去努力,任何时间都不晚。走上编程这条路算是这辈子最幸运的一件事,高考后报专业对编程根本也没什么概念,稀里糊涂的就报了,现在回头看看,真是上天的眷顾。

感情状态还是单身,不过幸好还是有几个异性好朋友,工作之余和她们调侃一下生活也变的精彩了很多。下半年遇到了触动我心灵的姑娘,不过貌似时间并不是那么合适,有太多的不定因素了,缘分到底会不会来我也不知道,只能做好自己目前的事情。之前没怎么考虑过定居、今后的家庭之类的话题,和这个姑娘聊了半年多后,也意识到这些问题了,希望 16 年她回国后能有有更多的缘分❤️。

展望 2016

以上罗列了 2015 年一些重要的事情,新的一年来临了,也要拥抱改变,给自己定一下新年目标。上面多次提到了坚持的意义,我觉得 2015 年我在这方面做的比之前的要好,虽然不是很完美,但是还时有了一些成果,今年一定要贯彻下去,毕竟太多事情需要做了。抓住主线,抵制诱惑,成为一个更好的自己。

减肥

具体来说我觉得第一件事就是:减肥。减肥这两个字对现代人来说真是再熟悉不过了,我从小就胖些,以后也就养成了习惯,也不在乎别人怎么说了,其实这给我现在造成了挺大的苦恼,当然注意是找对象方面,都说女为悦己者容,男也可以为悦己者容呀,更重要的是肥胖对身体健康不好,程序员本来的运动量就少,如果天天加班身体肯定吃不消。

我也相信每个胖子都是潜力股,其实减肥也没想的那么困难,只要保证每天的摄入小于消耗的能量,更具体的说,就是管住嘴,这样减肥也不是什么难事,知乎上看到一个减肥成功的人说的一句话,甚是欣赏,这里与大家分享下:

贪吃其实是人类贪念的一种,为了满足一时的快感,而不顾后果作出的一些行为。

成功的人一定要抑制自己的贪欲,这样才能成为更好的自己,为了在减少摄入时不至于肚子饿,网上一般推荐吃燕麦片,这种食物比较容易有饱腹感,这样就能够愉快的写代码了。后面有什么心得会再来与大家分享。

读书

除了 2015 年一直在读的 SICP,我觉得算法导论可以提上日程了,至于 GEB,我觉得应该还不会涉及到,可以先放一放。
2016 的书单会包含下面这些:

  • Code : The Hidden Language of Computer Hardware and Software,这本书主要是讲述计算机是如何一步步构造的。从最早的摩斯电码,到各种电路元件的实现原理,再到计算机中如何保存信息,对理解计算机如何工作非常有帮助。
  • Computer Systems: A Programmer’s Perspective。这本书主要是让我能够更好的理解操作系统。
  • 公共问题经济学,主要是一些经济学知识,在现代社会,每个人都需要懂一些经济学,不是嘛
  • Java Concurrency in Practice。主要讲授多线程方面的知识,其实这块知识我一直挺欠缺多,hadoop 本身就是个非常复杂的多线程程序,如果不了解这方面的知识,查错非常不方便,另一方面现在并发的场景越来越多,多线程注定是个热门话题。
  • The Little Schemer - 4th Edition,这是一本小巧精炼的书,主要讲解 Scheme 方面的东西,对理解一些概念,像递归、lambda 很有帮助,是 SICP 很好的辅助书籍。
  • The Seasoned Schemer,TLS 的晋级篇,16年应该也会开始读这本书

现在罗列的这些书籍 16 年很有可能看不完,后面也会补充这个书单。但是这里我想说的是:

行动起来,不要停止探寻新知识的脚步,多去总结、回顾,做到举一反三。

不是说看的书越多人就越厉害,这是错误的,准确的说应该是和人思考的多少成正比。

其他

16 年博客会照常写,还是遵循上面的三个原则。无意间发现可以用 Github 的 issue 来整理自己的 ideas,觉得不错,以后可以利用起来。

项目上需要多去实践,反复推敲自己写过的代码,不要仅仅停留在能用级别,王垠的《编程的智慧》这篇文章里面也反复提到了这一观点。gooreplacer 也一直在不断更新中,希望新的一年能够开发出更多有趣实用的小项目。

有出国的想法,所以秉承坚持的原则,每天使用扇贝网 APP 进行签到学习英文,用了一周发现还不错,文章内容比较新颖,就算人家做的再怎么不好,也不能成为自己放弃的借口。这是我在扇贝网的签到日历,如果你也想坚持学英语,我们可以加个好友。

总结

年年岁岁花相似,岁岁年年人不同。
2015 年已经过去了,让我们朝着 2016,大步向前。
生活会因你我的努力、坚持变得更好。