暴风:为了阻止云巨头,一些开源软件公司开始限制开源许可。
最令人担忧的是,软件公司正在采用新的许可条款,以防止他们认为的来自云提供商的不公平竞争,特别是来自亚马逊网络服务公司的竞争
开源开发者一直在努力开发基于自由软件的可持续商业模式,这是最新的进展。开源改变了软件行业,但只有少数公司能够继续盈利,比如Red Hat Inc Red Hat本身可能在最近宣布的交易中被IBM Corp收购。
上周,Confluent Inc宣布对其产品线中的一些产品进行许可变更,明确禁止云提供商将其软件作为服务提供,这进一步加剧了这场辩论。Confluent是Kafka流处理平台的主要开发者。该公司此举是对AWS上个月宣布将出售Kafka服务的回应。
Confluent的转型遵循了MongoDB Inc .和Redis Labs Inc .早些时候发布的云竞争对手的新许可条款。这些举措在开源倡导者中引发了一场几乎是宗教般的辩论。争论的焦点是云计算公司是否应该利用一些人所说的许可条款的漏洞从自由软件中获益。
在此期间,亚马逊成为众矢之的,因为这个云巨头出售了许多基于开源代码的服务,但被认为对开发它的社区项目贡献甚微。
亚马逊的策略是“我在软件行业见过的最糟糕的行为,这都是因为许可证的漏洞,”MariaDB的首席执行官迈克尔·霍华德说,Maria db也销售基于开源的软件。霍华德指责云巨头利用一个免费开发社区的开发者的作品“公然挖矿”。
其他人,包括一些强大的开源支持者,不同意这种说法,称不存在漏洞,云公司也没有违反任何许可条款。
MapR Technologies Inc .的首席应用程序架构师特德·邓宁(Ted Dunning)说:“当你送礼物时,总会有风险,其他人可能会获利一百万美元。”MapR Technologies分发开源和专有软件。“不管是觉得生气还是觉得真的很酷。”
亚马逊表示,它完全遵守所有许可条款。一位发言人说:“如果一家公司想获得围绕源代码建立业务的独家权利,他们应该关闭源代码,使其成为专有的。开源软件应该保持开放,不受许可证的限制,因为许可证会让它变得更加累赘。”
Forrester Research副总裁兼首席分析师杰弗里·哈蒙德(Jeffrey Hammond)补充道,尽管亚马逊在历史上并不是开源的强大贡献者,但它的态度正在发生变化。他指的是亚马逊Corretto,这是一套免费开放的Java开发工具包和套件,可以实现“无服务器”计算的轻量级虚拟化服务,该公司在上个月的re: Invent大会上首次推出了这项服务。
哈蒙德说:“我听到的对亚马逊的批评和我五年前听到的对微软的批评没有什么不同。看看微软是如何发展的。我不认为亚马逊有任何理由不慢慢开源以满足公司自身的利益,这与公司批评他们最近的许可变化没有什么不同。”
但批评人士表示,亚马逊如此强大,可以有效阻止开源竞争对手推出竞争性服务。他们说这对更广泛的开源社区的影响可能是毁灭性的。MariaDB的霍华德说:“开发者会说,‘我甚至不会在开源下开发,因为AWS会把它从我这里拿走。’”"
关于衍生品的争论
有争议的是,大多数开源许可证都有一个相同的条款来管理“衍生作品”或从开源代码修改的软件。如果开发人员销售或* * *享受衍生软件,许可证通常要求这些修改贡献给社区。
但是,不打算公开发布的修改除外。本质上,只要软件还在你的电脑上,你就不必* * *享受你所做的任何改变。
云计算公司技术上可以不发布代码。他们的作品作为服务被消费,代码从不易手。这使得他们没有必要与社区分享变化,从而使他们能够有效地从其他人的工作中获得独家优势。比如亚马逊的Aurora MySQL就是基于GNU公共许可证覆盖的开源MySQL数据库管理系统。
人们一直在试图解决这种不平衡。最引人注目的是Affero通用公共许可证,它是GNU GPL的一个广泛使用的变体,要求提供软件作为服务的组织为用户提供下载修改后源代码的选项。
但是AGPL和其他类似的许可在开源世界并不流行。AGPL是“迫使更多软件开源的一种方式”,邓宁说,他目前是管理流行的Apache 2许可证的Apache基金会董事会成员。
“但这不是阿帕奇的议程,”他说,并指出他的观点只是他自己的,并不代表阿帕奇基金会。"他们的目标是提高软件的趣味性."
这种差异看似微妙,但它显示了开源倡导者正在他们对自由软件的承诺和软件公司及其投资者赚钱的日益增长的动机之间走钢丝。
一方面,在开源产品上建立业务可以产生收入,这些收入可以返回到进一步的开发中。Confluent的联合创始人兼首席执行官杰伊·克雷普斯(Jay Kreps)在一篇博客文章中宣布了许可变更。
“许多人纯粹出于热情在深夜进行小额捐赠,但现在他们可以通过全职工作获得报酬,”他写道。在筹集超过8000万美元以实现建立一家盈利公司的目标时,他补充说,“Confluent不仅可以资助代码贡献者,还可以资助大型云计算项目,以运行大规模分布式系统的严格测试,这对于保持代码库稳定是必要的,同时扩大不断增长的社区的贡献。”
改变规则
在这场争论中,很少有人质疑开源企业赚钱的权利。问题是改变许可条款是否是解决问题的方法。
参与当前辩论的三家公司对这一过程有不同的看法。
Redis Labs将其部分代码转移到“公共条款”许可中,该许可禁止第三方收取费用或提供从其软件中获得大量价值的服务。Confluence采用社区许可,禁止以“与提供软件的Confluence产品或服务相竞争”的方式交付Kafka。MongoDB选择的是服务器端公共许可证,它要求任何提供其软件即服务的人都要提供其修改后的支持代码作为开源代码。
两年前,MariaDB采取了另一种策略。它创建了一个商业源代码许可证,允许开发者在将他们的作品发布到开源平台之前,在长达三年的时间里从他们的作品中获利。霍华德说:“BSL不是封闭的,因为BSL的每一个产品都回归开源。它延迟了影响。”
一些人担心新的许可选项的激增,称这种趋势肯定会扰乱过去30年来对几种基本许可模式达成理解的市场。
Red Hat Inc .的高级商业法律顾问Richard Fontana说:“我担心任何会模糊由社区定义的开源领域边界的事情。虽然我有点担心云提供商在做什么,但我更担心Redis、Confluent和MongoDB的反应。”
丰塔纳说,他特别关注使用开源条款来定义真正排他性许可的合同语言。例如,“工* * *”是一个术语,表示所有人都可以使用的资源,例如空气和水。
但他表示,Redis所谓的“公开* * *条款”并不是我们理解中的“公开* * *”。它旨在通过对标准开源许可证附加限制来控制软件。这恐怕会让开发者很困惑。
但有人说,授权条款必须随着时代的变化而变化,这个过程必然是混乱的。Cloud Foundry Foundation的执行董事艾比·卡恩斯(Abby Kearns)说:“公司将采取任何他们可以采取的角度来建立他们的业务。为了在此基础上建立可行的业务,您有权更改授权。”
柏林开源工作流自动化软件开发公司Camunda Services GmbH的联合创始人兼首席执行官Jakob Freund同意这一观点。他说:“确保承担开源项目最大份额的公司不会被少数垄断者挤出市场,符合开发者群体的利益。我不确定我们现在看到的每一项措施是否都是实现这一目标的最佳方式,但整个行业可能需要试错才能搞清楚。”
寻求利润
问题的关键在于,企业家一直在试图建立基于自由资产的可行企业。在众多尝试过的商业模式中,最成功的是赠送功能产品,出售专有的面向业务的扩展,这些扩展将提供团队合作、工作流和变更管理等功能。这是Redis,MongoDB,Convernte同样的策略。
但这也是一种微妙的平衡。诀窍是让软件强大到足以创造口碑意识,从而促进广泛采用,最终吸引CIO的注意。
同时,开发者还需要留出足够的空间来增加附加值,以吸引公司高管为此开支票。Dremio首席营销官凯利·施蒂曼(Kelly Stirman)表示:“这是一种微妙的平衡,因为如果开源产品瘫痪,那么人们就不会想使用它。”
另一种越来越受欢迎的方法是出售托管服务,以减少客户安装和管理复杂软件的麻烦。但这种策略对开源创业公司提出了挑战,因为主要云提供商几乎没有准入门槛。“开源采购是建立热情的好方法,但如果有人开始大规模运营,你就无能为力了,”Cloud Foundry Foundation的Kearns说。
Confluent和Mongo是被亚马逊逼入困境的,因为“它们提供的云服务与AWS提供的服务没有明显区别,”Stirman说。因此,“他们与AWS是‘敌友’关系。他们部署在亚马逊的平台上,同时相互竞争,”他说。“我真的很同情他们,因为在云服务上很难和亚马逊竞争。”
这些公司明白开发商可能会担心。Convergent的联合创始人兼首席技术官Neha Narkhede周四在另一篇公司博客文章中试图让他们放心,聚合产品的大多数用途都不会受到影响。
“我们尽可能狭隘地定义我们排除的目标,以实现我们的目标,”她说。“如果在这个领域有一个标准的解决方案,我们愿意考虑这个。”
卡恩斯的组织是基于另一个已经取得一些成功的模式。CFF和Linux基金会等非营利组织已经计划了一个品牌代码库,社区成员可以根据开源许可的条款使用这个代码库,只要他们不引入更改。这个过程叫做“分叉”。
基金会成员可以通过认证来证明他们的分配符合标准,这就创造了一个公平的竞争环境。基金会还鼓励所有成员做出自己的贡献。“每个人都喜欢开源,但不是每个人都想要回报,”卡恩斯说。然而,大多数开源项目不足以支持一个基金会。
更改许可条款不是一个没有风险的提议。邓宁表示,收紧限制可能会吓跑担心违反合同条款的用户。他回忆了几年前的经历,当时他对自己编写的一些软件实施了“非商业使用免费”许可。“如果有人想发财,我想分一杯羹,”他说。“然而,人们没有使用我的软件。”
目前还不清楚最新的进展是会让商业开源的前景更加明朗,还是会让事情变得更加复杂。但有一点是肯定的:可能需要数年时间来定义一种商业模式,以证明投资者投入股市的数十亿美元是合理的。