几天后的 2 月 3 日,将迎来“开源软件”这一术语引入 20 周年纪念日。随着开源软件越来越受欢迎,并为我们这个时代一些最强大和最重要的创新提供动力,我们反思其崛起之路。
我是“开源软件”这一术语的创造者,并在 Foresight Institute 担任执行董事期间提出了这个术语。不像其他人那样是软件开发人员,我感谢 Linux 程序员托德·安德森支持这个术语并将其提议给小组。
这是我对我是如何想出这个术语、它是如何被提出的以及随后的反应的叙述。当然,关于这个术语的创造有很多说法,例如埃里克·雷蒙德和理查德·斯托曼的说法,但这是我的说法,写于 2006 年 1 月 2 日。
直到今天才发表。
引入“开源软件”一词是旨在使这一努力领域更容易被新手和企业理解,这被认为是其传播到更广泛用户社区的必要条件。早期主要标签“自由软件”的问题不在于其政治内涵,而在于——对于新手来说——其看似关注价格会分散注意力。需要一个术语来关注源代码的关键问题,并且不会立即混淆那些对这个概念不熟悉的人。在正确的时间出现并满足这些要求的第一个术语被迅速采用:开源。
这个术语长期以来一直用于“情报”(即间谍活动)背景,但在我所知范围内,1998 年之前尚未证实该术语在软件方面的使用。下面的叙述描述了 开源软件 术语是如何流行起来并成为一个行业和一个运动的名称的。
计算机安全会议
1997 年末,Foresight Institute 正在举行每周会议,讨论计算机安全。Foresight 是一个专注于纳米技术和人工智能的非营利智库,软件安全被认为是两者可靠性和安全性的核心。我们已经确定自由软件是改进软件安全性和可靠性的一种有希望的方法,并且正在寻找推广它的方法。对自由软件的兴趣开始在编程社区之外增长,并且越来越清楚的是,改变世界的机会即将到来。然而,如何做到这一点尚不清楚,我们正在摸索策略。
在这些会议上,我们讨论了由于混淆因素而需要新术语。论点如下:那些不熟悉“自由软件”一词的人认为它指的是价格。老手们必须随后开始解释,通常如下:“我们指的是自由的自由,而不是免费的啤酒。” 在这一点上,关于软件的讨论已经变成关于酒精饮料价格的讨论。问题不在于解释其含义是不可能的——问题在于一个重要概念的名称不应该让新手如此困惑。需要一个更清晰的术语。关于自由软件术语没有提出政治问题;问题是对于那些不熟悉这个概念的人来说,它缺乏清晰度。
发布 Netscape
1998 年 2 月 2 日,埃里克·雷蒙德来访,与 Netscape 合作制定计划,以自由软件风格的许可证发布浏览器代码。那天晚上,我们在洛斯阿尔托斯 Foresight 的办公室举行了一次会议,以制定战略并改进我们的信息。除了埃里克和我之外,积极的参与者还包括布莱恩·贝伦多夫、迈克尔·蒂曼、托德·安德森、马克·S·米勒和卡平·叶。但在那次会议上,该领域仍然被描述为自由软件,或者被布莱恩描述为“源代码可用”软件。
在城里期间,埃里克以 Foresight 作为行动基地。在他访问期间的某个时候,他接到电话,与几位 Netscape 法律和/或营销人员交谈。当他结束时,我要求与他们通电话——一男一女,可能是米切尔·贝克——这样我就可以提出需要一个新术语的问题。他们原则上立即同意,但没有商定具体术语。
在那一周的会议之间,我仍然专注于需要一个更好的名称,并提出了“开源软件”这个术语。虽然不是理想的,但我觉得已经足够好了。我至少向其他四个人征求了意见:埃里克·德雷克斯勒、马克·米勒和托德·安德森喜欢它,而一位营销和公关朋友认为“开放”一词已被过度使用和滥用,并认为我们可以做得更好。他在理论上是对的;但是,我没有更好的主意,所以我想我会尝试继续并介绍它。事后看来,我应该直接向埃里克·雷蒙德提出,但我当时不太了解他,所以我采取了间接策略。
托德非常同意需要一个新术语,并表示愿意协助引入该术语。这很有帮助,因为作为一个非程序员,我在自由软件社区中的影响力很弱。我在 Foresight 从事纳米技术教育工作是一个优势,但这不足以让我在自由软件问题上受到非常认真的对待。作为一名 Linux 程序员,托德会更受重视。
关键会议
当周晚些时候,即 1998 年 2 月 5 日,一群人在 VA Research 聚集,集思广益制定战略。除了埃里克·雷蒙德、托德和我之外,参加会议的还有拉里·奥古斯丁、萨姆·奥克曼,以及通过电话参加会议的乔恩“疯狗”·霍尔。
主要议题是推广策略,特别是要接触哪些公司。我很少说话,但正在寻找机会介绍拟议的术语。我觉得如果我只是脱口而出,“你们这些技术人员应该开始使用我的新术语。” 是行不通的。大多数与会者都不认识我,而且据我所知,他们甚至可能不同意非常需要一个新术语,甚至有点希望有一个新术语。
幸运的是,托德很机灵。他没有断言社区应该使用这个特定的新术语,而是做了一些不太指令性的事情——对于这个由意志坚强的人组成的社区来说,这是一件聪明的事情。他只是在另一个主题的句子中使用了这个术语——只是把它放到了对话中,看看会发生什么。我进入警戒状态,希望能得到回应,但起初没有回应。讨论继续围绕最初的主题进行。似乎只有他和我注意到了这个用法。
并非如此——模因进化正在发挥作用。几分钟后,其他人之一使用了这个术语,显然没有注意到,仍然在讨论术语以外的主题。托德和我从眼角互相看了看,以确认:是的,我们都注意到了发生了什么。我很兴奋——它可能会奏效!但我保持沉默:我在这个群体中的地位仍然很低。可能有些人想知道埃里克为什么要邀请我。
在会议即将结束时,术语问题被明确提出,可能是托德或埃里克提出的。疯狗提到“可自由分发”是一个较早的术语,而“合作开发”是一个较新的术语。埃里克列出了“自由软件”、“开源”和“源代码软件”作为主要选项。托德提倡“开源”模式,埃里克对此表示赞同。我没有说太多,让托德和埃里克围绕开源名称将(松散的、非正式的)共识拉到一起。很明显,对于参加会议的大多数人来说,名称更改并不是那里讨论的最重要的事情;一个相对次要的问题。我在这次会议上的笔记中只有大约 10% 是关于术语问题的。
但我很兴奋。这些人是社区中的一些关键领导者,他们喜欢这个新名称,或者至少不反对。这是一个非常好的迹象。我可能无法再做更多的事情来提供帮助;埃里克·雷蒙德在传播新模因方面处于更有利的位置,他确实做到了。布鲁斯·佩伦斯立即加入了这项工作,帮助建立了 Opensource.org,并在传播新术语方面发挥了关键作用。
为了使这个名称取得成功,蒂姆·奥莱利有必要,或者至少非常希望他同意并在他代表社区的许多项目中积极使用它。在即将发布的 Netscape Navigator 代码官方版本中使用该术语也将有所帮助。到 2 月下旬,O'Reilly & Associates 和 Netscape 都开始使用该术语。
推广名称
此后,埃里克·雷蒙德向媒体、蒂姆·奥莱利向企业以及两人都向编程社区推广了这个术语。它似乎传播得非常快。
1998 年 4 月 7 日,蒂姆·奥莱利召集了该领域的关键领导人举行会议。预先宣布为第一次“自由软件峰会”,到 4 月 14 日,它被称为第一次“开源峰会”。
这几个月对于开源来说非常令人兴奋。似乎每周都有一家新公司宣布计划参与。阅读 Slashdot 成为一种必要,即使对于像我这样只在边缘参与的人来说也是如此。我坚信,新术语有助于实现向企业的快速传播,从而使公众更广泛地使用。
快速的 Google 搜索表明,“开源”比“自由软件”出现的频率更高,但仍然大量使用自由软件术语,在与喜欢它的受众沟通时,该术语仍然有用,应该包括在内。
一丝幸福的刺痛
当埃里克·雷蒙德撰写的关于术语更改的 早期叙述 发布在开源倡议网站上时,我被列为参加了 VA 头脑风暴会议,但没有被列为该术语的创造者。这是我自己的错;我忘了告诉埃里克细节。我的冲动是让它过去并保持低调,但托德不这么认为。他向我建议,有一天我会很高兴被称为“开源软件”这个名称的创造者。他向埃里克解释了情况,埃里克立即更新了他的网站。
想出一个短语是一个小贡献,但我承认我感谢那些记得将功劳归于我的人。每次我听到它时,现在非常频繁,它都会给我带来一丝小小的幸福的刺痛。
说服社区的最大功劳归于埃里克·雷蒙德和蒂姆·奥莱利,他们促成了这一切。感谢他们将功劳归于我,并感谢托德·安德森在整个过程中所起的作用。以上不是开源历史的完整叙述;向许多名字没有出现的关键人物道歉。那些寻求更完整叙述的人应该参考本文和互联网上其他地方的链接。
20 条评论