
经过多年的阅读此类帖子(包括我自己的一些帖子),我知道了公式:每个人都使用开源,一些开源是由难以支付租金的独立维护者编写的,这使我们都处于危险之中,因此必须改变。
但是,“必须改变”往往演变成依赖于“小费罐”零工经济的“解决方案”,云原生计算基金会(CNCF)首席技术官Chris Aniszczyk正确地质疑了这一点。开源贡献者需要为他们的工作获得报酬。代码和祈祷支付计划是稳定薪水的糟糕替代品。数字化转型网szhzxw.cn
这也是现实的糟糕替代品。开源的现实——至少,你和我每天使用的大多数主流、流行的项目——是开发人员通过编写代码获得报酬。并非总是如此,并且有广为人知的例外,但回到 2008 年的 GNOME 项目,大多数开发人员都是付费贡献的。快进到今天,大多数为 Kubernetes、Redis、Linux 等做出贡献的开发人员也得到了报酬。数字化转型网szhzxw.cn
然而,他们背后的公司可能并非如此。这是一个问题,因为获得报酬的公司越多,开发人员获得报酬就越多。您想要可持续性吗?付钱给赞助开发者的公司捐款。让我们使用流行的 Flux 项目作为新兴示例。
一、回到未来
Flux 是一套流行的 Kubernetes(以及 Terraform 等)持续和渐进式交付解决方案,最初由 Weaveworks 公司创建。尽管Weaveworks仍然是Flux的主要贡献者,但该项目现在是一个渐进的CNCF项目,邀请了更多的外部贡献。将Flux推向CNCF可以说对社区有利,但对Weaveworks有利吗?
“谁在乎?”你可能会问,答案很简单:你应该。数字化转型网szhzxw.cn
Weaveworks 是最早在生产中推出 Kubernetes 的公司之一,为大型软件即服务 (SaaS) 应用程序的后端服务提供支持,开发 Flux 来实现这项工作。这是令人印象深刻的代码,可让用户在部署过程中实现自主操作。数字化转型网szhzxw.cn
如果Weaveworks不做这项工作(或者付钱给开发人员做这项工作),没有人会这样做。没有Weaveworks,Flux就不存在。“但谁在乎!?”你反驳道。“我们现在有了,社区将继续!”对于那些相信金钱和开源生长在树上的人来说,我有一个坏消息。开源的可持续性不仅仅是个人的问题。这确实是一个公司的问题,因为公司倾向于雇用开发人员来编写开源软件,而公司最愿意向其他公司支付软件费用。当Flux 2.1在几周前发布时,它立即获得了超过500,000次下载。这代表了很多人(和他们的雇主)依赖 Flux 来提高 Kubernetes、Terraform 等的工作效率。它是如此受欢迎,以至于Microsoft Azure将其构建到他们的Kubernetes产品中,GitLab,AWS(EKS Anywhere),阿里巴巴等也是如此。你可能会认为所有这些公司都会排队支付Weaveworks,CNCF或其他人,以确保Flux的开发和维护继续下去,但根据我的经验,这不太可能。数字化转型网szhzxw.cn
这就是为什么HashiCorp和其他公司(包括我的雇主MongoDB)一直在寻找保持产品开放的方法,同时阻止一小类但功能强大的用户,这些用户可能对主要项目开发人员的持续开发能力产生巨大的负面影响。
二、保持开源开放
如果你看看CNCF内部的项目,它们要么是由企业贡献者社区(如Kubernetes)驱动的,要么是由单一供应商驱动的(Apache软件基金会也是如此,尽管ASF积极试图阻止单一供应商的控制,并且大多成功了)。Flux,Apache Kafka,Linkerd和其他人都属于后一个阵营。数字化转型网szhzxw.cn
对于大型云和其他云来说,这实际上是一件好事:当您有功能请求或需要支持时,与公司合作比与单个开发人员合作要容易得多。但是,当这些相同的云(或其他)供应商转向像人工智能这样闪亮的新事物时会发生什么?它让像Weaveworks这样的公司(或Linkerd的Buoyant)进行差异化的繁重开发工作,以便软件可以在企业范围内受到信任。
无论新事物多么酷,客户都将运行无聊的旧事物数十年,这意味着必须有人付钱给开发人员来维护和发展该软件。数字化转型网szhzxw.cn
三、那人怎么不是你?
对于客户依赖Flux和其他开源项目的主要云提供商来说,与项目发起人没有财务关系应该是一种可解雇的罪行。这是一个巨大的供应链风险。越来越多的开源公司(如HashiCorp)可能会更改其许可证,阻止云提供商和其他公司围绕其代码销售服务。数字化转型网szhzxw.cn
就Flux而言,Weaveworks已经失去了重新授权的能力,但如果Weaveworks无法再在财务上维持开发,会发生什么?Microsoft、AWS、谷歌或其他公司会介入资助这一切吗?他们还没有。为什么我们期望它们会神奇地开始?如果不合作和贡献,这些供应商可能会增加服务客户的成本。
只要问问AWS,它发现分叉Elasticsearch比简单地在AWS平台上实现Elastic的成功成本更高。(OpenSearch分叉取得了成功,但它要求AWS聘请一个相当大的工程团队,以及其他费用,如品牌推广、社区发展等。我认为支付更多开源开发人员的关键是支付更多的公司。数字化转型网szhzxw.cn
也不仅仅是编写代码。一个成功的开源项目,尤其是一个具有企业吸收和持久力的项目,需要在测试、错误报告支持、分类文档、网站、社区等方面进行大量投资。所有这些在公司内部都更容易,但公司必须获得报酬。Envoy的创建者Matt Klein多年前告诉我,如果他知道构建和运行一个开源项目有多难,他可能永远不会开始。更令人担忧的是,所有那些决定无法继续下去的开发商和公司。数字化转型网szhzxw.cn
所以我再说一遍:在像 Flux 这样的开源项目上建立业务而不确保其长期可持续性应该是一种可燃的罪行。当然,对于开源维护者来说,这是一件好事,但这是正确的,甚至是为您的客户做的必要事情。
英文原文:
A new way of thinking about open source sustainability
Go beyond paying developers to maintain the software your business depends on. Pay the companies that pay the developers and watch the whole ecosystem thrive.数字化转型网szhzxw.cn
Another day, another article about open source sustainability. After years of reading such posts (including some of my own), I know the formula: Everyone uses open source, some open source is written by solo maintainers who struggle to pay the rent, which puts us all at risk, so that must change.
But too often that “must change” devolves into “solutions” that rely on a “tip jar” gig economy that Cloud Native Computing Foundation (CNCF) CTO Chris Aniszczyk rightly questions. Open source contributors need to get paid for their work. Code-and-pray-for-pay schemes are a poor substitute for a steady paycheck.数字化转型网szhzxw.cn数字化转型网szhzxw.cn
It’s also a poor substitute for reality. The reality of open source—at least, most of the mainstream, popular projects you and I use every day—is that developers get paid to write code. Not always and there are well-publicized exceptions, but rewind to the GNOME project back in 2008 and most of those developers were paid to contribute. Fast forward to today and most developers contributing to Kubernetes, Redis, Linux, etc., are also getting paid.数字化转型网szhzxw.cn
The companies behind them, however, may not be. This is a problem because the more companies get paid, the more developers get paid. You want sustainability? Pay the companies that sponsor developers to contribute. Let’s use the popular Flux project as an up-and-coming example.数字化转型网szhzxw.cn
Back to the future
Flux is a popular set of continuous and progressive delivery solutions for Kubernetes (as well as Terraform and more), originally created by the company Weaveworks. Although Weaveworks remains the primary contributor to Flux, the project is now a graduated CNCF project, inviting more external contributions. Pushing Flux to the CNCF is arguably good for community, but is it good for Weaveworks?
“Who cares?” you might ask, and the answer is easy: You should.数字化转型网szhzxw.cn
Weaveworks was one of the first companies to roll out Kubernetes in production to power back-end services for large software as a service (SaaS) applications, developing Flux to enable this work. It’s impressive code that gives users autonomous operations as part of their deployment.
Nominations are open for the 2024 Best Places to Work in IT
If Weaveworks doesn’t do that work (or pay developers to do that work), no one does. Without Weaveworks, Flux doesn’t exist. “But who cares!?” you counter. “We have it now and The Community will carry on!” I have bad news for people who believe money and open source grow on trees. The sustainability of open source is not just a matter of individuals. It’s really a company problem because companies tend to employ developers to write open source software, and companies are most comfortable paying other companies for software.数字化转型网szhzxw.cn
When Flux 2.1 was released a few weeks back, it immediately saw over 500,000 downloads. This represents a lot of people (and their employers) dependent on Flux to be more productive with Kubernetes, Terraform, etc. It’s so popular that Microsoft Azure builds it into their Kubernetes products, as does GitLab, AWS (EKS Anywhere), Alibaba, and more. You’d think all of these companies would be lining up to pay Weaveworks, the CNCF, or someone to ensure Flux development and maintenance continues but, in my experience, it’s not likely.数字化转型网szh数字化转型网szhzxw.cnzxw.cn
This is precisely why HashiCorp and other companies (including MongoDB, my employer) have looked for ways to keep their products open while blocking a small but powerful class of users that can have a massive negative impact on the primary project developer’s ability to sustain development.
Keeping open source open
If you look at the projects inside the CNCF, they’re either driven by a community of corporate contributors (like Kubernetes) or by a single vendor (this is also true of the Apache Software Foundation, though the ASF actively tries to discourage single-vendor control and mostly succeeds). Flux, Apache Kafka, Linkerd, and others fall into this latter camp. This can actually be a great thing for big clouds and others: It’s much easier to work with a company than with individual developers when you have feature requests or need support.数字化转数字化转型网szhzxw.cn型网szhzxw.cn
But what happens when those same cloud (or other) vendors move on to a shiny new thing like artificial intelligence? It leaves a company like Weaveworks (or Buoyant in the case of Linkerd) to do the differentiated heavy lifting of development so that the software can be trusted at enterprise scale. However cool that new thing may be, customers are going to be running the boring old thing for decades, which means someone has to pay the developers to maintain and evolve that software.
Why isn’t that someone you?
For the major cloud providers whose customers depend on Flux and other open source projects, it should be a fireable offense to not have a financial relationship with the project sponsors. It’s a massive supply chain risk. A rising number of open source companies (like HashiCorp) may change their license, blocking the cloud providers and others from selling services around their code. In the case of Flux, Weaveworks has lost the ability to relicense but what happens if Weaveworks can’t financially sustain development anymore? Will Microsoft, AWS, Google, or others step in to fund it all? They haven’t yet. Why would we expect they’ll magically start?数字数字化转型网szhzxw.cn化转型网szhzxw.cn
By not partnering and contributing, these vendors risk increasing the costs of serving their customers. Just ask AWS, which discovered that forking Elasticsearch is costlier than simply enabling Elastic’s success on the AWS platform. (The OpenSearch fork is seeing success, but it has required AWS to hire a sizable engineering team, among other expenses such as branding, community development, etc.)
I think the key to paying more open source developers is to pay more companies. Nor is it just about writing code. A successful open source project, especially one with corporate uptake and staying power, requires heavy investments in testing, bug reporting support, triage documentation, the website, the community, and more. All this is easier within a company, but companies have to get paid. Envoy creator Matt Klein told me years ago that had he known just how hard it would be to build and run an open source project, he likely never would have started.数字化转型网szhzxw.cn
Even more worrisome are all those developers and companies that decide they can’t afford to continue. So I’ll repeat: It should be a fireable offense to build businesses on open source projects like Flux without ensuring their long-term sustainability. Sure, it’s a good thing to do for the open source maintainers, but it’s the right, even the essential thing to do for your customers.数字化转型网szhzxw.cn
本文由数字化转型网(www.szhzxw.cn)转载而成,来源于数智化转型网;编辑:数字化转型网默然。

免责声明: 本网站(http://www.szhzxw.cn/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等) 版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。
