编程和开车其实一样错综复杂。编程的世界里也有司机、技工、汽车生产商、交通工程师、地区性的交通法规、交通执法、不同地区的驾驶风格,当然还有大规模的汽车追尾事故等。编程也有自己的亚文化,若硬要把它们放在一起,肯定会出现不协调。
现在的狭隘可以说随处可见。就好像不同地区的司机,程序员也会在工业界和学术界里组成自己的小圈子,形成自己的术语、惯例、禁忌、学问等文化产物。他们能创造出自己的知识领地,就觉得自己天下第一、独一无二。不管发生何种重大事故或交通问题,人们都会把责任怪在不合格的司机和程序员头上。虽然有时候的确是他们不好,但很多时候,冲突都是由文化差异导致的理念不同所产生的。
本书由一系列故事组成的。它们形式各异,可能是文章、论文、指南、抱怨,也可能是小说。但不论文体是什么,每篇都和你分享了一个故事。就算你不会同意我所有的观点,至少我希望你能喜欢我的故事,若还能让你觉得豁然开朗的话,就再幸运不过啦。愿你能和我一样享受这段旅程。
——SteveYegge,《程序员的呐喊》