时至今日,新网络模式下负责张贴海报的是BitTorrent(BT网站允许用户上传自己的在线音乐库,同时也可以下载别人的音乐)……我们的通讯基础设施仅完成从受众到参与者巨大转变的首要步骤,但是,那也是未来十年的发展方向。
凯利补充道,将来有一天,每个活着的人(平均起来)都将写一首歌、编一本书、制作一个视频、创造一个博客和设计程序,没有什么不可想象的……如果数据流动不对称、但却又利于创作者,那将发生什么?如果每个人的上传远远多于下载,那又将发生什么?
长期以来人们假定,生产物质产品或者复杂事物需要官僚机构或组织。这种看法是,你需要从上而下的垂直整合才能做成事情并将它们传播到世界。但是,平坦世界平台带来的直接后果是,我们具备了可以上传的新能力,这让你可以独自或作为社区的一部分生产出真正复杂的东西,并且不需要以前那么多的官僚机构和金钱。
接下来,我将关注三种上传形式:社区开发软件运动,维基百科和博客/ 播客。
社区开发软件社区开发软件运动,也被称作开放源社区。他源自这样一种想法:公司或者特定社区应该让人们可以从网上获取源代码这种能让软件运作的基本程序指令,这样有能力做出贡献的人就可以改进这些软件,数以百万的人也可以通过下载来满足自己的需要。把这些社区想象为自由创作的工程师共同合作开发软件的聊天室,每个人都为改善源代码做出贡献,并且只要他们遵照特定开放源社区的许可准则,每个人都可以使用这些源编码。尽管这些社区的操作规则基本相同,但他们还可以被划分为两类。其一,我们称为知识平民化社区,基本来说,只要认可援助的创作,社区中的每个人都可以将源代码用作商业产品的基础。这样如果软件后来被改进、改编和应用,你必须每次都认可原创社区的贡献。其二,我们称之为免费软件社区,如果你在社区开发免费软件代码的基础上创建和传播任意衍生产品,你还需要将创新成果回报给社区。换句话说,你的衍生产品也应该免费。
我自己并不是一个计算机迷,在此之前也从未关注过开放源运动,但是当我真正注意到这一点时,我发现这确实是一个神奇的世界,到处都是自发形成的网络社区和愿意相互分享观点并免费告知公众的志愿者。最早的社区开发软件运动采用的是知识平民化的方法。知识平民化运动主要植根于学术和科学领域,科学家的自发合作社区长期以来一直通过私人关系联系在一起,后来网络出现后,他们就通过网络围绕特定的科学或数学问题来分享他们的观点。阿帕奇网络服务器就植根于这种形式的开放源。
我让一个朋友——IT系统工程师麦克。阿尔盖洛给我解释为什么人们会以这种方式分享知识或工作,他说:“IT人士都是非常聪明的,他们也希望别人能知道他们有多聪明。”发明网景第一个网络浏览器的安德森对此也表示赞同:“开放源只不过是让同行评审的科学(peer…reviewed science )。有时候他们共向发现和科研成果的目的只是为了获得荣誉,有时候他们是为了获取商机,也有些时候他们只想增加世界上的知识储备量。而同行评审是很重要的——开放源的目的就是要让同行检查,程序中的每个瑕疵、安全漏洞或不标准的地方都会被检查出来。一些人还从挑战微软或IBM 这样的软件巨头中获得成就感,因为可以证明他们能免费创造出更好的东西。”
为了更多地了解软件开发运动的知识平民化形式,我开始在聊天室的家伙当中开展调查。最后我找到了他们中的带头人布赖恩。贝伦多夫。如果说阿帕奇网络服务器是一个印第安纳部落的话,那么贝伦多夫就是部落里的头人。他现在是Collab Net公司的首席技术官,这家公司主要为那些希望以开放源方式创新的客户提供软件。我来到他在旧金山机场附近的玻璃钢材办公室里,见到他后,我首先提出了两个简单问题:您从哪里来?您是怎么让一群可能和IBM 展开竞争的网络怪才齐心协力创建开放源社区的呢?
贝伦多夫回忆说:“我父母就是在南加州的IBM 公司相识的,我在南加州帕萨迪那北部的小镇拉卡纳达(La Canada )长大。因为很多孩子的家长都在加州理工学院下属的推进技术实验室工作,所以从很小的时候起,我就在科研氛围很浓的环境下长大。
我们的房子里面总少不了电脑,我们也常用IBM 早期主机中的穿孔卡片制作购物清单。
上小学时,我就开始制作基本程序,高中时我已经算是个电脑高手了……1991年我高中毕业,但在1989年因特网刚刚兴起时,一个朋友给了我他从网上下载到软盘上的程序备份。这个名为Fractint的程序虽说是免费软件,但却不是什么盗版,它是用来画不规则碎片图案的程序。当这个程序启动时,屏幕上会显示所有参与涉及科研人员的电子邮件地址,我注意到程序里面也包括有源代码。这是我第一次接触源代码的概念。这是你免费下载的程序,他们甚至连源代码都给你了。
这让我对程序有了一个全新的认识。我认识到,软件编写的方式可以有很多种,并不像我以前认为的那么枯燥——由专业的软件开发者坐在主机旁完成信息输入和商业化的过程。“贝伦多夫1991年高中毕业后去伯克利大学学习物理专业,但他很快就对课堂教学与现实生活的脱节感到厌倦,毕竟枯燥而抽象的理论知识和网络中的新奇刺激相差太远。他说:”我上大学的时候,同学们都用电子邮件相互交流,并且在网上的讨论版发表对音乐的看法。1992年,我设立了自己的网络邮件列表,关注的重点集中在湾区的电子音乐盛典上。每个人都可以在讨论版贴贴子,于是我们开始讨论不同的音乐活动和音乐节目支持人。我们说,‘为什么不自己邀请主持人并举办自己的节目呢?’于是这就成了一个集体项目。有的说,‘我有一些唱片。’有的说,‘我有音响系统。’还有的说,‘我知道有个海滩,可以午夜时候在那里办个晚会。’到1993年时,因特网还只是邮件列表、电子邮件和FTP 站点(文件传输协议)。于是我开始收集各种关于电子音乐的材料,并计划把他们放到网上让更多的人共享资源。这时候我听说了马赛克(安德森开发的网络浏览器),于是我在伯克利商学院的计算机实验室找了一份工作,利用业余时间研究马赛克和别的网络技术,在网络论坛里和开发第一代网络浏览器和服务器的人交流。(网络服务器指那些让个人可以使用家庭或办公室电脑访问“各种网站的软件。比如,我们以一直在阿帕奇的服务器上运作自己网站的亚马逊公司为例。当你的网络浏览器登陆亚马逊的网站Amazon时,浏览器第一个对话的软件就是阿帕奇。浏览器让阿帕奇寻找亚马逊的网页,然后阿帕奇就会给浏览器发回该网页的内容。网上冲浪的过程实际是浏览器和不同网络服务器的互动过程。)
贝伦多夫回忆说:“我在论坛里看蒂姆。伯纳斯。李和马克。安德森的辩论,这是非常有趣的事情。我发现这些科研人员和我的音乐团队存在共同之处,他们对开发出最早的网络软件有着共同的兴趣。我将这一看法告诉给我的一个朋友(他是《连线》杂志最早的雇员之一),他说,《连线》希望我能帮他们建一个网站。于是我就接受了这份每小时10美元的工作,为他们设立电子邮箱和他们的第一个网站——热线网站……这还是最早推出网络广告的电子刊物。”
热线网站希望能有一个需要密码的注册系统——这在当时是个很矛盾的观念。
1997年在《沙龙》杂志发表阿帕奇发展史的安德鲁。里奥那多指出:“大多数网管都依赖伊利诺斯大学国家超级电脑应用中心(也是马赛克网络浏览器的诞生地,简称‘应用中心’)开发的网络服务器,但是他们的服务器不能按热线网站的需要提供密码鉴定服务。幸好应用中心的服务器不受专利限制,这意味着所有人都可以免费获得其源代码。”于是,贝伦多菲发挥了电脑黑客的专长:他编写了一个新的代码作为应用中心服务器软件的补丁,问题就迎刃而解了。利奥那多评论说:“贝伦多夫并不是唯一聪明的程序员。在这个即将爆炸的网络世界,别的网络管理员也觉得有必要这样做。
伊利诺斯大学的学生罗布。麦库尔和马克。安德森以及Lynx的作者埃里克。
比纳一起被硅谷一家名为网景的公司挖走。与此同时,网络并没有停止发展,它继续为网络服务器创造出需要应对的新问题。于是各种类型的补丁就像粘条一样在宽带上繁衍起来。“与此同时,所有这些补丁都在以一种开放源的方式让一个新的现代网络服务器慢慢形成,但是所有人都有他/ 她自己的版本,在这里或那里交换补丁,因为应用中心的实验室不能应付网络出现的所有新问题。
贝伦多夫解释说:“那时我几乎跟一个退学的学生差不多。给《连线》建网站确实有很多乐趣,可以让我学到比在伯克利更多的东西。我们给应用中心的工作人员发送服务器的补丁,但没有得到任何回应。我们的工作小组就这件事展开了一场讨论。
我们说,‘如果应用中心不对我们的补丁做出反应,未来会变成什么样呢?
‘虽然我们还乐意继续完善这一系统,但我们担心得不到反馈,补丁也不能被整合。于是我开始联系别的交易补丁的人……他们中的大部分人都是因特网工程任务组(the internet engineering task force )的成员,负责设立最初的网络应用软件标准……我们说,’为什么我们不自己把握未来,发布能将所有补丁综合到一起的网络服务器版本呢?‘“他还回忆说:”我们察看应用中心服务器软件的版权规定。它只是说,如果能完善这些代码,我们就会在伊利诺斯大学获得荣誉,可是如果没能做到,我们也不会受到责备。于是我们就开始创立自己的版本。虽然我们当中没有人能全职从事网络服务器的开发,但我们相信,只要能以开放的形式交流合作,我们就能创造出比市场供应还要好的服务器——当时实际也买不到这些服务器。这些都发生在网景开始出售商用网络服务器之前,也是阿帕奇项目的开始。“
截至1999年2 月,他们已重新改写了应用中心的原始程序并且以“阿帕奇”
的名称使他们的合作正式化。贝伦多夫说:“我选择阿帕奇这个名字是取其积极含义。
阿帕奇民族是最后一个屈服于美国政府的民族。当时我们担心大公司迟早会参与竞争并‘教化’这块最早的网络之地,所以在我看来,阿帕奇是个很好的代码名称,也有人说这个词一语双关——因为正如APAtCHy (与阿帕奇的英文名Apache同音,意思是一个补丁组成的服务器)的名字所表明的那样,他们确实是在给服务器打补丁。“因此从很多方面来说,贝伦多夫和他开放源的同事们——大部分人他从未见过,只是通过开放源的聊天室用电子邮件联系——已经创造了一个虚拟的、网上的、自下而上的、不被任何人拥有和不受任何人监督的软件工厂。他说:”我们已经拥有一个软件项目,但其中的协调和指挥却是自然发生的行为,它由希望编写代码的人决定。“
我问贝伦多夫,这一切究竟是怎么运作的呢?你总不能让一群不受监督的人随便将代码放到一起吧?他解释说:“大部分的软件开发都包括一个由并行版本系统(concurrent versioning system,下称CVS )管理的源代码库。我的电脑上也装有CVS 程序,我可以连接到CVS 服务器上并复制源代码,这样我就可以对其进行修改了。如果我觉得这个补丁是我希望和别人共享的,那我就会运行一个叫做‘补丁’的程序,它让我可以创造一个新的文件,将所有的修改都汇集到一起,这个新文件就叫做补丁文件。我可以将它交给别人,让他们把它应用到自己拷贝的代码上,测试补丁的效力。
如果我有使用服务器的特权(仅限于一个被严格控制的监管组织),我就可以将补丁提交到源代码库,使其成为源代码的一部分。CVS 服务器会纪录一切…
…你可以读取代码库的内容,但却没有权力改变它们。如果有人向源代码库提交了补丁文件,这个补丁文件就会被通过电子邮件发送到所有其他的开发商那里,你将接受同行的监督,如果被发现有问题,你就要负责修改。“那么这个社区是怎么决定谁是值得信赖的呢?贝伦多夫说:”阿帕奇最初只有8 个成员,我们相互信赖对方。随着在讨论区出现的新人和他们提供的补丁文件的日渐增加,我们慢慢也开始信赖他人,8 人成员增加到后来的1000多人。我们是第一个得到企业关注和最早获得IBM 支持的开放源项目。“
《沙龙》杂志的利奥那多表示,由于阿帕奇可以让单一服务器电脑上显示数千个不同的虚拟网站——音乐、数据、文本——它开始“操控网络服务器市场”。
IBM 本来要出售它自己的网络服务器GO,但后来却只占据了很小的市场份额。阿帕奇服务器不仅技术水平更高,而且是免费的。所以IBM 最后决定,如果它不能打败阿帕奇,它就加入后者。你应该好好想一想。全球最大的计算机公司IBM 认为它的工程师在开源方面的技术不及这些技术狂人,于是就干脆放弃自己的技术并加入这些狂人的队伍!
贝伦多夫说:“IBM 一开始是和我联系的,因此某种程度上我就充当了阿帕奇的代言人。IBM 公司称,‘我们想知道该怎样利用阿帕奇,同时又不受网络社区的过多影响,怎样才能促进软件开发的可持续发展,而不只是激起人们一时的兴趣……’IBM 的意思是说,这种软件开发的新模式是值得信赖和弥足珍贵的,因此我们应该对其投资,同时放弃我们正试图自己建立的模式。”
约翰。斯文森当时是率领IBM 团队和阿帕奇打交道的高级主管(现在是美国冠群电脑公司的董事长)