会员服务 登录 注册
×
资讯活动

开源正处于十字路口,以后怎么走?

发布时间:2024-05-13 来源:金属加工

开源软件正经历中年危机。开源贡献者们正在努力跟上步伐。流行的开源项目正在进行限制性许可变更。

后门威胁正在使开源供应链面临危险。而且,似乎没有人对“开放” 在人工智能背景下意味着什么有一个清晰的把握。

如果任由这种挑战的旋风肆虐,那么这将是一个可怕的前景。“如果开源软件消失,对我们生活的影响将是无法估量的,” Apache 软件基金会执行副总裁Ruth Suehle说。然而,这个全球生态系统已经开始出现裂痕,因为许多项目缺乏维持软件的基本资金,而这些软件实际上运行着世界。

就像濒临崩溃的脆弱气候一样,如果开源软件的生命之水开始枯竭,将会产生重大的连锁反应。“如果水循环中的一个环节中断,井水将无法得到补充,而依赖它的人们将遭受痛苦,”Suehle 说。

然而,一些开源维护者已经觉得他们别无选择,只能重新定位他们的软件许可证以维持生存。“当今的开源软件正处于一个临界点,” Buoyant 首席执行官William Morgan说。据 Morgan 称,开源贡献者和使用这些项目的公司之间出现了显着的不平等,这需要改变开源价值链的基本动态。

其他人则认为,对于一个几十年来经受过宏观经济不确定性考验的行业来说,今天的拐点并不是什么新鲜事。

“与开源软件过去面临的一些其他问题相比,这些紧张局势相形见绌,”Chainguard创始人兼首席执行官Dan Lorenc说。然而,他承认,该行业目前正处于一个重大的十字路口,在思考和消费开源软件的方式上。在这种环境下,其他技术领导者质疑开源模式是否仍然是一种有效的商业战略。

突然的许可变更

对于大多数开源用户来说,最重要的是最近一系列针对大量使用的项目的限制性许可变更,包括 HashiCorp 的Terraform、Redis、Elasticsearch和 Bouyant 的Linkerd。“去年许多大型开源项目中的许可变更让整个行业都感到惊讶,”Traceloop 首席执行官兼联合创始人Nir Gazit说。

突然转向更具限制性的许可证使用户质疑开源软件作为一个整体的寿命。“作为 Apache-2.0 存储库的开源维护者,我经常听到潜在用户表达这种担忧,”他说。

转向更具限制性的源代码不仅会影响个体开发者用户,还会影响围绕开源项目构建业务的公司。

Liz Rice 是 Isovalent 的首席开源官,也是云原生计算基金会和 OpenUK 的董事会成员,她也认为围绕重新许可的趋势对开源软件来说是一个紧迫的挑战。

她说:“虽然这些公司有权保护自己的商业利益,但重新许可在整个生态系统中引发了许多问题和担忧。”

开源许可的另一个定义不明确的领域是确定在人工智能领域中究竟什么是开源软件。例如,开放语言语言模型可以在专有资产上进行训练,从而使所有权变得复杂。“开源许可证通常假设软件 IP 存在于源代码中,”Neo4j 的首席技术官Philip Rathle说。“人工智能将此转移到了上游。”

没有免费的午餐

开源模式的最大问题在于,绝大多数免费使用这些项目的组织都不会积极回馈,无论是通过财务还是代码提交。相反,他们更有可能要求错误修复或扩展,给维护人员施加不应有的压力,让他们无偿工作。

正如摩根所描述的,“开源已经成为,正如布鲁斯·佩伦斯所说,一个‘伟大的企业福利计划’,受益者是微软、亚马逊和苹果等公司,他们通过开源获得了数十亿美元的收入,而慈善工作者则是维护人员和开发项目的工程师。”

AsyncAPI Initiative 创始人Fran Mendez表示,人们通常也不会意识到开源项目的社区管理是一项全职工作。这包括代码之外的任务,如设计、技术写作、营销、解决纠纷和维护行为准则。这些举措需要资金支持,但项目管理人员很少获得可持续的资金。

考虑 Lightbend 的案例,该公司最近更改了 Akka(分布式应用程序的 SDK)的开源许可证。正如 Lightbend 首席执行官Tyler Jewell所解释的,13 年后,该团队无法再在没有使用该软件的近 100,000 家商业组织公平贡献的情况下维护该软件。“我们改变了许可证模式,以便让我们能够更好地维持项目的维护和改进,同时仍然让绝大多数开发人员免费使用它。”

经济逆风

开源社区的困境无疑源于更大的经济环境。本世纪初的利率环境较低,洛伦茨认为这引发了开源公司和项目数量的大幅增长。但现在,我们正在经历重大的调整。“时间和金钱更加稀缺,这使得贡献者或公司更难分配资源,”他说。

“许多(但并非全部)开源企业都处于十字路口,”Fermyon 首席执行官Matt Butcher说。长期以来,理论是构建一个开源工具,建立一个社区,然后想办法将其货币化。但现在,处于最后阶段的公司面临着巨大的利润增长压力,他说。“对于一些公司来说,这意味着放弃开源模式。”

CNCF 首席技术官Chris Aniszczyk,解释说,缺乏证明开源合理性的资源也可能源于“过剩的财富”问题。由于有如此多的项目争夺关注,创新项目比以往任何时候都更容易失去所需的资源。“作为一个行业,我们应该考虑将精力集中在识别和维持关键的开源项目上,”他说。

运营不成熟

威胁开源的不仅仅是业务可持续性问题,还有不成熟的软件供应链管理实践。“不加考虑地采用项目,而不管如何维护或保护它们,只会延迟不可避免的痛苦,而我们今天就面临着这种痛苦,”洛伦茨解释说。

例如,网络威胁暴露了现代软件解决方案中固有的漏洞,Linux 基金会估计其中 70%-90% 是免费和开源软件。最近一次破坏性的攻击涉及攻击者向xz Utils提交恶意提交,xz Utils 是 Linux 中一个无处不在的开源压缩工具。

开源生存所需

开源基金会

首先,专家们一致认为,像 Linux 基金会和 Apache 软件基金会这样的开源基础机构将在稳定开源的未来中发挥关键作用。“我们从这个十字路口走上的道路很可能涉及更多捐赠给基金会的项目,”Rice 说。此类机构可以指导开放治理并制定规则以禁止重新授权,从而让开发者在将项目集成到其软件中时更加放心。

更公平的生态系统

其次,开源软件维护者将需要在资金和积极贡献方面获得更多支持以维持其项目。“我们现在需要的很多东西不是技术解决方案,而是协作,”Suehle 说,“尤其是来自依赖开源的组织。”

根据 Aniszczyk 的说法,这种协作必须超越 GitHub 赞助商和捐赠平台,这些平台实际上将维护者变成了零工经济工作者。Mendez 提出了一个未来模型,其中 Open Collective 为某些附加功能启用更类似于 Stripe 的结账体验。

有意的商业策略

并非所有内容都需要开源。因此,一个更可持续的开源生态系统将取决于仔细确定哪些内容应该是免费和开放的,哪些内容值得成为高级内容。对于 Butcher 来说,一个好的经验法则是开源个人开发者需要的技术,同时限制仅对大型部署或组织有用的高级功能。

新框架

传统的开源定义与快速发展的 AI 世界并不相符。“我们需要一个新的框架来适应所有这些细微差别,”Rathle 说。他强调了GenAI Commons的工作以及衡量 AI 模型中所有组件的开放性(例如基础数据集、预处理代码、模型架构和模型参数)的新许可证的重要性。

加倍重视安全性

“安全性不能在行业的任何地方成为事后诸葛亮,但这尤其适用于开源,在开源中,由付费贡献者和志愿者组成的分散社区独立运作,”Lorenc 说。他说,内存安全语言和默认安全设置可以在很大程度上消除大部分错误和攻击媒介。使用 SBOM 和漏洞扫描程序进行更好的库存管理也将是保护开源软件的关键。