您的位置:  首页 > 技术杂谈 > 正文

开源怎么了?为什么连发起人都“嫌弃”它?

2022-04-18 11:00 https://my.oschina.net/oscpyaqxylk/blog/5515202 OSCHINA编辑部 次阅读 条评论

翻译:lola


说起 Bruce Perens 大家可能不熟,但他是 OSD (Open Source Definition)的撰写人以及 OSI (Open Source Initiative)的联合创始人。

看看《Bruce Perens 二三事:真正的强者,剽悍的人生》这篇文章,你就会发现他从没离开过开源。如果说谁有资格说开源哪里出了问题,绝对少不了他一个。

事实上,他也的确这么总结过。从 1983 年 GNU 计划诞生,开源(广义上包括自由软件)已经走过了近四十个年头,开源运动是成功的吗?又有什么问题?我们该怎么解决?

在 DebCon2020 (Debian 开发者大会)上,Bruce Perens 就做过这样一个演讲,将开源过去和现在的问题剖析了出来,意图开启“后开源时代”。接下来,本文就将此次演讲的内容整理出来,希望能对读者有所启迪。

 

“开源”之后,会发生什么?

 

 

01 “开源”走了近四十年,既有好消息,又有坏消息 

 

首先,无论如何“开源”会继续下去。

不管出现了什么,“开源”并不会被替代。相反,应该是以一种完全崭新的范式呈现。而“开源”则会以今天的面貌继续下去。毕竟,如果“开源”被推翻了,一定会引起人们的愤怒。

其次,开源“继任者”,会是全新的。

这个范式将与“开源”并行不悖,既非之前定义的“开源”,也不是自由软件,而是一个从未出现的全新事物。这个范式试图去达到那些“开源/自由软件”曾想要达成却失败了的目标。

最后,是时候去评估“开源”的表现了。

GNU 运动首次宣言是在 1983 年 9 月 27 日,是 37 年前!Debian 和其自由软件指南是在 1997 年 6 月,是 23 年前!OSI (Open Source Intiative)是在 1998 年 2 月 7 日,是 22 年前!

PS.该演讲的时间为 2020 年

我们已经发展了完全足够的时间,是时候来评估一下我们所达成的成就了。总的来说,“开源”既有好消息,又有坏消息。

其中,好消息是:

1、“开源”在软件领域的统治已经达到了令人咋舌的程度。所有程序员和用户都不能避免接触开源软件。

2、开源软件的发展空前繁荣,优质且数量惊人。

3、许多人已经从生产开源软件中赚到了钱。

4、开源软件服务了范围广泛的行业,这些行业是开源发展的重要参与者。这个过程替代了之前所存在的合作联盟形式。

坏消息是:

1、我们正在对开源受到的损害“视而不见”

“开源”在诸多方面已经“受损”,但在过去十年里,我们没有采取任何行动,反而不断去合理化这些“损害”。修补“开源”并不能解决问题。只有通过创造新范式的方法才有可能有效,这个新范式要从根本上区别于“开源”。

2、“开源”与商业结合,真的那么丝滑吗?

“开源”最根本的目的是融合商业这股不同力量,商业聚集了财富和能量。但结果是,“开源”成功融入了商业,却忽视了其他的目标。这些目标可以追回至 1983 年 Richard M. Stallman 所阐述的“自由软件”,它应该是关于自由、关于人民福祉的。

然而,这些“开源”应有的优良品质,从未在大范围内产生影响。但如今,我们越来越需要那些品质了。

3、“开源”真的对普罗大众有帮助吗?

尽管“开源”已经被大众广泛使用,但大多数人并不了解开源,他们只是利用“开源”服务于他们自己的目的。例如,利用开源设备和服务来收集用户信息,用于商业目的,从而操纵用户。人们不选择使用“开源”,并不是他们的错,是我们没能满足他们的需求。

在公民权利方面,我们能做的比我们已经做到的,要多得多得多。通过软件的分发和服务来满足人们的需求,并且充分尊重公民权利,这些都是商业不能做到的。然而,今天“开源”仅仅做到了绝少部分。

千万不要使用“非技术用户”(non-technical users)这个词,人类本身就是基因工程师的杰作,这是一种不同类型的技术。

 

02 “开源”一直存在“行乞问题”

 

开源开发者创造的开源软件,支撑着现有整个技术世界的运行。就凭这点,我们就应该得到不错的报酬。但是,开源开发者却处于被动地位,是“乞讨者”。他们不得不伸手去要。

“请让我为你的(掠夺型)公司工作以获得报酬,好让我能够继续写开源软件。”

“请在众筹平台上赞助我。”

......

其中,最典型的一个例子是:OpenSSL 承载了绝大多数的金融业务的运作(不仅是网络上的),一个叫做 Ben 的家伙,他为 OpenSSL 工作,却没得到过一毛钱。

*OpenSSL 是非常流行的加密程序库,被誉为世界上最重要和最受依赖的开源项目之一。这里的 Ben 应该是指 Ben Laurie,是 OpenSSL 最初团队的成员之一。

随后,OpenSSL 遭遇到危机几近破产,是 Linux 基金会在 2014 年的介入挽救了它。事情不应该是这样的。

*2014 年,OpenSSL 发布重大漏洞 “Heartbleed”,这场危机让这个著名的开源软件陷入困境。随后,Linux基金会在极短的时间内就成立了核心基础架构联盟(CII, Core Infrastructure Initiative),主动挑选缺乏资金的重要开源项目进行资助,OpenSSL 是他们资助的第一个项目。

以上这张图非常形象地说明了这个问题:现代电子信息技术的基础设施被一块很小、很薄弱、很随机、很不被重视、很无法收到回报的项目和人支撑着,这是很危险的。

开源和自由软件已经为一些人带来了十分可观的财富,但多数财富并没有流向开发者本身。为了社会大众的自由和财富而奋斗是个不错的使命。但为了让 Jeff Bezos (亚马逊创始人,有名的富豪)更加富有、自由和有权势,显然就意义不大了。开源开发者们尽管一直在奋斗,但并不会享受到与 Bezos 一样的东西。 

 

03 “开源”正在代表有权势的大企业们,而不是我们自己!

 

Linux 基金会指导委员会都是谁?

Gitlab、Google、AT&T、Facebook、Samsung、Qualcomm、VMWare、Miro Focus、Microsoft、Panasonic、Renesas、Hitachi、IBM、NEC、Fujitsu、Intel、Comcast......

这简直就是本末倒置! 

其中,Qualcomm 曾经让我非常困扰,当时我在 ETSI 标准组织代表 OSI (Open Source Intiative),Qualcomm 就因为不想通过开源的 ETSI 免版税标准而与 OSI 产生过争执。在 Linux 基金会的掌管者与开源开发者之间总是存在冲突,这仅仅是体现双方利益立场不同的其中一例。

而且,强势的公司制定着我们的政策。

Linux 基金会去除了仅有的一个“社区成员”董事席位。我记得,过去十年左右,Linux 基金会董事会的成员中有一个公司,曾经在他们的主要产品中严重侵权了 Linux 内核,而且现在仍是。

Linux 基金会已经停止与合规教育相关的动作,且正在撤资这个领域。然而,在多数公司中,如果没有强制力,他们是不会重视合规性的。比如说,因为参与 VMWare 侵权诉讼案,SFC(Software Freedom Conservancy)就曾被撤资。

*2006 年,Christopher Helwig(著名 Linux 开发者) 发现 VMware ESX 裸金属虚拟机(VM)虚拟机管理程序中违反 GPL 许可协议使用了 Linux 源代码。2015 年 Christopher 在软件自由保护协会(SFC)的帮助下起诉了 VMware,而 2016 年,法院驳回了该诉讼请求,之后 Christopher 上诉,但最终还是被驳回。
 

04 新的问题:API 版权问题

 

关于甲骨文起诉谷歌的案件中,API 的版权问题被提了出来。目前,没有任何案例推翻“API 版权”这一说法。

*2010 年甲骨文以 74 亿美元收购了 Sun,Java 也随之为甲骨文所有。同年,甲骨文便起诉谷歌,认为谷歌侵犯了关于 Java 语言的版权,并索赔 88 亿美元。其中,涉案的是谷歌自己编写的 37 种 Java API 。一时间,关于 API 是否享有版权的问题甚嚣尘上。
 
2021 年 4 月 5 日,美国最高法院以 6 票支持 2 票反对,判定谷歌并未侵权,自此甲骨文和谷歌之间关于安卓系统 Java 源代码侵权案终于尘埃落定。
裁决结果没有直接否定 API 可以享有版权的事实,但它明确地表示了,根据版权法中“合理使用”的原则,API 拥有者并不能随意阻止其他开发者使用其 API 来构建新程序。

在著名的 ALTAI 案中,(美国法院)在理论上确立了一个标准,去规定什么是可以、什么是不可以受到版权保护的。这也表明了越来越多的东西可以被纳入到版权范围内,这为 API 版权提供了合理的事实依据。

*1992 年,CAI(Computer Associates International, Inc.)诉讼 ALTAI 一案(也就是著名的 Altai 案)中,一开始地方法院判定被告侵犯原告名为 CA-SCHEDULER 的受版权保护的计算机程序,被告未上诉。
随后,CAI 进行第二次版权侵权索赔,法官发现 Altai 的 OSCAR 3.5 程序与 CA-SCHEDULER 中称为 ADAPTER 的部分实质上并不相似,因此拒绝给予救济。
最后,地区法院得出结论,CAI 对阿尔泰的州法律商业秘密盗用索赔已被联邦版权法取代。
 
在该案件中,第二巡回法院采用“抽象-过滤-比较”三部分测试(又称抽象测试法、三步法标准)来分析计算机软件中的非文字侵权索赔。这一新确立的方法和思想为后来人所借鉴。

(如果 API 版权成立,)API 版权将限制我们使用那些被公司掌握所有权的 API,而这在之前是可以不被追责的。想象一下,我们不能再使用 C Compiler,因为 C 语言是一种受版权保护的 API。随着下一个重量级语言的到来,这完全有可能发生。

事实上,API 版权会让类似 GPL 的系列许可证,更加具有强制力,特别是在有关于动态链接的领域,或者任意一类软件组件。这并不是我们所期望的。我们需要免责地、自由地使用 API,而不是让 GPL 变得更具效力。

 

05 软件专利仍然是个问题

 

“开源运动”在 21 世纪的头十年里所赢得的美国专利质量提升的局面,已经被扭转过来了。开放创新联盟(Open Invention Network,缩写为 OIN)为了保护软件专利系统不受“开源革命”的影响而存在,同样地,它也保护了 Linux 免受软件专利的影响。

*开放创新联盟(OIN)成立于 2005 年 11 月,OIN 成立时获得了谷歌、IBM、NEC、飞利浦、索尼、SUSE 和丰田等企业的大力支持。它旨在确保开放源码的专利权,让 Linux 平台能持续发展,同时也可望提升专利的品质,淘汱不良的专利,是史上最大的专利保护社区,支持开源软件 (OSS) 关键元素 Linux 的自由开发环境。
近年来,其成员范围不断扩大,我国的华为、腾讯、小米、哔哩哔哩等公司都已加入。加入 OIN 社区的组织都能以免许可费的方式获得 OIN 专利许可和社区成员交叉许可。

谁控制着 OIN?

OIN 拥有投票权的成员是一些世界上最大的专利拥有者:谷歌、IBM、NEC、PHILIPS、索尼、丰田...... 当然,其中的 SUSE 算是个例外。这些大公司的利益受到版权制度的保护,让他们从“开源”中受益。

 

此外,我们几乎没法抵抗专利带来的威胁。

1)在这些专利垄断者的面前,我们无法建立去一套有效的防御措施。甚至,我们无法用我们自己的发明去申请专利。

2)对于不奉行专利这一套的个体或团队,OIN 无法提供任何有效保护。

3)我们也支付不起上法庭以保护自己权利的费用,如果我们不通过“行乞”或者求助大型法律机构的方法的话。

你想通过许可证来满足这个需求,你先得保障你能有效地实施这个许可证。这意味着你需要有能力起诉侵权者。否则,还不如将你的软件放在公共领域,反正不管怎样它都会发挥应有的作用。

自由/开源软件开发者支付不起这个诉讼成本。

 

06 开源合规性是一把烂摊子

 

在“开源”这个范式中,没有强调和针对合规性。结果是,合规性的实施变得昂贵,不少尝试去做这件事的人都被劝退了。

企业使用的合规性工具十分“恶臭”。

类似 WhiteSource 这样的工具不会费力去辨认其他源代码中会不会有哪怕一小段代码是来自开源软件的。在其营销理念中,扫描检测是个坏主意。这个工具才不会告诉你你的工程中是否存在任何与开源项目相关的源代码。

*WhiteSource 是管理开源组件的一站式安全、许可和质量的解决方案。它可以准确检测所有开源许可,包括库的许可,自动化强制实施在新加组件上的许可政策。用户因此可以阻挡不期望的组件进入自己的软件。

Black Duck 和 Revenera 是个更好的选择,但它们十分昂贵。就我个人经历而言,这些工具无法很好地处理大型产品的扫描需求。

* Black Duck 是管理使用开源软件风险的工具;而 Revenera 是管理开源许可证合规性和安全性的工具。

在公司的软件架构中部署 Black Duck 或者 Revenera,需要花费整整一年时间,因为扫描功能日常运作之前会涉及到软件分类、定义开源软件以及错误结果处理等。一年的时间去部署,可是非常奢侈的。

 

07 太多太多的许可证了

 

大多数新兴的开源许可证没有什么价值,它们的价值都不能抵消其成本。

许多已经通过(OSI)认证或者候选的许可证,并没有站在用户或开源开发者的利益立场上。其中大多数都被设计用来支撑单一的开发主体,去让创造它的公司受益。

许可证认证走在错误的方向上。

目前的 OSI 董事会政策正在将开源许可证扩展为“综合”源码,越来越多的许可证被采用和认证。这代表了谁的奶酪?我能吐槽 OSI 的问题一整天,现在我只说最糟的地方是:

1)OSI 接受了太多有问题的许可证了,他们甚至还想加快速度去认证更多的!

2)OSI 成立了一个委员会以替代 OSD。

3)取代 OSD 这样一个优秀的范式以代之一个独立、全新的,是个馊主意。在运作 22 年以后,再去改变“开源”,会让很多人感到失望,还会潜在地扼杀“开源”这一金字招牌。

*2020 年 1 月,在认定 OSI 不尊重自由之后,Bruce Perens 提出辞职。
 
2019 年,律师 Van Lindberg 代表分布式开发平台 HoloChain 起草了一个名为“密码自治许可证(Cryptographic Autonomy License,CAL)” 的软件许可证,并将其提交给开源促进会 OSI 审批。
当时,关于是否批准 CAL 许可证引起了 OSI 内部的争论。据说,起草 CAL 的律师 Van 游说了 OSI 董事私下批准 CAL,而这违反了应该在公共场所进行批准程序的规则。
 
这件事也成为了 Bruce Perens 离职 OSI 的导火索。

 

Bruce Perens 的一点建议

 

“开源”的问题越说越多。最后,Bruce Perens 向我们描述了一种非常梦幻的“开源理想国”—— 建立 Coherent Open Source (LicenseUse.org)以取代 OSI,成为新的推进开源者。

在他的构想中,Coherent Open Source 应该:

1)只保持 3 种具有重要特征的许可证,未来只在需要的时候去更新这 3 个许可证的内容即可。所有的 The Coherent Licenses 都:

通过 OSI 和 FSF 双认证;
互相彼此兼容;
每一个许可证都包含一条针对专利的条款;
每一款都针对不同的商业目的;
至少有两种是被商业公司所接受的。

而他认为有必要留下来的 3 个许可证分别是:Apache 2.0、LGPL3 和 AGPL3。这样就可以减少许可证的复杂程度,使得开源许可证互相之间的适配,让合规操作更简单。

2)保持传道工作,去完成那些开源和自由软件没有达成的目标,那些美好且理想的目标,比如自由。

3)去中心化的委员会,减少官僚性质的机构。

4)让开发者赚钱!并不是说让开发者起诉侵权者来赚钱,而是代表自己来获得经济收入,而不需要“行乞”。

查看演讲完整内容可戳:https://www.youtube.com/watch?v=vTsc1m78BUk
展开阅读全文
  • 0
    感动
  • 0
    路过
  • 0
    高兴
  • 0
    难过
  • 0
    搞笑
  • 0
    无聊
  • 0
    愤怒
  • 0
    同情
热度排行
友情链接