作者:拙尘 来源:译言 酷勤网收集 2007-12-29
我的编程历史不可谓不长:从小学时代在苹果机绿莹莹的屏幕上打出第一行Basic代码( 与“邓摸头”的年龄仿佛吧),到大学里凭一个软件项目拿过学校科展的三等奖,再到现在偶尔还写几行代码,已经二十多年了。然而仔细算起来,真正的程序员之路,仅仅始于四年前。
那是2003年春天,我在南加州大学念书,还有一门核心课就可以拿到计算机科学的硕士。这门课就是compiler design。一学期的课程,就是在做一个大的课内project:编写一个完整的类C++编译器。那时候记忆最深的有两件事:一是机房里满是打地铺的学生,二是我们小组常常在半夜一两点的时候,去学校附近的一个韩国馆子,或是开上半小时车到新中国城的小陆子清粥,慰劳一下自己。那个编译器,其实并不完全是自己写的——大的框架已经给好,一些主要的函数接口也都定义好了。(中国学生还喜欢“参考”前人的代码,但我们小组没有。)尽管这样,一学期下来,几乎每个人都掉了一层皮。那次,是我第一次完完整整地写一个较为复杂的软件,第一次尝试去读懂较为高深的程序结构,第一次认识到编程并不仅仅是脑子清楚、够快就能做好的事情,而是一门艺术。
2003年底,我很幸运地在博士论文答辩刚刚通过的时候,就拿到了Oracle的offer,并在2004年1月正式成为了一名软件工程师——Oracle 叫应用工程师(Applications Engineer),因为我们的职责并不是单纯的写代码,而是要开发企业应用软件。我的工业工程博士和计算机科学硕士肯定对于拿到 offer 起了关键作用。
在 Oracle 的工作,说实话,比较轻松。或者严格地说,第一年还须努力,第二年比较轻松,第三年就非常轻松了——因为对自己的那一块,熟得不能再熟了。而大公司产品更新的速度又都很慢,这样就有了很多自己的时间。在浪费了很多时间之余,我总算完完整整地读了两本书:《More Effective C++》和《The Mythical Man Month》(中译本名字叫《人月神话》),多少算是学了点儿东西。
2006年下半年,开始和丁丁、雷声大雨点大一起创办译言。三个人里,我的代码贡献量是最少的,对互联网的理解也是最弱的。不过,就凭着这点儿经历,我回到了国内,彻底投身于互联网事业了。
我绝对算不上是骇客级的程序精英,即便距普通的程序高手,也相差甚远。之所以敢在这里大言不惭地以“程序员之路”为题,写些不知所云的文字,是受了两个人的鼓励:一个是我们的产品经理,是他鼓动我把自己的经历和认识写一写,对于国内的软件行业多少是个借鉴;另一个就是孙小小,她总是在网上拉着我去看他们的Toastmaster Club 的blog,其PR可谓尽心尽职。而最让我深受感染的,是她那种对Presentation 的热爱和执着。
说了半天,还没有扣这节的标题——无知者无畏。我是从王朔那里学到这句话的。年少的时候,看到的是无畏,觉得里面很有一股一往无前的豪情壮志。随着年龄渐大,终于明白,原来无畏只是无知的一种表现。正所谓,知道得越多,就发现自己不知道的越多。所以现在,大多时候我都是战战兢兢,如履薄冰。难怪毛泽东会说:读书越多越反动。不过,这次回来,我可算是又彻彻底底的无畏了一把——因为对阔别了六年多的故土的无知,因为对刚刚接触了不到一年的互联网事业的无知,还因为对逐梦途中艰难险阻的无知。

