GPLv3 看起来像是一个有价值的更新

当我 1986 年第一次接触 GNU 通用公共许可证时,它对我来说简直是一次顿悟。它对版权的革命性方法(所有错误都被逆转)以及 GNU 项目的宏伟愿景(不惜一切代价使 UNIX 过时,通过创造出更好且免费的东西)对我来说就像量子物理学对爱因斯坦一样具有划时代的意义。(你不需要告诉我我不是爱因斯坦——我知道。)

1987 年下载 GNU C 编译器后,我熟练掌握了 GNU 软件。我自己的编程技能经历了最显著的转变。(这让我想起了我第一次弹古典吉他的经历,当我弹奏“真正的”吉他而不是破烂货时,音乐不仅听起来更好,而且也更容易弹奏更长时间。使用 GNU 软件进行黑客攻击就像演奏一件精美的乐器……)。通过这次经历,我获得了信心来着手一个项目,而仅仅在一年前,我还会认为这纯粹是幻想:世界上第一个本机代码 C++ 编译器的开发,我于 1987 年 12 月首次发布了它。

正如我在开源软件文集中写道的那样,我开始看到 GPL 为自由软件商业化提供了一个独特的机会,经过两年的寻找志同道合的企业家的努力,第一家自由软件公司(以及,根据定义,第一家开源软件公司)诞生了。关于这家公司的故事在 O'Reilly 的书中得到了充分的记录,但对于这篇文章来说,重点是:GPL 的编写考虑到了自由,但没有考虑到嵌入式系统计算机的世界。Cygnus 成为嵌入式市场的主要参与者,1991 年,自由软件基金会将 GPL 更新到版本 2,并发布了 LGPL。在我看来,这些澄清并不是对自由的妥协,以改善 Cygnus 的商业前景(尽管有这种积极的影响)。相反,它们是技术上的改进,就像人们在获得一些经验后期望在协议定义中找到的那样。GPLv2 是双赢的。

GPL 第 2 版在 16 年里一直没有修改,而版权法、惯例和解释在程度和实质上都发生了变化。GPL 第 2 版也一直没有修改,而大大小小、强大与否、有道德与否的公司都以可以想象到的各种方式对其提出挑战,仿佛这种挑战是他们的首要任务。有些人甚至大胆地说:“好吧,既然我们弄不清楚如何像其他成功的公司那样通过 GPL 赚钱,那么 GPL 一定是坏了!” 对吧。

在同一时期,被认为安全的加密技术已被证明是脆弱的,我们不应该感到惊讶。加密方法(以及一般的安全性)都是关于创建一种防御能力,使攻击成本大于奖励价值。在 16 年里,成本发生了很大变化:8-12 代摩尔定律使每台机器的计算能力提高了 256 倍到 4096 倍,互联网又将这种计算能力扩大了几个数量级,因为分布式协作破解项目成为流行的运动,更不用说椭圆曲线算法的进步,它以惊人的幅度削弱了加密强度。在密码学领域,我们假设有专门的对手日夜工作以挑战系统,那些停滞不前的人就会迷失方向。每天都需要更强大的防御。

GPLv2 取得了惊人的成功,并且目前是世界上一些最令人兴奋的软件项目的首选许可证,毫无疑问。但是,已经发现了一些极端情况,在这些情况下,自由软件基金会试图保证的自由被规避了,而这些规避也损害了使开源成为商业成功的有吸引力的基础的公平交易。为了一个人的成功而牺牲整个社区的利益不是开源的全部意义所在(当然也不是自由软件的意义所在)。

我仔细阅读了新发布的 GPLv3 草案,我相信这是一项了不起的成就。(免责声明:我不仅不是爱因斯坦,我也不是律师。但是,我 20 年的自由软件经验、GPL 经验和 18 年的商业经验应该算得上什么。)我的阅读告诉我三件事。首先,GPLv3 是熟悉的;并非一切我们已知的东西都必须重新学习。其次,GPLv3 处理了极端情况,如果不加以修复,这些极端情况将会崩溃,并将我们所有的良好工作都带入深渊;崩溃已经够糟糕了,但可预测的崩溃是可耻的。第三,GPLv3 重申,尽管自由软件运动在过去 20 多年中取得了所有增长和所有成功,但自由软件基金会的目标仍然以软件自由为中心,他们唯一坚持的禁令是针对那些试图破坏这种自由的人。看到一个组织在繁荣面前保持原则,令人鼓舞。

今天早上,我一边盯着 GPLv3,一边盯着 OSD,我读到了一份许可证,这份许可证应该能够顺利获得 OSI 认证。根据我的阅读,我鼓励自由软件基金会在他们准备好时提交他们的最终草案,以便整个开源社区可以审查、讨论并向 OSI 董事会提出建议,看看他们是否也看到了我所看到的。如果是这样,我们应该看到一个急需的更新被添加到 OSI 批准的许可证列表中,我们将能够鼓励那些业务依赖于公平的人为他们提供一个既健全又安全的许可选择。