不久前,我看到了 RedMonk 的 Stephen O'Grady 发出的一条有趣的推文,关于开源许可的状态,其中包括这张图表。
这张图表显示了许可证使用情况从 2010 年到 2017 年的变化。阅读这张图表,很明显,GPL 2.0 许可证(最纯粹的著作权保留许可证之一)的使用量减少了一半以上。根据图表显示,开源许可的受欢迎程度随后转移到了 MIT 和 Apache 许可证。 GPL 3.0 的使用量也有小幅增加。
那么,这一切意味着什么呢?
为什么 GPL 2.0 的使用量大幅下降,而 GPL 3.0 的使用量仅略有增加?为什么 MIT 和 Apache 的使用量增长如此之快?
当然,有很多种解释,但我的猜测是,这是由于开源在商业领域的增长加快,以及商业界对 GPL 的紧张情绪。让我们深入探讨一下。
GPL 与商业
现在,在我开始之前,我知道我会激怒一些 GPL 粉丝。在你们开始对我大喊大叫之前,我想非常清楚地表明:我是 GPL 的忠实粉丝和支持者。
我已将我写过的每一段软件都以 GPL 许可,我一直是 自由软件基金会 和 软件自由保护组织 及其工作的积极财政支持者,并且我倡导使用 GPL。我在这里的评论不是关于 GPL 的有效性或巨大价值(它无疑是一个伟大的许可证),而是更多关于行业对该许可证的看法和解释。
大约四年前,我参加了一个名为开源智库的年度活动。该活动是一个小型、私密的年度聚会,聚集了加州葡萄酒产区的开源行业高管。该活动侧重于建立人脉、建立联盟以及识别和解决行业问题。
在本次活动中,有一个小组案例研究,与会者被分成小组,并被要求为一个正在构建核心开源技术的真实世界项目推荐一个开源许可证。每个小组都宣读了他们的建议,令我惊讶的是,10 个左右的小组都建议使用宽松许可证,而没有一个建议使用 GPL。
我观察到行业内倾向于 Apache 和 MIT 许可证的趋势,但这在当时引发了一个关于开源行业对 GPL 的理解、接受和舒适度的警示。
似乎近年来,这种趋势仍在继续。除了 Black Duck 的研究之外,GitHub 在 2015 年的一项许可证研究 发现 MIT 许可证是主要选择。即使在我自己在 XPRIZE 的工作中(我们为 全球学习 XPRIZE 选择了一个许可证),以及我作为 社区领导力顾问 的工作中,我也看到了类似的趋势,我的许多客户都觉得使用 GPL 许可他们的代码感到不舒服。
随着 估计 65% 的公司为开源做出贡献,自 2010 年以来,商业兴趣和投资显然有所增长。我认为,结合我刚才概述的趋势,表明该行业普遍认为 GPL 不是开源业务的正确选择。
连接社区与公司
老实说,GPL 受欢迎程度下降并不完全令人意外,原因有几个。
首先,随着开源行业的发展,很明显,找到社区参与和商业模式(你知道的……实际可行)之间的正确平衡是一个关键的决定。在开源的早期,人们有一种误解,“如果你构建它,他们就会来。” 当然,他们经常来使用你的软件,但在许多情况下,“如果你构建它,他们不一定会给你任何钱。”
随着岁月的流逝,我们已经看到各种公司,如 Red Hat、Automattic、Docker、Canonical、Digital Ocean 等,探索不同的开源盈利方式。这包括分发模式、服务模式、开放核心模式等等。已经明确的是,传统的软件稀缺模式不适用于开源代码;因此,你需要选择一个支持公司选择的模式需求的许可证。对于许多公司来说,在收入和免费提供技术之间取得平衡是一个艰难的前景。
这就是我们看到摩擦的地方。虽然 GPL 是一个开源许可证,但它从根本上来说是一个自由软件许可证。作为一个自由软件许可证,GPL 的大部分管理和支持都是由自由软件基金会推动的。
尽管我非常喜欢自由软件基金会的工作,但他们的重点最终还是锚定在软件绝对必须 100% 免费的观点上。 FSF 没有多少妥协的余地,即使是公认的开源项目(例如许多 Linux 发行版)也因为一小部分二进制固件而被视为“非自由”。
这对于企业来说变得复杂,因为企业很少有非黑即白的选择,而通常是多种灰色地带。很少有企业拥有与自由软件基金会(或软件自由保护组织等类似团体)相同的纯粹意识形态,因此我怀疑企业不太愿意选择与如此纯粹的意识形态联系如此紧密的许可证。
现在,要明确的是,我不责怪 FSF(以及 SFC 等类似组织)。他们有一个特定的授权和使命,专注于构建全面的自由软件公共领域,并且他们有充分的理由在他们选择的任何地方划清界限。 FSF 和 SFC 出色地 完成了工作,我将长期继续成为他们以及在那里工作的许多优秀人士的支持者。我只是认为,这种纯粹性的一个后果是,公司可能会感到不安,无法达到标准,因此选择使用与 GPL 不同的许可证。
我怀疑,影响 GPL 使用量的另一个因素是开源发展带来的动态变化。在早期,项目启动的核心基本原因之一是对开放性和软件自由的伦理要素的严格关注。 GPL 不出所料地成为这些项目的自然选择,Debian、Ubuntu、Fedora、Linux 以及许多其他项目都是例证。
然而,近年来,我们看到新一代开发人员的形成,他们对自由的关注没有那么关键,如果我敢说,也没有那么宗教化。对于他们来说,开源是构建软件的实用组成部分,而不是伦理选择,我怀疑这就是为什么我们看到 MIT 和 Apache 许可证的使用量如此增长的原因。
未来?
这对 GPL 意味着什么?
我的猜测是,GPL 将继续成为流行的许可证选择,但开发人员将越来越多地将其视为更纯粹的自由软件许可证。我怀疑,对软件自由有伦理承诺的项目将优先考虑 GPL 而不是其他许可证,但对于需要我们之前讨论的平衡的企业而言,我怀疑 MIT 和 Apache 许可证将继续变得流行。
无论如何,好消息是开源和自由软件正在发展,虽然许可证的使用方式可能存在复杂性和变化,但更重要的是,技术正变得越来越开放、可访问,并且对所有人可用。
23 条评论