窗外是早晨浓重的雾。那的确只是雾,而不是在这座城市常见的霾。

窗子属于道路边一幢十多层高的居民楼,楼的西边儿有一棵不知名的树。树长得很高,树顶已经没过了两旁的建筑。虽然高,但看起来并不显得十分茂盛。树枝均匀的分布在树干上,让树整体上显得很有层次,像二十多岁少女的身姿。

透过洒落在晨雾里的朦朦胧胧的阳光,还是可以勉强从树下看到树上叶子的形状。椭圆形的树叶,面积并不大,长度只及人类中指的二分之一左右。叶片边缘有细小的锯齿,但在这么大的雾里肯定是分辨不出的了。或许是因为阳光的缘故,树南侧的叶子明显比北侧要茂密一些。

阅读全文 »

「学习一门新的编程语言」是每个程序员都必然会面对的一个课题(注:本文特指工程实践中常用的高级编程语言)。自从高一开始编程到现在,我也接触了不少的编程语言,有的语言已经能在工作中得心应手的使用;有的语言用的不多,但大概了解其设计,也能在官方文档的帮助下简单使用;还有的则之前很了解,但很长时间没有使用过了。

换一份新的工作是最有机会让程序员接触到新的东西的,最近我就应工作需求开始接触一门新的编程语言,学习过程中难免会和已经熟悉的编程语言进行对比,然后发现其实编程语言的学习完全是有「套路」可循的,这篇博客试图总结一下这种「套路」。

阅读全文 »

Shared mutable state is the root of all evil
共享的可变状态是万恶之源

Pete Hunt

大概是从去年年底开始,我开始断断续续地了解 Erlang 这门语言。之所以会想要去学习它,是因为它跟我已经比较熟悉的任何一门语言都有着截然不同的设计理念,而且我了解得越深,就越为其设计思想所折服。

虽然这门语言的年纪早已不算年轻,而且似乎从未「大众流行」过,但在如今 CPU 多核化和云计算的时代背景下,Erlang 却焕发出了不一样的生机。

阅读全文 »

最近趁着离职的一点空隙,稍微能有些时间和心情来思考一些更有深度和更长远的问题,这篇文章的内容算是我近期开的小小脑洞之一。

越来越发现,前人总结的一些众所周知并经过时间验证过的关于写代码的道理,只要我们换个角度来类比和思考,同样可以适用于我们人生历程的一些方面。这篇文章就是我想到的一些例子,小标题都是写代码时所谓的一些「金科玉律」,而我会试图通过这些相通的「规律」,衍生出个人对人生某个方面的思考,可能小到微不足道的个人习惯,大到能够决定人生方向的人生观。

阅读全文 »