- 原文地址:The Open Source Conundrum: How Do We Keep the Lights On?
- 原文做者:Eric Berry
- 译文出自:掘金翻译计划
- 本文永久连接:github.com/xitu/gold-m…
- 译者:lihanxiang
- 校对者:yangxy81118、swants
开源软件 (OSS) 在当今复杂的发展生态中有着不可胜数的标准。在此文中,它的定义是:源代码发布,以及全部与之相关的修改都必须按照与原始软件所持有的开源许可证一致,而且支持免版税发布的程序。在此基础之上,咱们来探讨一下 OSS 所面临的挑战。前端
自从互联网出现以来,OSS 已为科技界贡献了巨大的价值。经过在普遍的社区中共享源代码,应用程序能够在[软件开发周期]中(stackify.com/what-is-sdl…)更快、更低成本地迭代。分享出来的源代码还可做为无数其余项目的启动平台,从而节省了从头开始的时间和费用。android
但,OSS 的盈利是呈指数级低于专有软件开发的。鉴于 96% 的应用程序都具备开源组件,这就具备些许讽刺意味了。此外,这些应用程序的代码库中平均含有 57% 的开源代码。这些数字代表,在这个生态中存在严重的脱节。虽然最终用户得到了巨大的价值,但那些贡献者们却没有获得对应的报酬。ios
可是,OSS 到底具备哪些价值?基于 6 年前 Black Duck 的计算值,当今全球开源软件的综合价值可能超过 387 亿美圆。git
来源:2018 年开源安全与风险分析github
你可能会纳闷:为何有开发者在专有软件开发更有利可图的时候,选择参与 OSS 的工做。那么,到底是什么促使着开发者一直在为开源项目工做?与由对后果的恐惧以及对奖励的渴望所驱动的外在动机不一样的是,OSS 的向前推进是由开发者的内在因素促成的。后端
开源工做者将推动项目做为一项自我投资的爱好,他们乐在其中而且享受从中学到的知识,抑或是他们想为世界做出本身的贡献。这种利他主义推进者人们将利益抛诸脑后,与以盈利为主的专有化应用开发造成鲜明对比。安全
对于那些在开源中不断贡献的利他主义开发者,一般会被定义为是参与者。工具
做为程序或应用开发的贡献者,他们的主要贡献可能包括漏洞修复,功能开发,文档撰写以及语法纠正。区块链
这一类别的人员主是推动项目版本,以及管理程序组件的参与者。他们的主要任务是进行漏洞分类,检查 pull requests (PR) 以及指导整个项目。这是一份一般是不被大型社区所承认的,但又须要持续投入的工做。网站
大多数人都没有意识到的是,在全部的 OSS 仓库中,有 65% 的卡车因子为 2。卡车因子反映了在一个项目中变为不可持续的时候(被卡车撞上或赢了彩票等等),其开发者所离开的数量。这描绘出了开源生态以及其将来可行性的不稳定图景。Semantic UI 就是一个再也不可持续的项目,他的惟一开发者如是说:
“我在花费了三年的业余时间,投入于 OSS 的工做。在不影响软件功能的前提下,我找不出任何的方法来完成。不幸的是,这就意味着我必需要推迟开发进度直到我获得合适的融资来完成它。”
OSS 对于大型社区来讲或许表明着免费,可是对于开发者和维护者来讲,他们将以最少的资源来应对用户需求的冲击。去年,为了引发人们对这种趋势的重视,有 100 人汇集在旧金山,致力于改变咱们对于开源软件可持续发展的见解。
在他们的最终报告中,这个群体重申了一小部分人员是如何在没有资金支持以及合同义务的状况下,支撑起了 OSS 的关键部分。其结果是,少数人的善意再也没法知足 OSS 生态日益发展的需求。因此,该如何解决这一困境呢?看上去容易,可是须要引入一个新的概念。
用奖金鼓励开源
恰如 Gitcoin 和 CodeFund 正在作的同样。虽然策略不一样,但最终目标是一致的 —— 探索如何更好地进行开源。
当涉及到 OSS 开发时,有几种机制还待探讨。虽然有些已尝试过,但其它的或许是更优解。每种方式都有其优缺点,可是最终目的都是为了更好地促进开源。
捐赠是一种较为直接的方式,开发者可以向他人寻求资金帮助以用于项目开发。捐赠的方式包含了补助、赞助、捐赠按钮以及创建基金会。虽然捐赠的方式提供了一个较低的门槛,而且可以使得开发者专一于代码,但这种方式有着巨大的缺陷。
例如,若是没有持续的积极筹款,捐赠的数额就将会减小。另外,若是项目的受众不够普遍,开发者就没法吸引足够的注意力来得到资金赞助。
支持 Support
开发者可以经过这种方式,来出售服务时间、教程和商品等。当选用这种方式自助项目时,开发者可以提供为最终用户提供相关书籍、付费培训、商品,甚至是咨询服务。这种方式可做为一种实际的营销工具,同时可以让开发者清楚的了解到最终用户在整个项目中的需求。
可是,小型的 OSS 项目可能很难从这种资助方式中获益,由于它们没有足够大的用户基数。同时,付费培训的需求相对较少,这种以用户为中心的方法可能会占用编写代码的宝贵时间。
许可证和使用权
项目全部方能够这种模式出售相关许可证、特性以及付费托管。在这种方式下,开发者可能寻求风险投资、著佐权、open core、SaaS 以及受限的许可机会。若是成功,这种模式有望具备可伸缩性以及提供全职收入。
虽然这是一个有但愿的选择,可是小型的 OSS 项目碍于受限的用户群体和曝光程度,或许不会从中受益。 这种方式也可能十分耗时,而且须要很强的创业精神,这对一些开发者来讲,是一个具备挑战性的选择。
在同一个体系模式下,开源基金存在着明显的共性。这些是 CodeFund 和 Gitcoin 已经着手开发的领域。
众筹(Crowdfunding)
众筹包含一次性或持续的捐款。在使用这种融资模式时,附加的条件较少。经过几个专门为此目的而设计的平台,好比 Patreon、Liberapay、Open Collective 和 Flattr,管理起来也较为容易。
虽然很吸引人,可是持续的众筹是很难实现的,由于大多数人不想持续投入。众筹所得到的资金,也少于其余方式,一般不适用于用户群体和曝光度受限的小型 OSS 项目。
奖金(Bounties)
奖金可以为那些愿意为开源作出贡献的开发者提供了经济鼓励。奖金计划具备高度包容性,以此利用全球的人才库。同时,特定的项目指标直接与奖金挂钩。这种透明化的过程,可以为参与其中的开发者带来全职工做。Gitcoin 就是一个提供这些好处的奖赏平台之一。
虽然奖金数额较大,但也有一些须要注意的。奖金计划通常只提供给开发人员最低级别的奖励,而且一般是一次性的。Bug 奖金一般还要求得到者具备专门的安全技能来应对工做。
广告(Advertising)
在全部的融资方式中,广告是最稳定、最持久的收入来源,可是在采用这种方式时,还有几个因素须要考虑。
最重要的是,要确保广告的合理性,以及普遍的受众群体。使用广告进行推广项目的开发者还须要考虑潜在的信任缺失以及参与营销的道德问题。若是所展现的广告和项目有所牵连,也有可能产生利益纠纷。
为了应对这些挑战,CodeFund 正致力于消除与开发者广告相关的道德困扰。CodeFund 旨在帮助开发者在一个值得信赖且声誉良好的环境中得到被动收入,创建一个道德广告平台。
开源软件在长期以来一直被视为是无数高端应用程序的发源地。然而,在专有软件持续收入达到数十亿美圆以后,OSS 却由于资金不足而精神萎顿。若是要开源在将来保持良好的可持续性,这种状况须要发生改观 —— 这是重中之重。
接下来,这个由 OSS 维护者和贡献者所组成的小型社区须要变得健壮,而且得到足够的资金支持。若是咱们不认可,那些支撑着开源社区的人肩负的重大责任,那咱们都将承担后果。有前途的项目将会被取消,优秀的开发者将涌向专有软件开发,曾经产生巨大创新的生态将不复存在。
但咱们如今尚未丢失一切,咱们能作的就是尽一份力让这份善意持续。虽然开发者必需要为他们的项目拉取赞助,但咱们须要改变对 OSS 的见解。尽管开源看上去是免费的,但这是精疲力竭的开发者耗费无数小时所得的产物。
了解一下 CodeFund 是否能为你的博客、应用或网站提供资金帮助!
若是发现译文存在错误或其余须要改进的地方,欢迎到 掘金翻译计划 对译文进行修改并 PR,也可得到相应奖励积分。文章开头的 本文永久连接 即为本文在 GitHub 上的 MarkDown 连接。
掘金翻译计划 是一个翻译优质互联网技术文章的社区,文章来源为 掘金 上的英文分享文章。内容覆盖 Android、iOS、前端、后端、区块链、产品、设计、人工智能等领域,想要查看更多优质译文请持续关注 掘金翻译计划、官方微博、知乎专栏。