且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

第一章 大教堂与市集

更新时间:2022-08-12 15:34:12

Linux是颠覆性的,但是在五年以前(1991年)谁能想到,这些散布在世界各地的开发者仅仅依靠细细的网线相连,在业余的时间里就能开发出一套世界级的操作系统呢?

至少这让我深感意外。我在上个世纪80年代中期加入GNU,作为第一批成员,至今已经在网上发布了不少开源作品。而且一些现在被广泛使用的软件(nethackEmacsVCGUD模式,xlife等等)也是我正在开发或协助开发的。1993年初我接触到Linux的时候,已经致力于Unix和开源软件开发有十年之久了,至少我那时觉得自己很在行了。

然而Linux却推翻了我的理论。当时,我已经宣扬小而专的工具、快速建立原型和演进式开发这些Unix概念好多年了。但却还是坚信对于一些重要的软件(操作系统和Emacs之类的大型工具),一旦项目进展到一定的复杂度之后就需要如同建设大教堂一样统筹管理:由个别绝世的能工巧匠细细雕琢——时机不到,公测不出。[1]

李纳斯[2](尽早尽多的发布,托以所有可托付之事,并且能包容到泛滥之地步)的开发风格实在令人诧异。相比建造大教堂时的虔诚和肃穆,Linux社区更像是一个熙熙攘攘的市集:这里面混杂着不同流派和各种议程(Linux归档站点就是个绝佳的例证,任何人的作品都被收录其中)。如果一个统一而稳定的操作系统能从这里诞生的话,只能说是一个奇迹,一系列的奇迹。

事实是——这种风格不仅可行,而且运营良好。这给了我很深的触动。在摸索中,我不仅致力于个案,而且尝试探索为什么Linux世界不仅没有在混乱中分崩离析,反而以大教堂的建设者难以想像的速度茁壮成长。

到了1996年中,我开始略有所获。碰巧得到了一个验证这些理论的完美机会——我可以刻意的用市集的风格来运筹一个开源项目。我的确这么做了,而且成果斐然。

接下来的章节,我将讲述这个项目的故事。并借此提炼出一些对开源开发有益的格言。它们并非都始于Linux世界,但是我们却能看到它们如何在Linux世界中得以印证。如果我是对的话,它们将帮助你准确理解是什么使Linux社区成为优秀软件的源泉。如果有幸,它们还可以助您提高效率。

 

译者按:

1.公测,Beta。在软件开发的测试阶段的推出的第二个版本。相比第一个内测(Alpha)版本,测试人员范围更广但是只针对漏洞进行修补,而极少对主体程序进行改动。

2.李纳斯(Linus Benedict Torvalds, 李纳斯·本尼迪克特·托瓦兹),著名黑客,Linux之父,Linux内核的发明人。著名的李纳斯定理就是以其命名。