个人开发者能否靠开源获利?

原创
03/04 16:41
阅读数 6.3W

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

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

挣扎中的个人开发者

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

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

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

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

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

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

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

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

来自英特尔公司的开发者 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

展开阅读全文
打赏
8
40 收藏
分享
加载中
辛苦开发,免费开源,团队要养,真心不易!huankemao.com
03/09 17:45
回复
举报
刚开始搞的免费开源版,后面直接收费了,团队才活下来。开源不易,珍惜。 By https://apizza.net
03/08 15:42
回复
举报
我是不相信 bootstrap作者 赚不到钱的。

用户量这么大,这么出名, 获取的赞助肯定都千万+(RMB)级别了。

只是他不满足于这些,还在继续上班,所以压力大。
03/06 21:53
回复
举报
我们很多人吐槽开源赚不到钱,其实潜台词是【我做开源没赚到钱】, 又或者【为什么这些**不用我的项目】
03/06 21:56
回复
举报
你这说法,忽略了一般贡献者,只讲了领头的。中国的开源,确实还要宣传啊,都是伪开源的商业思维者。
03/07 14:08
回复
举报
贡献者不用固定交代码,也不用担责任,全凭自愿。他们如果觉得压力大,自然就会退出了。 而领头的这批人 也算获取了合理收益了。
03/07 14:25
回复
举报
固定交代码者,也不用担责任啊。他们如果觉得压力大,也可以退出啊。为什么只有领头的这批人也算获取了合理收益了,而其他人就只是“全凭自愿”呢?
03/07 14:37
回复
举报
固定交代码的人,肯定有任务在身,任务是谁给的? 这种人肯定能分到钱的,有什么好说的。 而且你要搞清楚状况,什么叫只是 全凭自愿? 不固定交代码的这批人,本就无所谓, 就像是闲着没事去大街上扫个地,难道要国家给工资吗? 又或者我就是喜欢跑出去扫地,没人吩咐我去, 难道我要去怪国家不给我钱吗? 这么说吧,你发起了一个开源项目, 别人过来提个PR,就找你要钱,合理吗?
03/07 15:23
回复
举报
回复 @贝克街的天才 : 看样子,你是认为志愿者白干活,是应该的。那么,曾经固定交代码的人,后选择退出了。应该怎么算呢?提个PR至于要不要给钱,得具体看,有意义的,还是应该的。一提到分配利益,你视乎是个平均主义者。本来就应该按功分配,而不是按劳分配--缺的是怎么记功方法,不是只看谁坚持到最后。你的理论说白了,还是公司管理模式,不是开源管理模式--就是管理层拿大头,其他的只是被利用者。
03/08 15:34
回复
举报
回复 @dwcz : 我再说最后一遍。 1. 发起人,可以拿到赞助,这个我们没分歧。 2. 固定交代码的人,他之所有这个固定交代码的任务,肯定是发起人给他分配的,所以他们之间 怎么分,他们自己定。 3. 就是你说的志愿者,心血来潮就提个PR过来, 对于这部分人,我的观点是 发起人如果愿意跟他们分,那最好,但是他们没任何理由来要。 而你的观点是 应该给。 对于第三点,那按你这逻辑,你明天拿着扫帚下楼去扫个大街,然后去向国家 要工资吧, 不给,你就搬出这套理论去怼他。 去吧。 如果你这套理论成立,那还得了? 我去你家擦个门,然后找你要钱。我去自行车位帮忙整理个自行车,然后找管理人员要钱, 你觉得合理吗?
03/08 22:10
回复
举报
回复 @贝克街的天才 : 你说来去就是跳不出个公司管理模式。开源是共享模式,不是公司管理模式。只要有记功方法,就可以共享管理。不需要谁和谁来商定利益分配。你举得的例子,用按功分配原则,就是该给钱。你的含义是,动动就给几百几千的味,难道不能给几块几十。自己的思维狭义,还认为别人也是。说白了,就是自己想动动手抄一抄,就拿几千几百的,不想认真的做事。
03/09 12:47
回复
举报
回复 @dwcz : 你往github传个开源项目, 我去给你提pr,然后你给我钱,好不好? 好不好? 请正面回答,别给我拐弯模块,如果你不愿意,那就别扯了好吗?
03/12 22:58
回复
举报
回复 @贝克街的天才 :可以啊。等我把记功方法做完,你只管来提。我倒是想看看你能出多少意见。
03/13 15:19
回复
举报
回复 @dwcz : 事前提醒下。肯定不会是公司管理模式。也就是你是能得到多少,得看你的本事和市场发展。别到时,没本事得不到钱,赖别人。
03/13 15:54
回复
举报
我来提供一条思路给大家参考。现在大数据在企业里很流行,大数据Hadoop体系里的又都是开源软件,这些开源软件里面有一些软件可以在企业里做数据仓库、数据分析和BI用得上的,比如Hadoop、Spark、Flink、Kylin、Zeppelin、Hue、Hive、HBase、Yarn、Kafka和Airflow。我们为什么不去做一个框架,把这些东西都放在里面,类似Spring Framework,通过简单地编写yml配置信息和SQL、Python和Pyspark代码就可以调度和组合所有这些功能,容易地设计出大数据的ETL数据流和数据仓库以及分析模型等,还可以是可视化的,从而大幅度地降低大数据开发难度。这样这个软件框架在给我们自己的大数据开发工作带来方便的同时,我们还可以成立公司对外提供咨询、维护和培训服务。
03/06 21:36
回复
举报
了解一下 CDH,TDH,就是干这个事情的,一站式大数据平台。
03/08 14:05
回复
举报
CDH以及TDH是管理大数据平台的,我说的这个是结合业务模型的大数据BI软件开发框架,建立在大数据基础设施之上的,两者之间区别很大,管不同方面的需求。
03/08 14:56
回复
举报
如果你能做出Vue 这样的强大,那么你能赚大钱。
03/06 09:54
回复
举报
早期开源软件,都是个人开发者用业余时间开发,纯属热爱,不为了赚取利益,近几年各大商业厂商入驻,感觉开源的水已经浑了,乌烟瘴气的
03/05 20:24
回复
举报
为啥都跳不出打工和经商的模式呢?明明有更好的,金融模式不用呢?开源,共享--不就是加快知识的流动性,从而抑制成本的增长。这正符合金融模式。贡献者提供知识,其他人使用知识,这之间唯一缺的就是合适交易模式--既要提供培养贡献者的环境,又要保证使用者自由度。再说了程序员,难成为商人。商人也是一门要求很高的职业。但成为提供者就很简单了。只要有个市场,为提供者和使用者搭起桥梁,就可以让提供者更专心做自己更擅长的事。
03/05 17:20
回复
举报
代码开源,但是相应的工具和插件闭源收费
03/05 16:12
回复
举报
也有像vue一样赚了很多钱的呢
03/05 16:06
回复
举报
如果有互相之间耦合性高的几个开源项目完全可以合并成一个新的开源项目,同时精简优化一下代码,实现功能的性能和稳定性还能提高。同时做这件事的程序员也可以出名。
03/05 14:45
回复
举报
这消灭了个性--也就是创造性。从功利思维上,觉得是好主意。但从维持创造性上,看是坏主意。
03/05 17:24
回复
举报
创造出来的程序也要有实际用途,而且和现有的软件和框架的功能不重叠才有存在的价值,也才能够存在较长的时间。
03/06 21:12
回复
举报
那不一定,有很多是属于改进。而改进是否有效,是否立即有效,都是要试了才知道的。而且,还有使用者需求复杂面不同的问题--有的要轻点,有的要全点。你这大一统的功利思维太重了--事物发展不只是有顺因果关系,还有逆因果关系--成者王侯败者寇。
03/07 14:02
回复
举报
更多评论
打赏
48 评论
40 收藏
8
分享
返回顶部
顶部