最新发布《数智时代的AI人才粮仓模型解读白皮书(2024版)》,立即领取! 了解详情
写点什么

坐拥百万用户的开源项目没钱了,尤雨溪发推力挺被质疑的全职维护者

  • 2021-05-13
  • 本文字数:2956 字

    阅读完需:约 10 分钟

坐拥百万用户的开源项目没钱了,尤雨溪发推力挺被质疑的全职维护者

 近日,拥有百万用户的开源项目 Babel 宣布,尽管有 Airbnb、Facebook、Salesforce、Gitpod、GatsbyJS、Discord 和 Elastic 等企业的赞助,但由于花钱速度继续高于获取捐赠的速度,项目储备资金目前只够维持到 2021 年底。

 

项目创建者 Sebastian McKenzie 在 Twitter 上表示,造成现在局面的原因是资金分配不当:“有人拿了 13 万美元的年薪,而实际上没有在该项目上工作。”这也引起了广大开发者对项目贡献问题的讨论。

 

开源项目能否养得起全职成员?

 

Babel 是一个用于编写下一代 JavaScript 的编译器,可以帮助开发者在最新版本的 JavaScript 中编写代码,现已被集成至 JavaScript 生态系统中的 React、Next.js、Vue、Ember 和 Angular 等框架中,拥有数百万的用户,每月下载量超过 1.17 亿次。Babel 在GitHub也收获了 39,000 个星。

 

Babel 团队做了一项两年多的资金实验:开源项目是否可以养得起全职成员。但当前的 Babel 给出了答案:“很遗憾,现在可能不行。”

 

2018 年,在通过支持 Babel 项目的 Open Collective 基金获得一定报酬后,Henry 辞去工作成了 Babel 的全职工作人员。几个月后,Henry 每个月可以领到固定底薪 11000 美元。项目初期资金来源于 Handshake、Airbnb、Trivago、Gatsby、AMP 以及 Salesforce 的赞助。

 

2019 年 11 月,在成功向 Henry 支付了一年的薪水之后,Babel 全职团队又增加了三位成员:Huáng JùnliàngKai Cataldo 和Nicolò Ribaudo,这三人最初都是兼职做维护工作,每个月可以领取 2000 美元的报酬。

 

在早期尝试阶段,Babel 就清楚没有足够的资金向任何维护者支付全职薪酬。因此,Henry 一直通过在各类会议发表演讲、与企业用户交流等工作上投入大量精力,努力为项目获取持续的资金流。

 

Babel 表示,尽管科技行业在整个 2020 年获得了不错的发展,但新冠疫情的爆发还是让项目失去了几家大型赞助商,资金出现危机。Kai 不得不辞职,从事另一份全职工作。

 

各个项目都有独特的资金划拨思路与实际问题。Babel 表示自己当前的问题在于,就像大多数的构建工具一样,用户通常只需要一次设置就可以使用,不会直接与项目交互。虽然大部分主要 JS 框架都能与 Babel 相适配,但人才市场上并没有“Babel 开发者”这类岗位。

 

此外,随着 Next.js 等预配置框架的快速发展,用户已经不再需要亲自管理底层构建工具,这相当于把 Babel 与框架使用者彻底隔离开来。由于“存在感”不强,Babel 项目确实很难吸引到用户的关注,更遑论资金支持。

 


 年薪超 13 万美元却没有贡献?

 

但项目创始人 McKenzie 发表了另一种观点,并一度将矛头直接指向了 Henry。“有人拿了 13 万美元的年薪,但实际上并没有参与这个项目。”

 

McKenzie 现在拥有自己的 JavaScript 工具项目Rome,已经不是 Babel 的核心团队成员。McKenzie 表示:“在 2020 年,Henry 创建了 12 个议题,评论了 25 次,创建了 29 个 Pull 请求。很抱歉,这绝对不值 13.2 万美元,特别是还有其他贡献者在免费做更多的事情。”

 

McKenzie 的说法受到了另外一位全职维护成员 Ribaudo 的质疑,他在Hacker News上表示,仅仅查看 GitHub 并计算每个贡献者的提交数量并不能说明一个人工作了多少。Ribaudo 解释道,Henry 的大部分工作是宣传和筹集资金。“Henry 联系企业,说服他们支持 Babel。可能没有他也会有企业捐助我们,但我认为不会达到现在可以支付团队费用的水平。”

 

而 Vue.js 作者尤雨溪也驳斥了 McKenzie 的说法。他表示在一个项目中,不仅仅是提交文件,还要制定决策、管理团队、筹集资金,以及处理“我要为项目负责”的精神压力,这些都是为项目工作的内容。

 

尤雨溪为 Henry 辩护道:如果 Henry 当初没有在 McKenzie 离开项目的时候接管过来,Babel 早已死掉。实际上,Henry 也完全不需要这样做,他大可以找一份高薪的全职工作,但他还是选择了留下来,因为他认为这是正确的选择。“对于一个让 Babel 持续保持运转的人来说,13 万是一个很大的数字吗?我认为可能还不够。”


根据 Ribaudo 透露,团队内部已经讨论过薪资差异的问题,成员们认为确实应该重新评估薪资水平。Henry 薪酬之所以比其他人高,主要是因为他是当初唯一一个付费的捐赠者。

 

Henry 也承认自己更像一个维护者而非创造者。“我意识到我喜欢处理更多人际关系和社区方面的事,即使我不擅长。”他在去年表示。

 

现在,McKenzie 删去了此前在推特上的言论,随后发文表示自己意识到了一个项目中的非代码贡献的重要性,并为之前的言论道歉。

 

虽然出现了资金危机,Babel 表示仍将向剩下的三位成员每月支付 6000 美元的薪酬,以便继续改善项目。处于这次争论中心的 Henry 也愿意接受减薪,因为他认为这是“在目前的资金状况下可以让项目继续进行的唯一途径。”

 

Babel 表示未来仍会努力提高核心团队的薪酬水平。不过理想很丰满,但现实却很骨感。为了给到核心团队成员理想的薪资水平,Babel 预计每年至少需要 33.3 万美元,但该项目当前的收入只达到这个数字的一半。

 

现在,Babel 团队在通过 Open Collective 与 GitHub 赞助商渠道为项目征集资金,希望获得更多企业赞助者的帮助。Babel 表示,“越来越多的企业正在使用 Babel 工具进行产品交付,而我们只希望从项目创造的价值中获取一小部分来维持正常运营。” 

开源可持续性问题

 

Babel 项目的资金问题是很多开源项目都会遇到的问题,这也是影响开源项目可持续性的一个长期性问题。开源项目要可持续,需要一个成熟的商业模式,仅凭志愿者“用爱发电”难以长久。

 

在线开发工具公司 Gitpod 高级开发工程师、开源代码长期维护者 Geoff Huntley 表示,许多开发者由于兴趣和爱好自愿贡献代码,社区得以发展。但缺乏资金可能会使负责保持项目进展的开源维护者筋疲力尽。

 

“导致倦怠的原因之一是很多人正在执行自己不喜欢的任务和活动,根本原因是开放源代码是建立在自由劳动之上的。”Huntley 说道。

 

根据 Synopsys 发布的关于开源安全性和风险报告,每个商业应用的开源组件数量从 2016 年的 84 个跃升到了去年的 528 个。但实际上,开源维护者通过开发软件所获得的收入并没有随之增长多少。

 

在 2019 年,开发人员 André Staltz 从 Open Collective 和 GitHub 收集了相关数据来评估项目收入。结果显示,超过 50%项目的维护者维持收入连贫困线都达不到,而 31%项目的工资在业内被认为是不可接受的。

 


开源项目还没有找到成熟、可持续的发展模式。国外比较成熟的运转模式是一手社区开源,一手商业版本+咨询服务,这反映了开源项目的维护和运行仍需要资金的支持。

 

现在开源项目主要的资金来源还是捐助,而这部分来源的资金数量并不客观。以被成千上万个公司和应用程序使用的 OpenSSL 为例,OpenSSL 是一个完全靠其贡献者和捐赠者的自愿努力维持的项目,在 2014 年发生 Heartbleed 安全漏洞之前,OpenSSL 软件基金会每年收到的捐款为 2,000 美元,在安全问题引发关注后也仅新增了 9,000 美元,同时人们还发现该项目仅有一名全职开发人员。

 

同时,捐赠资金也有很大的不确定性,就像在去年企业收益下行的情况下,Babel 得到的捐赠也随之大量减少。

 

André 给出了开源项目受捐赠的最佳可持续点(相当于维持行业标准):一个受欢迎的项目、拥有足够小的团队,并知道如何从一群捐赠者或赞助组织筹集大量资金。但要同时做到这三点很难。开源究竟该如何可持续地发展下去是需要开发者们共同思考的问题。

 

参考链接:

 

https://babeljs.io/blog/2021/05/10/funding-update.html

 

https://www.theregister.com/2021/05/12/babel_money_woes/

2021-05-13 14:554757

评论 2 条评论

发布
用户头像
提到了OpenSSL 为什么不提罗永浩呢
2021-09-05 19:51
回复
用户头像
软件从来就不是用金钱可以堆起来的,靠的是信仰。开源项目也不例外。看看 linux 内核的开发就明白了。
2021-05-17 08:37
回复
没有更多了
发现更多内容

Docsify 配合 Github Pages 搭建一个自己的云笔记

宁在春

GitHub Pages docsify 7月月更

【刷题记录】9. 回文数

WangNing

7月月更

Docker入门(一)

神农写代码

阿里云架构师朱波:云上高性能计算加速药物研发

阿里云弹性计算

高性能计算 生命科学 EHPC

Java类的特性之内部类

未见花闻

7月月更

玩转Liunx系统,看这篇文章就够了(一)

Java学术趴

7月月更

王者荣耀商城异地多活架构设计

极客土豆

AI简报-GAN和CGAN

AIWeker

深度学习 GAN AI简报 7月月更

GPU资源池的虚拟化路径

Finovy Cloud

GPU服务器 显卡、gpu

中车*IoTDB | 构建城市轨道交通车辆智能运维系统,应对日百万人次客流量

Apache IoTDB

AWS CloudTrail

冯亮

云计算 DevOps AWS

超越对齐-企业数字化转型之路

涛哥 数字产品和业务架构

企业架构 数字化转型

研发效能生态完整图谱&DevOps工具选型必看

laofo

DevOps cicd 研发效能 持续交付 工程效率

密码密钥硬编码检查

华为云开发者联盟

安全 后端 密钥

长安链研究笔记-IOC容器

长安链

赛博女娲,怎么造数字人?

白洞计划

新星计划Day6【数据结构与算法】 链表Part2

京与旧铺

7月月更

静态广播发送流程分析

北洋

android 7月月更

开发前的开胃小菜之前端开发规范🍖🍖

猪痞恶霸

前端 7月月更

用 AnimatedBuilder 分离组件和动画,实现动效复用

岛上码农

flutter ios 安卓 移动端开发 7月月更

面试前我做了这三件事,结果居然直接....

KEY.L

金融行业的双模核心

穿过生命散发芬芳

7月月更 双模核心

Istio的流量管理API

阿泽🧸

7月月更 Istio流量管理

云上解锁Web3.0 阿里云XR平台助力彼真科技呈现沉浸式演唱会

阿里云弹性计算

XR 视觉计算 虚拟演唱会

容错、熔断的使用与扩展

神农写代码

老树开花——用ImageProcessor快速搭一个图床应用

为自己带盐

dotnet 7月月更

成都 Meetup|分布式数据库 企业降本增效新引擎

OceanBase 数据库

数据库 程序员 oceanbase 分布式, 降本增效

拔掉电源会怎样?GaussDB(for Redis)双活让你有备无患

华为云开发者联盟

数据库 后端

小程序表单-2

小恺

7月月更

浅入浅出mybatis(三)

ES_her0

7月月更

上海电信发布公共算力服务,联合华为等伙伴签订“智能算力应用联合创新中心”行动计划

Geek_2d6073

坐拥百万用户的开源项目没钱了,尤雨溪发推力挺被质疑的全职维护者_语言 & 开发_褚杏娟_InfoQ精选文章