创造力笔记

| Comments

坐在去深圳的火车上,翻着MiPad里面的zguide,在不断吸取新的知识的同时,也在不断赞叹作者对于编程哲学的理解。作为一名从业30余年(书中作者自述)老程序员,作者不仅试图通过这篇大作教会我们使用zeromq,更试图将他多年沉淀下来的思考教给我们。这不禁让我想起小时候的课文:授之以鱼不如授之以渔。也正是作者这样的态度,让我对这本书格外的感兴趣,即便是阅读英文,也丝毫没有困意。

于是乎,看着看着,就勾起了我对一个老问题的思考。为什么这些大牛们能够想到做这么一个非常cool的东西呢,为什么我就不会想到做呢?就算鄙人暂时水平不够,但是至少也应该在生命中的某个时刻,有这样的灵感来想到做一个cool一点的东西吧。想想自己虽然不算是计算机天才,但是也是名牌大学出来的“优秀”学生,每想及此,就有那么些许的不甘心与气馁。不过好在自己总是有些阿Q精神和积极向上的心态,不至于精神出问题。

经过了小小思索,就产生了些感悟。其实并不是自己没有灵感,而是自己不善于抓住灵感,以及自己没有足够的执行力来保存灵感。为什么这么说呢?zguide作者在谈及zeromq的开发初衷时,谈的最多的就是大软件中关于messaging的复杂和高成本,并且许多项目处于各种原因,都会在TCP的基础上开发出专属自己的messaging模块,而这些模块大部分都是很类似的,即大家都在重复发明轮子。于是乎,作者经过自己的思考和抽象,写出了zeromq这个专门负责messaging的高效、轻便、嵌入式库,所谓嵌入是指能够轻易嵌入其他项目中,成为一个好用的“轮子”。

从这个过程中,我们不难看出,其实作者的灵感也不是凭空想出来的,而是从他工作中的实际例子转化而来。而且是程序员的最朴素的思想——不做重复的工作。那么反省自己作为程序员难道就没有这样的时刻?当然有,只不过时之前根本没有这样的意识,来保留自己的灵感。当然,“没有意识”这样的结论过于苍白无力,其实内在还有更多的原因,比如:惰性、“工作”的忙碌等,但是这些统统不能成为自己忽略灵感的理由(等同于碌碌无为的理由)。

今后

于是,为了不让以后的自己遗憾,给自己立下如下要求(建议):

  • 经常总结手头的工作,寻找灵感
  • 每每想到一个IDEA时,要尽快落笔,记之
  • 经常回顾自己的想法,尝试将他们付诸实施
  • 经常与同伴讨论自己的想法,期待思想的共鸣

暂时想到这些,继续坐火车,to be continued…

Comments