在GivingTuesday,Mautic项目--一个开源的营销自动化平台--分享了它的意图,即每年拨出部分预算来 资助它所依赖的其他开源项目,作为Back Your Stack倡议的一部分。
什么是Back Your Stack?
什么是Back Your Stack,以及为什么开源项目应该效仿Mautic的做法?
可持续性是开源项目的一个巨大挑战。
近年来,我们已经看到了一些案例,这些关键的工具实际上是在维持互联网和技术世界的运行,而这些工具是由极少数人维护的,有时是作为一种爱好而不是他们的全职职业。有时,只有当这些人决定受够了,停止维护或出售/转让给另一个组织来支持时,这种情况才会被发现。
Tidelift最近报告说,46%的开源维护者没有报酬。只有26%的人从他们的维护工作中获得超过1000美元的收入。同一调查还显示,约有一半的人感到没有动力、压力和价值被低估,因为维护这些项目所涉及的 "不辞辛苦的工作 "没有得到认可。
虽然有些项目和维护者可能真的不想为他们的工作获得任何资金,但绝大多数人都有各种渠道可以获得补偿,无论是咖啡的费用还是更多的捐款,一次或定期。
人们常常把矛头指向软件的最终用户,要求他们直接资助开源项目。然而,一旦一个开源项目有了任何重要的预算,我相信该项目有责任支持它所依赖的人--它的依赖者。
没有依赖者,开源项目就不能做它们所做的所有了不起的事情。即使每个每年预算超过5万美元的开源项目都决定以相对较低的200美元来支持他们的十大依赖关系,我相信维护者会从支持中发现巨大的好处,哪怕只是从被赞赏的士气上来说。
用开源工具识别依赖性
现在有一些很好的工具可以帮助你识别你所依赖的项目。
首先,如果你是一个基于 composer 的项目,你可以使用下面的命令来获得所有积极寻求资金的依赖项目的列表(这使用 composer.json 中的资金标记,所以如果你是一个寻求资金的项目,请确保你添加它!)。
$ composer fund
你也可以使用backyourstack.com通过你的GitHub组织识别依赖,或者上传依赖文件--他们支持package.json、composer.json、*.csproj、packages.config、Gopkg.lock、Gemfile.lock和requires.txt文件。
这给了你一个在Open Collective上的项目列表和一个你所有依赖关系的有用列表,然后你可以用它来研究资助机会。
我应该贡献多少?
你贡献多少取决于你的预算,以及你在 "必须支付 "的费用之外还有多少钱。
就我个人而言,我希望Mautic能达到10%,这样我们就能在一个基本水平上支持我们所有的依赖,但我们还没有足够的财政稳定性来达到这个水平。目前,我们分配了4%的预算来支持我们社区优先考虑的前10个项目--这并不多,但这是个起点。
但是我没有钱!
我明白你的意思。要达到有足够的资金来支持你的依赖项目是很困难的,那么在支持他们的方式上有什么创新呢?
- 组织一个文档群,让你的一些贡献者来改进你的一个依赖性的文档,这是一个回馈行动。
- 给一个项目提供反馈,通过分享你的项目中哪些地方做得好,或者你发现他们的项目中哪些地方有困难,来帮助他们改善贡献者的体验。
- 允许你的团队中的一个开发人员在每周的某段时间内从事依赖项目的工作。
- 在github.com/opensourced…上找到一个项目,在你的团队中指派一名设计师来帮忙。
在Tidelift的调查中,90%的维护者表示,他们寻求帮助的主要非经济方式是改善文档和改善新用户和贡献者的体验。
把你下一次会议或活动的门票收入的一部分捐给支持你的依赖关系,或者把它作为你的社区成员支付更多费用以支持你的依赖关系,怎么样?
有许多创造性的方法可以集体帮助开源项目变得更加可持续,通过这些方法,我们都会变得更加强大。
你目前在支持你的堆栈吗?你对支持你的堆栈有什么想法?如果你是一个维护者,如果人们在自己的产品或服务上依赖你,你对支持你的项目最有用的方式有什么想法?
欢迎在下面的评论中分享。