开源与 “半开源” 之间的战争和软件的历史一样久远

开源
HashiCorp 放弃开源原则这件事并无新意。

Linux 基金会成员峰会Linux Foundation Members Summit 上,最受关注的议题是人工智能和开源。而第二重要的话题涉及到 HashiCorp 放弃 Terraform 的 Mozilla 公共许可证Mozilla Public License(MPL),转而采用 商业源代码许可证Business Source License(BSL)1.1,以及由此引发的 OpenTofu 项目复刻。因 Linux 基金会对 OpenTofu 项目的支持,HashiCorp 的 CEO David McJannet 表现出极度的不满。

关于许可证切换、源代码复刻以及由此产生的争议,火热的讨论并未减少。但在我看来,有一点被人们忽视:人们一直误认为这是新鲜事物,实则不然。

之前已经有过不止一次,甚至不止十次,公司将开源代码转变为专有程序,或者隐藏在一个专有的包装中。

首先,人们经常拿走开源代码,但却抹去其许可证信息,然后就此继续下去。虽然这并不一定构成窃取行为,实际上,有些许可证,比如 MIT 许可证和两句版 BSD 许可证,完全允许公司和开发者在他们的专有程序中使用这些代码。例如,我们都熟知以下基于 MIT 许可证的程序,比如 Angular、.NET、Node.js、Ruby on Rails 和 React。

其次,有一些程序最初以开源的形式开始,但随着时间的推移,原始所有者和许可证规则发生了变化,以至于许多人甚至都不知道它们曾经是开源的。举例来说,苹果公司的 macOS 就是其中的一个典型。

你是否知道 macOS 曾经是开源的?确实,它曾经是。

macOS 的核心基于 Darwin,这是一种 Unix 操作系统。史蒂夫·乔布斯Steve Jobs

如今,如果你深入研究,仍然可以在 macOS 中找到 Darwin,它在 苹果公共源代码许可证Apple Public Source License 2.0 下开源。虽然还有一项名为 PureDarwin 的工作正在努力制作一个独立的 Darwin 操作系统,但进展甚微。在这个过程中,苹果公司巧妙地减弱了一个重要的开源操作系统的影响力。更为常见的方式是开源软件以 “开放核心open core” 的方式融入商业程序中。简而言之,开放核心,与开源不同的是,这是一种商业模式。在这种模式中,公司基于一个免费的、开源的核心程序,然后通过加入商业版本或者专有的附加组件来发展。

此术语由 Andrew Lampitt 在 2008 年提出,虽然代表的并不是一个新的概念。他提出这个术语是为了替代混乱的术语 “双重许可dual licensing”。这个命名更改是为了 “消除误解,推广一个对于开源社区、付费客户和供应商都有利的商业模式”。同时,其目标也是为了消解我们现在在 HashiCorp 看到的 “诱捕并切换bait and switch” 类似的争议。

尽管我们可以辩论这是否是一个 “出色的商业模式”,但无可争议的是它已经成为一个非常流行的模式。然而,近年来,我们看到的趋势是,许多企业从开放核心模式退回到 源码可得source-available

例如,MongoDB 创建 了一种非开源许可证,即 服务端公共许可证Server Side Public License(SSPL),以应对那些通过提供自托管版本和服务从其代码中获利的超级云计算公司。

并非只有 MongoDB 做出了这样的决定。Elastic 在开源核心模型运作的很好,但当亚马逊 AWS 等公司通过提供 ElasticSearch 服务赚取巨额利润时,Elastic 在 2021 年做出了 策略调整。它放弃了开源的 Apache 2.0 许可,转而采用非开源的 SSPL 和 Elastic 许可证。

Elastic 和其他几家公司(如 Redis 等)的此类做法,主要目的是阻止云服务公司将他们的开源程序作为一种服务而提供。然而,这个做法反过来对 Elastic 产生了负面影响,因为 AWS 对这个项目进行了 复刻。这一切是否让你想起了 HashiCorp?是吧。

尽管这些向非开源许可的转变惹怒了一些用户和很多开发者,但这些公司的业绩仍表现相对稳定。你可能对此感到不满,但事实是,对于这些公司来说,这种转变在一定程度上取得了成功。

接着,我们来看红帽公司的情况。红帽公司对其红帽企业 Linux(RHEL)代码的使用 施加了限制,只允许其客户使用。几十年来,红帽公司一直在权衡作为开源领导者与处理 RHEL 克隆产品(例如 CentOS,以及最新的 AlmaLinux 和 Rocky Linux)的关系。

随着时间的推移,红帽公司对与他人共享其代码表现出越来越大的犹豫。现在,你可以(且很多人确实正在这么做)辩论红帽公司不再是一个真正的开源公司。批评者认为,红帽公司虽然仍然严格遵守 GNU 通用公共许可证(GPL)的条款,但已经失去了开源精神。

虽然 RHEL 和与其相关的一系列程序仍在产生可观的利润,但红帽公司希望能够从中获取更多的收益,因此,它也开始逐步偏离开源原则。

实际上,所有这些案例的共同之处在于:对更大财富的欲望。如圣经所言,“贪财是万恶之根”。我不确定这一句话的真假,但我确实知道,对金钱的热爱和开源原则很难两全。

对于从开源软件中赚钱并没有错误之处。理查德·斯托曼Richard M Stallman(RMS)曾言:“工作寻求报酬,或者寻求尽可能增加收入,这并没有错,只要不采用破坏性的方式即可。” 然而,在 RMS 看来,“通过限制它们的使用来从程序的用户中挤取金钱,是一种破坏行为。”

尽管在现今开源软件与商业实践交汇的情况下,RMS 的观点可能并不如过去那样深受欢迎,但他仍然拥有众多的支持者。

责任编辑:庞桂玉 来源: Linux中国
相关推荐

2019-06-21 10:03:26

开源技术 趋势

2023-09-04 14:28:33

FlarumDiscourse开源

2015-04-20 10:20:47

NGINX开源

2023-02-06 09:13:23

开源系统GoFrame V2

2015-03-09 11:01:43

2013-10-09 09:33:10

开源开源软件

2010-07-07 14:37:40

MeeGo英特尔

2021-06-09 15:40:47

容器

2010-02-25 17:23:09

Fedora IT

2011-11-21 09:41:44

开源

2011-11-21 09:21:09

甲骨文云计算开源

2021-12-22 07:31:18

RedisNoSQL数据库

2011-02-28 10:38:13

Windows 8

2012-12-20 10:17:32

IT运维

2012-03-07 17:24:10

戴尔咨询

2020-05-12 16:58:05

LinuxUnix技术

2009-06-12 15:26:02

2011-07-04 14:24:50

2020-03-09 10:00:35

人工智能机器学习技术

2015-08-25 09:52:36

云计算云计算产业云计算政策
点赞
收藏

51CTO技术栈公众号