每个人都想有所成就,可到底什么才叫成就呢?
有一段时间,我对C++特别狂热,感觉自己几乎读遍了市面上叫得响的C++书籍,尤其是读了《设计模式》之后,更觉得自己了不得了,当时特别有成就感。毕业设计狂用了一把STL,工作后由于项目限制,不能用STL,就在design pattern上下功夫,只要能搭上一点边就绝不浪费机会。当然,这里面有练手的成分,但无论如何,代码写好之后感觉特别好,不是因为解决了什么实际问题,而是因为用了当时最火的技术。
然而,这种成就感是虚假的,就像傍上大款的小明星以为自己就此跻身上流社会一样可笑。真正的成就感应该是来自于对他人直接的、或者间接的帮助,帮助人们提高工作效率,帮助人们更好地享受生活。这时候,solution is more important than implementation.能抓到老鼠的就是好猫,而其颜色如何,血统高贵与否倒是次要的了。这些是我在写了一个又一个Perl脚本之后获得的启发。有人说用Perl写出的程序很难维护,只适合写小程序,解决小问题。且不说这种观点正确与否,实际上,很多时候我们都是在做那些看起来琐碎的小事,真正重要的事情反而没有时间去做。Perl语言非常简洁,可以很快构建出一个小程序,尽管这个程序可能不好理解,但是却从此把人从烦琐的、机械的工作中解放出来,去从事更重要、更有意义、也更有趣的事情上去。而且,这样的小程序也未必需要怎样的维护,因为它所解决的问题是如此之小,小到根本无法容纳滋生复杂的基因。
原来,我经常为自己实践了书上的方法而兴奋不已,也会鄙视那些破坏我辛辛苦苦搭好的架势的人,就像有洁癖的人无法容忍一丝灰尘;现在,这种感觉淡了,反而愿意去写一些Perl脚本,自动化那些过去需要手工操作的工作,并“厚颜无耻”地向别人推销。我并不是喜新厌旧,认为Perl就比C++好,也无意引起争论,只是想说,只有踏踏实实做一些对他人有益的事,才是获得成就的唯一途径,而使用什么工具,不是特别重要。
等到事业有成,再来风花雪月也不迟:-),比如工作累了做两道数学题休息一下,或者背诵一遍C++里名字查找的顺序(这是我从来没记住,也没想记住的一部分)……