一开始吸引我的仅仅是这个书名。后来才了解到作者是有硅谷创业教父的之称的Paul Graham。这本书是他的文集。书中他用浅显的文字阐述自己对于计算机科学的认识,其对世界变革的影响和高科技创业蕴藏的巨大挑战和财富。他是一个成功的创业者,投资人,同时也是黑客,作家,并且在拿到哈佛计算机博士学位之后,在佛罗伦萨学习绘画,有过一段短暂的艺术家生涯。接触奇特而睿智的灵魂总是发人深省,似醍醐灌顶。

读到这些,开始体会到为什么我能在做这两件完全不同的事时体会到相似的满足感。而他描述自己的编程方法时,更是让我这个半路出家没有专业背景的却需要天天码代码的人会心一笑。

当我博士毕业之后,曾去艺术学校学习绘画。许多人都表示惊讶:学习计算机科学的人居然能对画画感兴趣!?他们似乎觉得写代码和画画是全然不同的两件事:写代码是枯燥,精准和有规可循的,而画画是天马行空的表达原始欲望。其实这两个印象都是不准确的,写代码和画画有很多的相似之处。事实上,在所有我认识的人中,黑客和画家有着最多的共同点。 他们的最大的共同之处便是:他们都是创造者

对于想写出漂亮程序的黑客来说,计算机只是一种工具,就像画家的画笔。

上学时我们学习到一个程序需要在纸上认真的规划好才能开始在电脑上编译。但是我发现我自己完全不是这样编程的!我发现自己一开始就对着电脑而不是一张纸。更糟糕的是,我完全不会在有耐心在纸上去详尽的计划一个理论上正确的程序,而是直接在电脑上扔出一小段程序就运行,虽然知道它能直接运行的可能性几乎为零。而就在出错,调试,再出错再调试的的过程中,完成一个程序的编译。

很长一段时间,我为自己错误的编程方法刚到深深自责,就像是在小学时,我因为没有像老师要求的那样握铅笔而不安一样。但如果我看看其他的创造者怎么工作时,比如画家和建筑师,我意识到其实我的做法有一个词可以描述——画草图!在我看来,学校里教的编程方法都是错误的,你应该在编译和调试的过程中创造出一个程序,就像作家写作,画家画画一样。

现在有点相信,成功的黑客应该都是艺术家,至少都有艺术家般的执着和不羁,当然高智商是必须的。不过Paul Graham在最后也承认自己给黑客加冠冕堂皇的艺术家帽子似乎太过了,至少现在这个时代,他们听着并不像画家那么酷。可是那些名画和著作在它们本身出现的时代并不像在现代这样被奉到很高的地位。一个新的媒介的出现,总是促使人们急切的去探索它所有的可能性,计算机科学与黑客似乎就正处于这个时期。

当然默默无闻的程序猿是不敢把自己想象成艺术家的,都谦虚的以码农自称。关注“程序猿”微博和一些geek博客,每次都被那些自嘲的段子和漫画逗乐,程序猿对于自己的职业似乎又爱又恨。又突然想到了离开不久的乔布斯,同样是这个时代催生的伟大的程序员,设计师以及商人。对于这个领域的人来说,似乎是最坏的时代,也是最好的时代。共勉之。

Buy Me A Coffee