我的开发者可否靠开源获利?

现在,开源软件已经成为了不少科技厂商选择的一种商业模式。谷歌、微软、亚马逊等全球顶尖的软件商业公司都有着本身的开源产业生态,红帽、Elastic、PingCAP 等专门围绕开源软件创业的公司也取得了不一样程度上的商业成功。前端

除了这些从开源中获利的商业公司之外,开源社区中还有着大量的我的开发者,而来自这些我的开发者的合理利益述求每每很容易被人们忽视。android

挣扎中的我的开发者

在开源社区中,有不少的我的开发者在积极地参与开源贡献,或是开源本身的我的项目,或是为其余项目贡献代码。不少人最初的动机仅仅是经过参与开源提高本身的技术,或是经过帮助别人得到心理上的知足,甚至是为了实现本身某个疯狂或有趣的想法顺便参与开源。他们都利用业余时间从开源中找到本身的价值。 redis

然而,当我的开发者在一个开源项目中的贡献达到必定的程度(成为项目维护者),或是我的的开源项目发展到必定的规模时(具备必定用户数量),就会面临来自用户的压力。这个时候,仅仅依靠业余的时间来应对日渐繁重的用户需求,每每会有些力不从心,甚至影响本来正常的工做和生活。 typescript

Jacob Thornton 是一位资深的开源开发者。2010 年,Thornton 与设计师 Mark Otto 共同创造了前端开发框架 Bootstrap 并将其开源 —— 任何人均可以未经许可以使用它,任何人均可以对其进行调整和改进。Thornton 表示,当初开源 Bootstrap 的动机也是受到经典开源精神的影响,他们认为这是一个很酷的挑战,它提升了他们在技术圈里的声誉,而且为人们提供帮助也让他们得到了成就感。随后,Bootstrap 的受欢迎程度激增,甚至连时任美国总统 Obama 的白宫官网也使用了他们的项目。“这是如此使人兴奋!”Thornton 说。但他们并无由于制做了 Bootstrap 得到任何薪水。 apache

随着 Bootstrap 用户数量的增加,Thornton 的业余生活也被大量来自世界各地的 PR 和 issue 淹没。“每周都有无数人给咱们写 bug 报告,对新功能的要求,issue 和好评。”Thornton 表示,在下班后本身每晚要花四五个小时疯狂地在 Bootstrap 上工做,包括管理查询、回复 issue、编写新代码等。“下班后我没法和家人朋友一块儿吃晚饭”,由于他担忧本身会让等待回复的 Bootstrap 用户失望。 后端

如此坚持不懈了近十年,Thornton 和 Otto 以及少数核心贡献者仍在维护着 Bootstrap,可是压力已经足够严重,以致于 Thornton 常常想到要放弃。 安全

事实上,大部分开源项目做者的境遇都与 Thornton 相似,项目管理者每每要比代码贡献者更苦更累。有一部分缘由是参与开源项目代码贡献的大部分非核心开发者每每只作出了很小的贡献,例如修复了某个 bug。而编写和从新编写代码须要对整个项目有足够的掌控力 —— 事实证实,大部分项目只有极少数的核心开发者具有这样的能力。前端框架

当这些核心开源贡献者的付出与收入不成正比,甚至由于繁重的无偿开源工做影响到了正常的工做和生活时,放弃就是一个不得已的选择。毕竟他们也是人,也须要挣钱养家糊口。研究代表,全部的开源项目中约有 9.5% 已经被遗弃,另外还有大约 1/4 可能接近被遗弃的程度。 服务器

若是说开源项目的做者或核心开发者尚且有项目自己带来的名誉加身,而那些仅仅是为开源项目贡献了代码的普通开发者得到的关注度则要更少,在项目的发展方向发生变化时,这些人的利益每每更容易被忽视。 app

来自英特尔公司的开发者 Thiago Macieira 是一名开源爱好者,他曾长期为 Qt 项目贡献代码。今年年初,Qt 官方正式宣布将 Qt LTS 版本全面转入商业化阶段,再也不向社区无偿提供稳定版本。这一变化让包括 Thiago 在内的 Qt 外部贡献者感到心寒,他们多年来出于热情向 Qt 贡献的代码被 Qt 公司当成赚钱的工具,本身却没有收到任何回报,甚至连免费使用稳定版 Qt 的权利都没有。Thiago 表示,至少对于他在 Qt 中处理过的代码,他不会再参与修复、评论和审查后端错误报告。

与拥有专业团队的商业公司相比,我的开发者想要从开源工做中获取收入的渠道至关有限,但对于一个相对健康的开源生态来讲,我的开源贡献者的利益理应获得人们的重视。

我的开发者如何从开源中获利?

在不违反开源许可证以及开源社区基本道德准则的前提下,开发者从开源项目中合理获利并非一件坏事。

自由软件运动领袖 Richard Stallman (RMS)曾鼓励自由与开源软件做者合理利用开源软件赚钱,以更好地维持项目的研发和推广。Linux Kernel 维护者 Linus Torvalds 也接受着来自各大厂商的资助,从而可以全职进行 Linux Kernel 的维护工做。 

开源产业编辑 Fernando Doglio 列出了六种我的开发者从开源活动中获利的方法:

1. Bug 赏金计划

BUG 赏金计划是不少大型开源机构面向我的开发者推出的一种赚钱的方式。开发者能够经过报告开源项目上的 BUG,也能够直接修复这些 BUG 得到来自项目官方不一样程度的奖金。

目前拥有漏洞赏金计划的比较有表明性的组织包括:

  • Mozilla:有两个主要的悬赏类别,一个是旗下的实际软件,一个用于其网站。第一个出价最高为 10,000 美圆,第二个出价最高为 5,000 美圆。
  • Apache:Apache Web 服务器项目向那些可以解决最关键的错误的人支付最高 3,000 美圆的奖金。
  • Google Android:Google 会为发现和解决的最关键问题提供最高数十万美圆的奖金。 

此外还有许多拥有漏洞赏金计划的开源相关组织机构,能够在此网站上找到最新的漏洞赏金计划列表。总而言之,若是我的开发者能投入大量时间,经过这种悬赏的方式参与开源代码贡献也是一种很不错的选择,但须要开发者拥有信息安全方面的技能。

2.提供付费支持

提供付费支持是不少开源项目团队获利的经典方式之一。 

若是开发者决定开始为某开源项目提供付费支持,则能够向其余人提供他们须要的有偿服务,这里有些例子:

  • 帮助进行基本安装或使用。
  • 代码和错误修复。
  • 添加新的和额外的功能。
  • 提供书面文件(例如书籍和教程)。

但要注意,若是你提供的支持包括对项目源代码进行更改,则须要核对项目采用的开源许可证,以确保其容许该类型的活动。固然,你不能只修改项目原做者的原始代码,你必须维护本身的产品副本。 

3.出售加强功能/插件

例如,开发人员销售 WordPress 插件。用户能够免费下载并安装 WordPress,但WordPress 拥有丰富的付费插件生态,用户会根据本身的需求购买用于修改或加强现有功能的付费插件,开发者能够经过开发并出售这些插件获利。

这种获利方式的例子还有 SidekiqBlender:两种产品都遵循相似的模式,从某种意义上来讲,它们都是开源的,能够无偿使用,可是用户能够购买扩展插件来更好地使用它们。而付出了时间和劳动力开发这些优秀插件的开发者从中获利也是应得的。

4.出售代码之外的内容

与第 2 点相似,我的开发者还能够为开源项目编写用户教程等内容来获利,例如:

  • 写和出售关于该项目的书籍教程。这能够经过与出版社推荐主题来完成。后者将负责编辑过程和发布步骤,让你专一于写做。固然,你必须与出版社分配收入,但这是值得的。
  • 为一些内容付费平台建立视频课程。这样作会产生被动收入,就像书出版后同样。另外,这些平台一般会提供视频培训。
  • 撰写有关产品的推广帖子。这并不意味着开源产品的全部者要向您付费以撰写这些帖子,而是使某些博客对该主题感兴趣,并愿意向你付费以提供有关其余主题的内容。 

在全部这些状况下,重要的是要了解,要从开源产品中获利,实际上并不必定须要编写代码。你能够基于这些产品提供特定于用户的内容,只要市场有这方面的需求,而你刚好又花时间和精力去作了,以此赚钱也无可厚非。

5.来自用户的捐赠

GitHub、Gitee 等代码托管平台都拥有用户捐赠的功能,开源项目拥有者能够从这些平台得到来自用户的自发捐赠,固然这项收入的大小要取决于你的项目是否足够强大,以及你所在地区的用户是否足够慷慨。 

以这种方式做为主要收入来源的开源项目有不少,大部分开源项目的官网都有捐赠入口。知名前端框架 Vue 的做者尤雨溪曾表示,在全职维护 Vue 的早期,其主要的收入也是来自众筹网站 Patreon 的用户捐赠。

6.用参与开源提高本身的职场竞争力

有时单纯的参与开源项目的代码贡献并不能带来直接的金钱利益,但开发者能够将这段经历写进简历里,以得到更多的就业机会。也能够经过参与大型公司旗下的开源项目,从而得到进入这家公司工做的机会。 

例如,一位我的开发者为 TypeScript 作出一些有益的贡献,那么他就有可能成正为该项目的核心贡献者,从而得到微软的注意,甚至能够加入微软的 TypeScript 团队。 

以上 6 点就是目前我的开发者可以从开源项目中获利的广泛方法。固然,可以彻底依靠上述开源活动谋生的我的开发者并很少见,以此致富的人更是屈指可数。一方面是大多数开发者仅专一于技术,缺少商业、运营、推广等相关经验,很难自发地从上述途径中找到适合本身的获利方法并执行下去;另外一方面,大多数开发者仍然有本身的本职工做,更多的开源爱好者仍是出于兴趣用业余的时间参与开源贡献,不求回报地为爱发电。 

我的开发者是开源社区中一股不可忽视的重要力量,要让他们获得本身为项目付出应得的收益分红,来自社区官方的普惠性举措是不可或缺的。

业内的举措

一些开源相关组织机构也意识到了这一点。 

去年 5 月,xs:code 平台宣布与 Redis Labs 展开一项新的合做,为建立与 Redis 相关的开源组件的开发人员提供财务支持。 

xs:code 是一个容许开发人员在其免费和开放源代码之上提供付费产品和服务,从而帮助开源开发人员使用其代码与软件公司创建联系的平台。这些公司享受高度维护的代码,其能够选择从其开发人员那里得到付费支持和咨询,而开源开发人员则能够得到持续开发所需的财务资源。 

几乎同一时期,微软旗下代码托管平台 GitHub 推出了为开源软件开发者提供资金支持的工具—— GitHub Sponsors,该功能容许开发人员提供各类资金捐助等级,而且能够从想要鼓励他们工做的支持者那里按期得到付款。为了激励企业与我的向构建有利于他们的开源技术的开发者支付费用,GitHub 还在去年 12 月推出了一个企业项目,让企业向开源项目开发者支付费用。GitHub 表示,这个项目已经大幅增长了资金量,从美国运通、AWS、Stripe、Indeeds、微软、Substack 和 Notion 等公司将数百万美圆直接分发到了开源项目开发者的手中。 

GitHub 产品总监 Devon Zuegel 表示,推出该计划主要有两个缘由。一个是简单地对那些影响开源社区的开发者或从事赞助商欣赏的项目的开发者表示感谢。同时,一家公司可能会赞助某个从事其工做流程核心项目的人。掏出现金可让这些核心开发者腾出更多时间专一于一个项目,或者更快地解决已知问题。 

据悉,目前已经有数万名开发者注册了这个项目,数百名开发者利用这个项目全职为他们的开源社区服务,有些人甚至拿到了六位数的薪水。

有业内人士认为,如今仍有很是多的重要开源项目都在贡献者不求回报的辛勤付出下勉强维持,用爱发电的开源奉献精神当然伟大,但只有当愈来愈多的我的开源贡献者的劳动付出可以获得应有的回报时,整个开源产业生态才能健康地可持续发展。


参考连接:

https://www.oschina.net/news/125661/qt-5-15-lts-commercia

https://www.welcometothejungle.com/en/articles/btc-money-open-source

https://www.wired.com/story/open-source-coders-few-tired/

https://www.oschina.net/news/115799/xscode-redis-labs-open-source-software-developers-get-paid

相关文章
相关标签/搜索