声明:本文发表于程序员杂志今年第9期,略有删节,非经杂志社与作者书面许可,请勿擅自转载部分或全部内容.
上世纪初,英国记者斯文顿天才地将内燃机.履带.武器与装甲这些风马牛不相及的东西结合,发明出了坦克——可以边移动边攻击的钢铁堡垒.在法国战场上,德军士兵被这看似笨重的玩意打得防不胜防.节节败退.在第一次世界大战后期的许多重要战役中,坦克都屡建奇功,某种意义上深刻地影响了一战的格局,被尊为“武器之王”.事隔多年,当我们再看到坦克的时候,却肯定不会再像当年的人们一样,大加赞叹榴弹炮加装甲履带是何等伟大的发明.这似乎应验了“静听不闻雷霆之声,熟视不睹泰山之形”的古语(刘伶«酒德颂»):人们总是会觉得已有的.习惯了的东西稀疏平常,不足为奇,似乎只是自己生不逢时,没有机会像斯文顿上校一般名留青史.
今天,当我们坐在unix字符终端前,习惯地用管道重定向组织数个简单unix程序的输入输出,完成复杂的任务(例如我就常用grep在make的提示中寻找编译错误的原因,再将结果保存到指定文件或是送到打印机),似乎谁也不会觉得这些简单的“|”, “<”,“>”符号背后有着怎样的学问.苏东坡的诗写道,“不识庐山真面目,只缘身在此山中”,伟大往往便蕴含在平凡之中身在unix系统“此山中”的我们,对周遭的一切似乎早已习以为常,而难以看清“真面目”——领略当初unix设计者们的过人智慧了..eric s. raymond的这本书the art of unix programming (以下简称taoup) ,就是要带着读者扶摇直上,凌驾香炉峰之颠,拨开云雾,一览千里庐山无限风光.
taoup的作者eric s. raymond(他总是喜欢以esr为自己的代号)几乎要算是地球上最著名的黑客了.作为«黑客词典»的主要编撰人以及维护者,他被认为是黑客文化的“历史学家”与“人类学家”,也是最受大众传媒追捧的黑客.1997年之后,raymond投身于随着伟大的开放源代码运动中,的发展,raymond 并逐渐跻身开放源代码运动的领军人物行列.所谓“时世造英雄”,而由于开源运动的精神领袖richard stallman太过超凡脱俗,且有点“敏于行”却“讷于言”,在他为开源运动开山立派之后,却未能著书立说,将开源运动进一步理论化.... 下一页