azalea says

黑客文化史记,开源运动圣经 - 评 The Cathedral & the Bazaar

先从史前时代说起。黑客文化起源于1960年代的 MIT 人工智能实验室。MIT 的黑客为 DEC 的小型机 PDP-10 写了操作系统 ITS,流行了十几年。ITS 是用汇编语言写的,软件大多是用 LISP,包括著名的 emacs。1969年,ARPAnet,第一个横贯美国的高速计算机网络投入运行,连接了美国各大计算机实验室,如斯坦福大学、CMU、施乐(Xerox)。同年,贝尔实验室的 Ken Thompson 开发了 UNIX 操作系统,Dennis Ritchie 开始写 C 语言。黑客们通过邮件列表和兴趣小组交流,当时的网络语言“黑客行话”(Jargon File)后来被编撰成书《黑客字典》。

到了1980年代,ITS 因为不可移植,随着 PDP-10 的停产而销声匿迹,专有 UNIX 因为互不兼容而四分五裂。物美价廉的个人电脑开始占领市场,然而数千美元的商业 UNIX 实在太贵了。Richard Stallman 创建了自由软件基金会(FSF),用 C 语言写了一个类似于 UNIX 的 GNU 操作系统,不同的是,GNU 是自由软件,用户可以自由地对其运行、复制、传播、研究、改进。遗憾地是,GNU 内核的开发一直停滞不前,直到1991年 Linux 横空出世。

波兰大学生 Linus Torvalds 同学本来想为 Andrew S. Tanenbaum 开发的 MINIX(意为 mini-Unix)操作系统重写一个终端模拟器(就是shell,原装的太烂了),结果,他写了一个新的操作系统内核。1991年初秋,Linux 0.01版发布了,很快吸引了黑客们一起开发。如今,Linux 已经占有服务器端约67%、移动端87%(安卓)、PC 端5%的份额。

本书写于上世纪90年代,写作缘起正是作者 Eric S. Raymond 想要探究 Linux 为何成功。作者说,“这个社区发展出有史以来最有效的软件开发方法却浑然不觉!”有别于传统软件的封闭集中的“大教堂”开发模式,Linux 使用的是“集市”模式,众多开发者共同贡献源代码。Linux 的模式证实了“只要眼睛多,bug 容易捉”。这本书如仓颉造字,使得开源社区有了自我认知。开源软件基于互联网上志愿者的随意合作,没有严格标准,也没有强有力的管理,仅仅是遵循快速发布,及时反馈的原则,却获得了前所未有的成功。

作者认为,黑客文化的核心在于礼物文化。不同于集权的命令体系和基于契约的交换经济,礼物文化是在充裕物质条件下产生的。“充裕性会使命令关系难以维持,会使交换关系变成无意义的游戏。在礼物文化中,社会地位并不取决于你控制了什么,而是你给予了什么。”黑客们贡献自己的代码,来换取声誉。“you do not become a hacker by calling yourself a hacker - you become a hacker when other hackers call you a hacker.”被同行认同是黑客圈安身立命的根本。这告诉我们,黑客圈不好混,耍的都是真刀真枪,当然另一方面,开源社区准入门槛很高,保证了开源软件的质量。

与公地悲剧(tragedy of the commons)不同,软件的使用并不会降低其价值。反而由于众多贡献者的参与,可以及时修复 bug,降低风险。作者随后分析了可持续开源开发的不同模式,并预言最先开源的会是基础架构(操作系统、网络),中间件(数据库、开发工具、应用协议)会处于开闭源混合的状态,但是将逐渐开源,只有顶层的应用还可以保持闭源。现在看来,这些预言全部应验。越来越多中间件以及一些应用工具开源了,比如各种语言的库、Web应用框架、图像处理、AI框架。

作者的这些文章不仅开创了对黑客文化的人类学研究,而且对软件行业的变革起了催化作用。1998年1月22日,网景宣布开源网景浏览器,就是现在的 Firefox。网景 CEO Jim Barksdate 说,正是作者的文章给了这个决定以“主要灵感”。1999年,“一些主要的PC和笔记本制造商宣布他们将推出不预装Windows软件的机器,当然价格里也不会包含’微软税‘。”

作者的论述仿佛 GRE argument 范文,有理有据,对对立观点也有深刻讨论。行文严谨但语言幽默,文风大爱。正如作者在附录《如何成为一名黑客》里所说,“学好写作”,本书就是极好的范本。

May the source be with you.

(此为英文原版书评,引文参考中译本)

书评 linux 开源 · Tweet Edit