打了一场漂亮仗
1983年,麻省理工学院的电脑专家理查德·斯托曼决定一个人对盖茨开创的软件工业宣战。在这个过程中,他为黑客团体之前一个模糊的偏好下了定义。1970年,斯托曼已经到了剑桥,在哈佛大学就读。哈佛大学位于曼哈顿上西区,它是风头正劲的自由教育的产物。斯托曼那时是一个极富进取精神,早熟的年轻人。他说,在到麻省理工学院人工智能实验室之前,他没有同龄的朋友。接下来的13年他都生活在那里——睡在办公室,靠写代码为生。
20世纪80年代早期,斯托曼看到,曾经在麻省理工学院实验室繁荣壮大的黑客团体分崩离析。他的大多数朋友和同事都离开了学术界,转而开办公司,致力于发展专利软件,为蓬勃发展的计算机市场服务。在这一点上,即使Unix——黑客文化的顶梁柱——也已经成了专利产品。为了抗议,斯托曼发起了GNU计划,致力于创造一个建立在开放或者自由使用代码基础上的操作系统。(GNU是”GNU不是Unix”的缩写,这是一个生动的例子,说明幽默的黑客喜欢把工作当成玩乐。)
这是伟大革命的第一枪,但在当时几乎但在当时几乎没有人听到。
斯托曼负责麻省理工学院对外的所有交往(这所大学继续让他使用实验室和睡在办公室),他开始编写一个建立在Unix基础上的操作系统,但是这种操作系统允许使用者自由窃取、拷贝、截取、粘贴、修改,最重要的是,允许使用者在源代码基础上加入自己的代码。
由于斯托曼的系统可以自由出入,这吸引了其他程序员和他一起为GNU项目工作。“人们开始询问并改进程序,最后,这个系统比我最初创造的那个好太多了。“斯托曼说。因为GNU操作系统是建立在Unix基础上的,因此,它也有分成上千份的小文件,对其他程序员来说,他们可以根据自己的时间,从中轻松地挑选出某部分进行改进。1985年,“为了计算机用户的自由和维护所有自由软件使用者的权利”,斯托曼建立了公益自由软件基金(简称FSF)。FSF帮助斯托曼继续完成GNU项目,它也让更多的人清楚地了解了斯托曼的理念:“自由软件”①的重点在”自由”而非价格。理解这个概念是要理解这一点我们在为争取自由使用权而战,不是为了免费而战。
通过自由共享操作系统,黑客精神毫不费力地复活了。1986年,斯托曼创造了C语言,其顺理成章地成为操作系统最重要的组成部分,而且他完全开放代码。为了防止公司程序员将获得的代码用在其他软件中,然后拿到市场上去销售,斯托曼创造了”GNU大众许可”,这是一个比开放源代码软件行动更伟大的贡献,它在很大程度上也影响了文化——这个许可不仅规定经许可的所有东西可以被自由使用,而且任何包含它们的东西也都要遵守这个规定。使用这个许可的软件成了它本身的许可。“这是一个解决自由繁殖问题的绝顸聪明的方法。“在讲述开放源代码软件运动历史的《反代码》(Rebel Code)一书里,作者格林·穆迪指出。这个小花招就是我们今天说的”反版权”。1991年,斯托曼和一些程序员基本上完成了GNU项目,只剩下最后的核心(基本上是一个操作系统的心脏)
部分,这部分也是最难编写的,完成它起码要再花两年以上的时间。当时,黑客团体以外,几乎没有人听说过GNU,更别说使用了。但这一切即将改变。
那年8月,来自芬兰的计算机系学生莱纳斯·托瓦兹在网络上发布了一个帖子,说:“我正在编写一个(免费的)操作系统(只是业余爱好,没GNU那么专业,也没那么复杂)……我想知道大家最想要什么样的操作系统。
“GNU核心程序的完成遥遥无期,托瓦兹等不及了,他决定自己编写核心程序,并很快给这个系统起了个名字:Linux。他通过网上发帖寻找合作者,后来证明,这一举动意义重大。接下来的两年时间里,上千名程序高手参与进来,帮助改进了Linux系统。穆迪说:“一个黑客的业余爱好衍生出了一个团体。随着Linux的逐步完善,使用它的人也越来越多;越来越多的人为它排除程序中的错误,Linux的发展日渐加快:这些品德高尚的人继续以令人眩晕的速度带动着Linux的发展。”
今天,Linux主宰着超级计算机、手机、数字录像机(比如TiVo①),更不必说使用Linux系统的上百万台个人电脑了。因为Linux用的是GNU大众许可,所以任何公司都不能以任何形式将其用于商业。这就确保了这个”品德高尚的团体”继续繁荣发展。
总体来说,Linux对普及开放源代码软件项目做出了贡献。现在,软件开发网站Sourceforge.net上,有超过17.5万个正在进行的开放源代码项目。各大主流公司都接受并采用了开放源代码方式。大概有70%的互联网服务器软件是在Apache服务器上运行的,Apache是在开放源代码的基础上发展起来的,在所有的大规模电子邮件程序中,超过半数使用的是开放源代码软件。开放源代码团体不属于任何一个有组织的机构,比如某个公司或学术机构,它们证明了一件事:最杰出的网络是自发组织的。到底谁是Linux之父?答案是:大众。
开放源代码软件运动带动了很多新软件的开发,同时也推动了一条基本原理的发展。倡导开放源代码模型的人都很重视透明度,这是出于实际需要,并不完全是因为研发进展的公开恰好吸引到了更好的程序。IBM,甚至微软,都开始使用这种既省钱又有效的方式来开发更好的产品,它们这么做是因为开放源代码模型带来的实际效果,并非为了追求其潜在的平等原则。
是什么让开放源代码如此有效率?概括来说:众人拾柴火焰高。开放源代码的”传道者”埃里克·S·雷蒙德有过一个很著名的概括,掲示了它的本质:“只要有足够多的眼睛,无论多少漏洞都能被找出来。“也就是说,只要有足够多的人去尝试,就不存在棘手的问题。
比起最具才华最专业的员工,数量庞大而多样化的劳动力群体总是能提出更好的解决方案。这不仅适用于软件行业,也同样适用于企业科研、产品设计和信息制作领域。这是众包的一个中心理念。
雷蒙德的基本理念最初是出现在他于1997年一个会议上发表的论文《大教堂和市集》中,那时他的职业是软件工程师。这篇文章写得机敏而通俗,对于将开放源代码战略应用于软件以外的地方,它具有极深远的影响。在这篇文章里,雷蒙德对比了两种开发软件的方法。“大教堂”说的是一种严格管理下的等级分明的方法,从工业革命开始就成为标准的生产程序。雷蒙德用Linux做对比:“这是一个世界级的操作系统,好似用魔法结合起来的……上千名遍布全球的研发人员一起工作,仅仅依靠看不见摸不着的互联网取得联系。”
莱纳斯·托瓦兹的研发风格让人感到惊奇一提前发布,经常发布。只要能做,谁都可以加入任务,不害怕混乱。
这里不是安静恭敬的大教堂一Linux的团体像一个大而嘈杂的集市,他们的做事方法和工作安排很另类……而那个条理清晰且稳定的系统只有在一系列奇迹发生时才会显露出来。
在大教堂,每一件事情都是自上而下协调安排的。在集市,每件事都是自下而上”协调安排的”(如果还能用这个说法的话)。雷蒙德为”开放源代码”天然而强大的马力提供了一个很有说服力的例子,它不仅创造了一个完全没有漏洞的操作系统,而且用一种”大教堂建造者难以想象的速度”完成了这项工作。当雷蒙德于1997年第一次在Linux代表会议上发表他的论文时,只有电脑编程界的同行认识到了这篇文章的重要性,但是更多的人很快就会注意到。
意外的革命
对自己所做的事情会带来什么后果,我们并不总是很清楚。1877年,当托马斯·爱迪生在西联电报公司工作的时候,他改进了亚历山大·格雷厄姆·贝尔发明的电话,那时的电话,仅能通过电线传播声音,爱迪生找到了一种将其记录下来的方法。不到一个月,他就宣告”爱迪生留声机”诞生。媒体封他为”加州门洛帕克的巫师”,这是一个延续至今的绰号。
爱迪生和助手们继续改进他的”谈话机”,他绝对想象不到的是,这个发明有一天会被用于娱乐业。当时,爱迪生只希望这种留声机能垄断商业办公用品市场,在接下来的30多年里,“爱迪生留声机”出色地完成了这个任务。
埃尔德里奇·里夫斯·约翰逊在此基础上做出了质的飞跃,他制造出了我们今天所知道的留声机。这个衣冠楚楚、能说会道又充满野心的人和爱迪生的竞争者之一合作,改进了爱迪生的发明,同时采用了一个很讨巧的商标。
公 司 的 名 字 叫 ” 胜 利 者 ” ( Victor), 他 的 留 声 机 叫Victrola。约翰逊并不是发明家,但他一个人造就了唱片业。想创新,不一定非得做个发明家。就像爱迪生不知道自己会发明留声机一样,前哲学系教授拉里·桑格也并不是有意涉足众包的。雷蒙德以软件开发为背景,写了《大教堂和市集》,但是后来证明这篇文章的内容不仅适用于软件——它的应用范围非常广泛。桑格让更多的人了解了这篇文章的核心理念,但在2001年1月,他和老朋友本·科维兹吃饭时,对此还一无所知。
两人相约在圣迭戈的一家餐厅,科维兹刚刚从美国康涅狄格州格林威治镇搬过来,在当地一家公司找到一份信息工程师的工作。他十分高兴,不像桑格。桑格一年前刚离开学术界,现在他很怀疑自己当初的决定。他的新工作大致上就是编写百科全书,但是进展并不顺利。事实上,桑格很怕到头来一切都是竹篮打水一场空。
这不是桑格第一次有这样的担心。他还是个孩子的时候,已经对计算机很感兴趣了。1998年,他开始写《桑格对千年虫新闻报道的回顾》,这是一个和千年虫有关报道的概要,是写给那些IT经理看的,他们很渴望能躲过即将发生的这场大灾难。千年虫新闻报道随着千禧年的到来烟消云散了,但它们却让桑格对另外一个与互联网有关的冒险产生了兴趣,后来他听说吉米·威尔士——桑格在网上哲学讨论版打过交道的有钱企业家——想要投资一个互联网项目。
桑格和威尔士商量,计划创立一个文化方面的新闻文摘项目,但威尔士有其他想法。威尔士过去也编写过一些电脑程序,最近他对斯托曼的自由软件运动很感兴趣。桑格后来回忆说:“威尔士做的第一件事就是坚持让我读一读《大教堂和市集》。“对于百科全书,威尔士有一个想法,称为Nupedia(模仿斯托曼操作系统的名字GNU)。自从丹尼斯·狄德罗1751年出版了影响深远的《百科全书》后,《大英百科全书》等不过是对其概念的重复,Nupedia也有可能由专家编撰,但和传统的参考书不同,对Nupedia中的每一条目,网民都能免费阅读,志愿者可以自由修改,就像其他开放源代码项目一样——或者这也是它在那时出现的原因。
桑格完全被这个计划吸引了。“简直是着迷。“他回忆说。但他和威尔士都对此有所保留,两人对业余人士能否贡献出有意义的知识稍有怀疑,毕竟,他们的愿景是创造出一本专业的权威参考书。
尽管如此,桑格在2000年1月还是出任了Nupedia的总编辑。他立即着手建立一个顾问委员会,主要由他熟识的学术界人士组成。在接下来的几个月里,桑格和他的委员会精心设计了一种挑选潜在作家的方法——每个参与者编写的词条,都需经过七个步骤烦琐耗时的评阅。
开始,Nupedia似乎取得了进展。春天刚到的时候,威尔士和桑格看到网站已经贴出了一些通过检验的词条,这让两人备受鼓舞。到了夏天,只有少数词条通过了检验,接下来的几个月,又有一些完成了。威尔士和桑格认为词条会积少成多。但是他们期待中的事没有发生,到了桑格和科维兹那天吃晚餐的时候,Nupedia怎么算也仅完成了十几个词条而已。本打算用雷蒙德的”集市理论”创造一本百科全书(这本身就是个浩大的工程),结果,威尔士和桑格还是回到了”大教堂”的集权方式,而且做得并不成功。
“科维兹知道了这一切后告诉我,他知道有个程序大概能让整个编辑过程更开放。“桑格说。在这顿决定命运的晚餐后不久,著名程序员沃德·坎宁安编写了一个简单的软件——WikiWikiWeb,目的是让写手在交换信息时更容易。作为软件的研发人员,同时也是这个产品的首批用户,坎宁安和研发团队很快意识到它的意义不仅限于此。
“维基”(Wiki),来自夏威夷语,是”快速”的意思。这个程序允许无限多的用户在一个网页上创造和修改内容文本。更好的是,“维基”可以记录下每次改动,也就是说每个打开页面的人都能看到哪些内容被改动了,是谁改的。
2001年年初,“维基”仍然属于那些受雇于科技领域(或者说被科技困扰)的人。但科维兹向桑格解释了维基技术将如何帮助Nupedia加快编撰一修改一评阅这个费力而冗长的过程。而桑格一点就通。
“我立刻就了解了,记得当晚我就给威尔士打了电话,还给他写了一份正式的计划书,建议第二天下午之前就开始使用维基。“桑格回忆说。威尔士也充分了解到维基能帮助桑格加快步伐,但他脑子里想的最重要的不是速度。尽管威尔士在20世纪90年代已经在芝加哥通过期货交易发了财,但他不是建立Nupedia的人,威尔士的投资是通过一个有些自私的冒险完成的,那就是一个叫做Bomis的网站,其特点是:相对来说比较隐晦的色情图片。如果人类对性有着始终不变的兴趣,那么相较而言,资本投资就显得太善变了。除了技术部分,Bomis饱受垢病。
在清楚了离盼望中的贡献数量还差得远之后,桑格提出了很多新方法,通过这些方法,Nupedia可以改变它的软件体系以加快进度,但这一切都需要支付高额薪水,聘请一个专业的软件研发人员。更糟的是,这时,《大英百科全书》发行者改变了他们以前的做法,将上万个词条贴在了网上,免费供人浏览。这让Nupedia的目的——创造一部免费的百科全书——变得多余。(和《大英百科全书》不一样,Nupedia使用的是理查德·斯托曼的大众许可,意味着使用者可以修改和创造内容,而不仅是阅读。)
因此,在2001年1月3日,当桑格提出用维基系统加速Nupedia的进度时,他发现,只要不往Nupedia再投钱,威尔士对他的建议都表示接受。①
即使威尔士同意了,桑格也不能合法地将维基应用在Nupedia上。Nupedia聚集了一群学术界人士、哲学家、准百科全书作者。桑格很难让一年的辛苦付诸东流,告诉同事从头再来。在和科维兹吃过”命运之餐”后的第9天,桑格决定应用第一个Nupedia的维基系统。
关于维基的成长过程,桑格在一篇简短的回忆录中这样写道:“我开始是打算将维基当成Nupedia的一部分,让公众编撰一系列内容,以完成Nupedia。“Nupedia要求所有作者都必须有他们所撰写内容的这个领域的专业资格证明。“结果证明,Nupedia顾问委员会的绝大多数人都认为不需要维基。“今天桑格很乐于承认,对这个观点,他表示赞同,“他们要求精确和可靠。我和他们一样也很关心这些。”
然而,大众对此似乎没有共识。3个月后,《大西洋月刊》上发表了一篇文章,指出写手们创造了17个词条。
一个月后,词条增长到150个,4月底,数量增至4倍。8月底,词条增长到了3700个。这远远超过了Nupedia曾经的增长速度。
当人们开始谈论这种”维基”式搜集知识的方式时,写手的人数和词条同步增长。那年年底,“维基百科”有了1.5万个词条,即使这样也很难让人们想到接下来发生的事情。不仅条目的数量在增加,其增加的速度也在加快。最初,它是呈指数级增长,一直持续到近期,才达到顶峰。
但是,这是怎样的一个顶峰啊——“维基百科”现在有220万个词条,数目是《大英百科全书》的23倍,这还只是用英文写的条目。
桑格和威尔士并不是仅有的在新领域应用雷蒙德和斯托曼理念的人。就在威尔士和桑格正在为他们羽翼初丰的开放源代码百科全书想点子的时候,鲍勃·凯恩斯基也正在将开放源代码的理念应用于行星地质学。
在加利福尼亚的森尼维尔市,在美国国家航空航天局艾姆斯研究中心工作的软件工程师凯恩斯基正试着将用于SETI家庭工作室(SETI@home)的分配计算方法应用于分析火星图像——这个问题当时正要交给阿姆斯实验室解决。
2000年夏天,凯恩斯基给弗吉尼亚·古利克打了一个电话询问相关问题,后者是阿姆斯的行星地质学家。质学家的工作很大一部分是在卫星图像上识别和测量地貌,比如环形山、山脊、峡谷等。古利克轻声笑道,“那需要非常密集的劳动力”,这些冗长乏味的工作带来的结果就是,你要支付高额的报酬。她和其他行星地质学家正在寻找水存在于宇宙的证明,“这是我们想去火星的一个原因:找到关于水的证据,如果有水存在,也许就有生命存在”。
凯恩斯基想把从20世纪70年代起,美国”维京任务”中火星探测器收集到的所有珍贵的火星图像放到网上,请业余爱好者帮助完成识别和测量地貌的机械工作。古利克对此表示怀疑。“我当时想:‘这能行得通吗?‘我真怀疑这些未经训练的观察员,比如说,他们能分辨出新的环形山和退化的环形山的差别吗?”(新的环形山有挺括的边缘,然而退化的环形山暴露在外,被几十亿年前就肆虐火星表面的水和风侵蚀了。)最后,凯恩斯基和古利克想到一个折中的办法。在将这项极具价值的工作交给大众之前,他们将对大众进行一次测试。古利克可以拿到火星图像中的火山口资料——它们已经被分类和编了目录。古利克的同事已经完成了对维京图像中完整的环形山图像的识别、测量和分类工作,图像共8.8万幅。“她非常遵守学术纪律。
“古利克说,“这些花了大概两年时间。”
NASA(美国国家航空航天局)悄悄将这个资料库全发布到了网上,让那些时刻关注网站的业余天文学家帮助专家分析图像。他们将这个程序称为”Clickworkers”,这是一个完美的案例研究,因为古利克和凯恩斯基有一个控制数据集——一个已经完成的资料库。不到一个月,上千名参与者已经成功地分析出了资料库里的所有图像。古利克和凯恩斯基既高兴,又震惊。这不仅是因为志愿者们比专业的行星地质学家工作得更快,而且他们得出的结果相当准确。
在很多方面,Clickworkers计划模拟了开放源代码的生产模型。第一,一项庞大的工作通过网络被分配;第二,参与这项工作的人数没有限制;第三,这项工作被分解成了小的独立任务。因此,Clickworkers既能利用只有5分钟空余时间来做这件事的人,也能利用周末除了测量环形山无所事事的人。这对Clickworkers的成功至关重要——NASA的一项研究表明,37%的项目都是由以前的参与者完成的。
2006年,NASA重新启动了Clickworkers计划,但这次没有再试验。志愿者现在负责的工作是,从美国火星勘察轨道器高清晰照相机(其代表高清图像科学试验)传回的上千幅高清图像中分析出地貌。“这很可能会对科学产生重大影响。“古利克说,“人们每天花10分钟做这件事,却帮了我们大忙。志愿者肩负起了这些机械的、劳动密集型的工作,让科学家能专心投入学术和智能的研究发展中。
“正如业余爱鸟人通过他们的资料收集为鸟类学做出了贡献,Clickworkers对行星科学做出了重大贡献。开放源代码 模 型 可 以 应 用 到 软 件 业 外 的 领 域 中 , 维 基 和Clickworkers就是有力的证明。相信用不了多久,它会被应用到更广泛的领域中去。






本书评论