开源运动简史之第二部分
以下是开源运动简史的第二部分内容:
自由软件运动的兴起
- 背景 :20 世纪 70 年代,计算机产业发生转型,软件从附属品变为具有独立价值的商品,商业闭源模式逐渐确立,如微软、甲骨文等专业软件开发商的出现,但这也导致了共享文化的式微,引发了部分人的不满。
- 过程 :1983 年,理查德・马修・斯托曼发起 GNU 项目,目标是创建一套完全自由的操作系统。1985 年,斯托曼发表《GNU 宣言》,发起自由软件运动,并提出 “软件的自由就是人类的自由” 等理念,明确了软件用户应有的四项基本自由,同时创立了自由软件基金会。但当时人们发现,盗版现象使得软件开发者无法得到应有的回报,软件产业的发展也受到影响。于是,比尔・盖茨在 1976 年发表《致爱好者的公开信》,强调软件作为知识产品的价值属性,开启了软件通过商业授权获取收入的开端。
- 结果 :至 1990 年代初,GNU 项目已成功构建包括编译器(GCC)、文本编辑器(Emacs)和调试工具(GDB)在内的完整开发工具链,为后续开源运动奠定了基础。
开源一词的诞生与开源运动的兴起
- 背景 :随着互联网的发展,软件的开发和传播方式发生了巨大变化,人们需要一个更明确、更易被商业界接受的词汇来描述这种自由软件的开发和共享模式。
- 过程 :1997 年 10 月,埃里克・雷蒙德将其论文《 Cathedral and the Bazaar 》邮寄给感兴趣的开发者,引发了关于自由软件运动未来发展方向的讨论。次年 1 月,蒂姆・奥莱理召集会议讨论自由软件对商业软件的冲击等问题,会上克里斯・彼得森首次提出了 “开源”(Open Source)一词作为自由软件的替代称呼。会后,自由软件运动的主要倡导者们基本达成共识,同意使用 “开源” 这一名词。随后,埃里克・雷蒙德等人成立开源促进会,以推动开源软件的许可证认证等工作,开源运动逐渐兴起并蓬勃发展。
- 结果 :开源运动吸引了更多的开发者、企业和机构参与其中,形成了全球性的开源社区和生态系统,推动了软件技术的快速发展和创新。
开源技术的最后一块拼图 ——Linux 内核
- 背景 :截至 1991 年,自由软件基金会已经开发了 GNU 操作系统的大部分组件,但内核 Hurd 研发停滞不前,成为制约自由软件运动发展的关键问题。
- 过程 :1991 年,芬兰赫尔辛基大学的学生林纳斯・托瓦兹开发了 Linux 内核。1992 年,在 GNU 项目的影响下,Linux 内核从禁止商业用途的许可证改为 GPL 协议,补齐了 GNU 项目的最后一块拼图,完全开源的操作系统 GNU/Linux 诞生了。
- 结果 :GNU/Linux 操作系统几乎垄断了除个人电脑层面外的其他所有计算设备的操作系统,从超级计算机到移动设备都在广泛使用 Linux 或其变种,印证了开源的商业化潜力,也重塑了移动互联网时代的生态格局。
开源运动的发展与挑战
- 发展 :1998 年,网景公司决定将 Netscape Navigator 浏览器的源代码开源,激发了更多公司和项目考虑开源的可能性。随后,Apache HTTP 服务器、Python、Ruby on Rails 等众多开源项目和社区不断涌现并发展壮大,如 Apache 软件基金会和开源倡议等组织成立,以支持和推动开源项目的发展。2008 年 GitHub 的诞生,终结了开源社区低效协作时代,重构了全球开发者的协作范式,截至 2023 年,该平台已托管超过 4 亿个代码仓库,成为名副其实的开源基础设施。
- 挑战 :开源运动在发展过程中也面临诸多挑战,如知识产权保护与侵权问题,部分开源项目可能因开源协议的限制而在商业化应用中受到一定制约,同时,开源社区内部也可能存在管理不善、意见分歧等问题,影响项目的推进和发展。
开源运动的现状与未来
- 现状 :如今,开源已成为软件开发和技术创新的重要模式,全球范围内有数百万计的开源项目,涵盖操作系统、数据库、编程语言、开发框架、工具软件等各个领域。众多企业积极参与开源项目,贡献代码、提供资金支持等,如谷歌、微软、IBM 等大型科技公司都在开源领域有着广泛而深入的布局。同时,开源社区也在不断发展壮大,形成了多样化的开源文化和协作模式。根据 GitHub 的数据,全球有超过 8000 万开发者在使用 GitHub 进行开源项目的开发和协作,每天有数以万计的代码提交和更新。
- 未来 :随着人工智能、大数据、云计算、区块链等新兴技术的发展,开源在这些领域的应用也将不断深化和拓展。例如,在人工智能领域,开源的机器学习框架和算法库,如 TensorFlow、PyTorch 等,为开发者提供了丰富的资源和工具,推动了人工智能技术的快速发展和创新。未来,开源将继续促进技术的民主化