自由和开源软件历史上的里程碑:1969~2015

从1969到2015,差不多是半个世纪了。看 Christopher Tozzi 来回顾下自由软件和开源软件历史上里程碑式的事件!曾几何时,历史学家开始介入自由软件与开源软件的世界?这究竟是科学史、人类史、还是政治史?似乎难以划分清晰。

原文链接:Milestones in Free and Open Source Software History, 1969-2015

题记

今年是 Linux 内核诞生25周年,非常有必要回顾一下Linux以及相关的开源软件的历史,VAR Guy 斗胆担当起这个责任,以自己的视角切入,回顾这段历史的里程碑:从介绍 Unix 的创建开始到微软拥抱Linux为止。

1969年,Unix 诞生

unix

Unix,1969年诞生于 AT&T 贝尔实验室的操作系统,永远也不会是自由或开源的操作系统!但是它的代码被 Unix 社区的 Hacker 们自由的共享着,在20世纪80年代早期 AT&T 将之商业化之前,Hacker 们一直在改进它。也因为此,Unix 成为了自由和开源程序员们试图通过开放代码来复制的操作系统。因此,Unix 为开源奠定了非常重要的基础。

1984:GNU 成立

gnu

在1983年的秋天,Richard Stallman ,MIT 人工智能实验室的资深工程师,对于软件闭源日益增长的趋势也越发的不满,于是发起了 GNU 项目。他的目标是仅使用可以自由共享的代码来构建一个 Unix 克隆的操作系统,而且必须永远的公开。绝大多数的 GNU 项目,均是 Stallman 在1984年早些时候开始构建的,它们今天依然处于自由和开源软件生态系统的中心位置。

1985年,Stallman 创建自由软件基金会

stallman

尽管 GNU 项目创建以来,能够提供给人们自由的共享代码库了,但是直到1985年,Stallman 创办了自由软件基金会之后,自由代码的在政治维度上才站稳了脚跟。通过帮助和资助自由软件的开发,FSF 在过去的30年为 GNU 项目以及其它自由软件项目提供了重要的基础。它还是帮助自由代码和具有相同目标的社会和政治之间的纽带。

1991, BSD Net/2 发布

bsd

1991年6月,来自加利福尼亚大学伯克利分校的开发者们发布了一款叫做 Net/2 BSD 的操作系统软件,这款软件是可以自由的重新分发的类 Unix 操作系统。关于 BSD 的开发可以追溯到上世纪70年代,在开始的时候是作为为 AT&T Unix 添加一些增强的功能而发起的,随后在80年代时,AT&T Unix 成为一商业产品,然后,BSD 的团队就开始以自由的 BSD 完全取代 AT&T Unix的工作了,Net/2 是 BSD 的第一个版本,基本上实现了这样一个目的。在1991年的夏天,那时的人们还没有听说过 Linux,而 GNU 的开发人员正忙于努力的创建一个内核。BSD 作为一个免费的类 Uni 操作系统,看起来是一颗冉冉升起的新星!前途无量!然而,在发布以后,由于法律上的麻烦(可以说,许多的条款太过于自由主义),BSD 以及其衍生产品从来都没有获得像 GNU/Linux 那样广泛的追随者

1991,同一年,Linux 内核现身

linux

1991年8月份,一位名叫 Linus Toravalds,尚在读大学的芬兰学生在新闻组上发布了一份声明,他创建了一个类 Unix 操作系统的自由内核。可当时的 Linus 打心眼都没有想到过他写的这个内核,日后被称之为 Linux ,能够吸引众多的精英来一同开发,更没有想到过这最后成为最为成功和著名的自由与开源软件程序。同 GNU 项目所开发出的工具相结合,Linux 获得了空前的成功。

Z.B.: 其实 GNU 自己也有一个内核的项目,叫做 Hurd,但它从来就没有完成过。

1995,Apache 诞生了

apache

在上世纪90年代早期,Web 渐渐显露峥嵘,但是作为 Web 服务方面的软件还处于封闭、专有的状态。但是在1995年一款软件出现打破了这块铁板。一组由系统管理员组成的开发团队开始协作构建叫做 Apache HTTP 服务器的软件,是基于国家超算应用中心(NCSA)的一款web服务平台,NCSA 后来放弃了他们这款软件的开发人员。Apache 果然顺势而起,没多久就声名鹊起,到1996年的时候,已经占据了 Web 服务器大部分的市场份额。在接下来的几年里,Apache 的开发者们扩大了其支持的平台,支持了更多的由 GNU 许可的软件,当然 Linux 是重中之重。在1999年,成立了 Apache 基金会,旨在为更多的开源软件项目提供监督和帮助。如今的 Apache 已经度过了其17岁的生日,以事实证明了它非常的成功!

2005,Git 的时代来临

atlassian git

在上世纪90年代,其中一个让 Linux 连同其它开源项目和 GNU 分离的重要因素就是前者的协作开发是大型的、去中心化的程序员,而后者 GNU 的开发则是在中心化的、较小团队中进行的。在 Linux 最开始的开发过程中协作是通过电子邮件进行的,稍后迁移到了源代码管理(SCM)平台中。Linux 使用的是商业的、叫做 BitKeeper 的SCM一直到2005年,因为平台的所有者称不再为 Linux 提供免费的使用权了,Torvalds 于是写了一款叫做 Git 的SCM工具取代了 BitKeeper。

从2008年开始,渐渐的出现了一些以Web 的形式托管 Git 代码仓库的平台,如 GitHub。Git 出现推动了开放源代码管理方式,简直是一场革命,它让开发过程前所未有的无限扩展,而且近乎允许让每一个人做贡献!换句话说,Git 将开源编码的开放性带到了更高的高度,可以让任何一个人非常快速的推出一个开源项目,通过 Web 无缝的接受他人的贡献!

N.B.: 近期,GNU发起了一项关于 Git 托管平台/工具的评测,评测标准评测结果 ,但是颇为遗憾,没有评测Pagure!

2015,微软宣布拥抱 Linux

microsoft

关于微软和自由/开源软件社区的紧张关系,还得从上世纪90年代后期说起,GNU、Linux、以及 Apache Web 服务器,和其它的开源软件,伴随着互联网的崛起而分割了微软的一些市场份额。更有甚者,在2011年当时任微软 CEO 的 Steve Ballmer 称 Linux 为“致命病毒”。但是,在2015年一切都变了。微软的新任 CEO 公开宣称“微软拥抱Linux”(原文是“Microsoft Love Linux”)。在回顾微软近年来对于Linux和开源的策略一文中,我总结了一下这几年微软整合开源产品的几件大事件,就可以看出微软这次是动真格的了,尽管来自开源社区的忠实爱好者们仍然在怀疑微软的态度

作者简介

Christopher Tozzi,The VAR Guy 的自由编辑,从2008年到现在一直担任一些频道的主编。频道有:开源、Linux、虚拟化、SDN,以及容器、数据存储等相关主题。他在华盛顿大学讲授历史课程,他还偶尔会结合这些来写软件的历史。他的新作《 For Fun and Profit: A History of the Free and Open Source Software Revolution, 》即将由 MIT 出版社出版。他的个人主页:christozzi.com

译者点评

其实,类似这样的大事件式的历史叙事方式,我是非常的不喜欢。而且容易被误解。这要回归到我们中学所学的历史课,尽挑大事说,忽略了每一个活生生的个人史。导致多数人都有宏观视野,这一点可以在夏天的街边地摊,随意找个只要有三、两人聚在一起,你在旁边聆听即可,尽是皇帝视野、宏观叙事、人多无力、历朝历代等等。之所以翻译这篇,是因为看到作者是一名历史学家,竟然写了一本关于自由和开源软件的历史书,只希望从他的脉络中找到一些什么。关于 Christopher Tozzi 的文章,我可能还会翻译几篇。若是能拜读了他的书,他的历史叙事又不同于列举里程碑的话,我希望能够翻译,从中学习一些文化、技术、沟通、管理等细节。

N.B.:似乎有微博上湾区日报的风格。这究竟是一种什么样的现象?值得深思!有机会的话,应专门写一篇文章解释为什么这么干。不用管这个世界,表达出自己的内心即可。