开源"的起源:历史上的今天

发表时间: 2023-02-03 19:16

整理 | 王启隆

透过「历史上的今天」,从过去看未来,从现在亦可以改变未来。

今天是 2023 年 2 月 3 日,在 51 年前的今天,1972 年 2 月 3 日,第 11 届冬季奥林匹克运动会在日本札幌举行,开亚洲举办冬奥会之先河,有 35 个国家和地区 1600 多名运动员参加。回顾计算机历史上的 2 月 3 日,还有一件与我们生活息息相关的大事件发生,你知道是什么吗?

1976 年 2 月 3 日:David Bunnell 为比尔·盖茨在《电脑笔记》杂志刊登关于盗版软件的公开信

1976 年 2 月 3 日

一封给电脑爱好者的公开信

威廉·亨利·盖茨三世著

在我看来,目前的电脑爱好者群体最关键的是缺乏好的软件课程、书籍和软件本身。如果没有配上好的软件和一个懂编程的人,那么一台电脑爱好者用的计算机就浪费掉了,可难道会有人为了业余爱好者编写高质量的软件吗?

大约一年前,保罗·艾伦和我希望业余爱好市场能够扩大,于是雇佣了 Monte Davidoff 开发了 Altair BASIC;虽然最初的工作只花了两个月的时间,但我们三个人在去年的大部分时间里都在为 BASIC 编写文档、改进和添加功能。如今,我们已经有 4K、8K、EXTENDED、ROM 和 DISK BASIC,如果计算我们的工作价值,我们已经花费了 4 万多美元。

我们从数百名声称自己正在使用 BASIC 的人那里得到的反馈都是积极的。然而,其中有两件令人惊讶的事情是显而易见的:一、这些“用户”中大多数从未购买过 BASIC(不到 10%的所有 Altair 用户购买过 BASIC);二、我们从销售给业余爱好者的费用中获得的版税数额,使得我们花在 Altair BASIC 上的时间价值不到每小时 2 美元。

这是为什么呢?大多数的软件爱好者都应该知道,你们中的大多数人都是在使用盗版软件的。硬件必须付费,但软件是可以分享的。谁会在乎那些为它工作的人是否得到了报酬?这难道是公平的吗?如果你们使用盗版软件,那么遇到问题时,你们就不能要求 MITS 公司解决问题。MITS 并没有从销售软件中挣到钱,因为他们付给我们的版税以及软件的使用手册,磁带和企业管理费用抵消了软件收入,仅仅达到了收支平衡。你们现在所做的一切,正在阻止人们去编写好的软件。

谁能负担得起无偿做专业工作?又有什么业余爱好者能够投入 3 个人的时间去编程,寻找所有的漏洞,为他的产品编写文档并免费发布?事实上是,除了我们,没有人在业余软件上投资这么多钱。我们已经编写了 6800 BASIC,并且正在编写 8080 APL 和 6800 APL,并且我们几乎没有任何动力将这个软件提供给业余爱好者。说直接点的话,你所做的事情就是在偷窃。

那么,那些转卖 Altair BASIC 的人呢,他们不是靠业余爱好的软件赚钱吗?是的,但这些最终必将被举报而失败。他们是那些给业余爱好者一个坏名声的人,应该被踢出他们参加的任何俱乐部或会议。

我将感谢任何想要付钱的人的来信,如果你有什么建议或评论,也请给我写信,地址是 1180 Alvarado SE, 114 号,新墨西哥州阿尔伯克基,87108。没有什么比雇佣 10 个程序员,用高质量软件淹没电脑爱好者市场更让我高兴的了。

比尔·盖茨

Micro-Soft 的普通合伙人

图源:维基百科

《致爱好者的公开信》(An Open Letter to Hobbyists)是一篇由微软创办者比尔·盖茨在 1976 年 2 月 3 日写的公开信,在这篇文章中,盖茨对业余爱好者群体中猖獗的软件盗版行为表示失望,因为他们没有付费就使用了微软的 Altair BASIC 软件。他断言,如此广泛的未经授权的复制实际上阻碍了开发人员在创建高质量软件上投入时间和金钱。他指出,在不支付报酬的情况下,从软件作者的时间、精力和资本中获得好处是不公平的。

时间回到 1974 年 12 月,当时仍在哈佛大学的学生盖茨和在波士顿霍尼韦尔公司工作的保罗·艾伦都在 1975 年 1 月的《大众电子》杂志上第一次看到了 Altair 8800 (牵牛星)电脑。盖茨和艾伦都想成为第一个为 Altair 计算机提供 BASIC 的人,并希望通过他们之前开发的基于 Intel 8008 微处理器的 Traf-O-Data 计算机软件开发工具能给他们带来一场创业的机会。于是在次年 3 月初,艾伦、盖茨和他们在哈佛的同学蒙特·大卫多夫(Monte Davidoff)创建了一个 BASIC 解释器,以便在哈佛的 PDP-10 大型机上模拟工作。

在软件测试成功后,MITS 公司同意从艾伦和盖茨那里获得软件许可。于是艾伦辞去了霍尼韦尔的工作,成为 MITS 的副总裁兼软件总监,年薪 3 万美元;而盖茨仍然是哈佛的学生,并在 MITS 作为承包商工作,1975 年 10 月的公司通讯里将他在公司的头衔称为“软件专家”。1975 年 7 月 22 日,MITS 与艾伦和盖茨签订了合同,双方将在签约时获得 3000 美元以及每售出 BASIC 副本的版税;MITS 对该项目保留了 10 年的全球独家许可。

图源:维基百科

到了 1975 年底,MITS 每月出货计算机已达 1000 台,但 BASIC 的软件拷贝只能卖出几百份。额外的软件项目需要更多的资源;MITS 8 英寸软盘系统即将发布,基于摩托罗拉 6800 的 MITS 680B 计算机也即将发布。艾伦和盖茨的高中朋友 Ric Weiland 受雇将 8080 BASIC 转换为 6800 微处理器。《电脑笔记》的编辑、盖茨的朋友 David Bunnell 对盖茨的立场表示同情。他在 1975 年 9 月的期刊中写道,“客户一直在抄袭 MITS 软件”。

盖茨热衷于向爱好者社区解释开发软件的成本,最终在 1976 年 2 月 3 日,他发表了一封公开信,强调爱好者是从他个人那里偷东西,而不是从公司那里偷东西。这封信的主要目标之一是家酿计算机俱乐部(Homebrew Computer Club),所以盖茨直接向俱乐部发送了一份副本;家酿俱乐部的主旨是软件共享,1976 年,苹果创始人沃兹尼亚克就是使用俱乐部内自由共享的信息,制作了第一台个人电脑苹果一号(Apple I),使人们无需专业水平就能使用计算机。为确保这封信会被注意到,David Bunnell 通过特殊的邮寄方式将这封信寄给了当时所有的主流计算机出版物。

计算机科学家吉姆·沃伦(Jim Warren)曾对于比尔·盖茨在致计算机爱好者的愤怒信中提出的关于“盗版”软件的问题,想出了一个可行的替代方案;那就是当软件是免费的,或者如此便宜以至于付费比复制它更容易的时候,那么软件就不会被“偷走”。而在盖茨写信的 22 年之后,“开源”一词,正式诞生(详见本文后续)。

资料来源:维基百科

1986 年 2 月 3 日:《时代》杂志报道雾件问题

图源:维基百科

1986 年 2 月 3 日,《时代》杂志报道雾件问题。雾件(Vaporware),指的是在开发之前若干年或者在开发期间就已经提前炒作的产品,通常是软件,多数情况下会延期发布,很多产品甚至不会发布。20 世纪 80 年代初创造的这个词如今已经不再流行,不过,它背后折射的行为却从来不曾消失,而是经过五花八门的包装“生生不息”,甚至愈演愈烈。用现在的语言来描述“雾件”,那就是“画饼”。

在计算机行业,雾件指的是一种产品,通常指计算机硬件或软件,在 80 世纪后半叶,这个词的用法已经扩展到包括汽车等产品。“雾件”这个词是微软的一名工程师在 1982 年创造出来的,用来描述公司的 Xenix 操作系统,该系统是 Unix 系统的变体;微软工程师创造这个词的时候想到的是类似于“卖烟”的概念,暗示微软正在销售一种它很快就不会支持的产品。

1983 年,企业家埃丝特·戴森(Esther Dyson)在一份通讯中首次使用了“雾件”这个词。这个词在业内相当流行,用来形容那些他们觉得花了很长时间才发布的产品。《信息世界》(InfoWorld)杂志编辑斯图尔特·艾尔索普(Stewart Alsop)曾用这个词来讽刺比尔·盖茨,1985 年,比尔·盖茨发布了公司的第一个 Windows 版本,他因此获得了“金雾件奖”(Golden Vaporware award)。

“雾件”反映了计算机行业的一种倾向,即在涉及市场营销时,做法过于轻率散漫。微软、苹果和甲骨文都曾被谴责某些时候在实际操作时有类似做法。这种过度承诺后来还成为了硅谷的标志性特征之一。你认为这几年可以被称作“雾件”的电子产品或软件都有哪些?欢迎在评论区留下你心目中的答案。

资料来源:维基百科

1998 年 2 月 3 日:开源一词诞生

基于软件源代码的共享和协作改进的开发与软件开发本身的历史基本相同。在 1990 年代后期,随着程序员们对 Linux 的主流认可以及网景(Netscape)浏览器源代码的发布,对这一现象的兴趣和参与显著增加。

1998 年 2 月 3 日,在宣布网景浏览器的源代码发布后不久,托德·安德森(Todd Anderson)、Foresight Institute 的克里斯汀·彼得森(Christine Peterson)、Linux 基金会的乔恩·霍尔(John “maddog” Hall)和拉里·奥古斯丁(Larry Augustin)、硅谷 Linux 用户组的萨姆·奥克曼(Sam Ockman)、Red Hat 的迈克尔·提曼(Michael Tiemann)和资深黑客 埃里克·雷蒙德(Eric Raymond)聚集到加利福尼亚州帕洛阿托举行的战略会议上创建了“开源”一词。战略会议的开始是因为这七人意识到,围绕世人对网景的关注,可以创造一个机会,来教育和倡导开放式开发的优越性。

图源:维基百科

用来描述软件的术语“开放源代码”(OpenSource)最初是由一群自由软件运动的人提出的,他们对“自由软件”一词所隐含的政治议程和道德哲学提出了批评,并试图重新构架话语,反映出更具商业头脑的立场。此外,“自由软件”一词的含糊不清被认为阻碍了业务的采用。参会成员克里斯汀·彼得森在会议上首次建议使用“开源”一词来描述网景宣布开放浏览器代码的行为;第二天,林纳斯·托瓦兹(Linus Torvalds)给予了支持,自由软件运动的创始人理查德·斯托曼(Richard Stallman)最初似乎采用了这个术语,但后来改变了主意。

该术语在 1998 年 4 月由技术出版商 Tim O’Reilly 组织的一次活动中获得了进一步的知名度。最初名为“免费软件峰会”,后来又称为“开源峰会” ,许多最重要的自由软件和开源项目的领导人参加了该活动,在会议上,人们讨论了“自由软件”一词的替代方案。迈克尔·提曼提倡“sourceware”作为新术语,而雷蒙德则主张“open source”。聚集的开发人员进行了投票,并在当晚的新闻发布会上宣布了获胜者:开源。

在开源软件和自由软件观念的碰撞中,自由及开放源代码软件(FOSS)应运而生。FOSS 是一种可以归类为既是自由软件又是开源软件的计算机软件,任何人被授权可以自由地使用,复制,研究和以任何方式来改动软件,并且其源代码是开放和共享的。因此,人们在鼓励之下,开始志愿改善软件的设计。这种软件相对于专有软件,可以降低软件成本,提高安全性和稳定性。你如何看待开源软件和自由软件之间的分歧?你认为今天的开源违背初衷了吗?欢迎在评论区分享你的真知灼见。

【欢迎投稿】以史为镜,可以知兴替。计算机科学发展至今,有许多至关重要的事件、人物,欢迎所有朋友一起共建「历史上的今天」,投稿邮箱:tangxy@csdn.net 。