一方面,开源是热情驱动的,但是另一方面,我们绝对不能饿死雷锋。
GitHub 更新支持开源
近期,随着企业回馈开源开发者呼声的愈演愈烈,GitHub 也再次更新了自己曾在 2019 年上线的赞助者功能 Sponsors——推出了全新的赞助商专属存储库。截至目前,该库已在全球 36 个地区开放使用。
据 GitHub 官方博客介绍,赞助商专属存储库是一种仅供赞助商访问的私人存储库。启用该库的开发者可以根据金额为自己的开源项目定义不同级别的赞助方案,并为每个赞助等级设置不同的访问权限与对应奖励。而项目的使用者则可根据自身需求选择不同的赞助等级,并支付相应费用以获取所需的访问权限。
GitHub 赞助产品负责人 Jessica Lord 称,希望通过该类型仓库提高开发者与赞助商的互动,并帮助开发者从开源项目中获取相应的回报。毫无疑问,这项更新对开源项目开发者而言是一件好事,它使得开发者能够从项目中得到更多经济上的收益与支持。但 GitHub 的此番操作,无疑也从侧面反应出了目前开源开发者们仍然处境窘迫以及大部分开源项目难以维持长期可持续性发展的现实问题。
开源开发者仍处困境
资本压榨已成常态
开源一直以来都更多的被视为一种用爱发电的奉献行为,开发者们在项目构建、维护与更新的每个环节注入心血,希望通过开源为更多人带来帮助。但如今,部分商业企业却将个人开源开发者视为无需回报的免费劳动力,在追求自身利益的同时,一再压榨与践踏他们的开源成果。而面对这样的情形时,个人开发者显然缺乏足够的人力与财力去为自己创造更大的选择空间。
今年 1 月,知名开源工具库 Faker.js 作者 Marak 为反抗商业企业白嫖与抄袭而删库跑路的举动在业内引起了轩然大波。在这一事件中,多家大型商业企业作为既得利益者,在长期享受 Faker.js 价值的同时,却未曾对项目或开发者提供任何形式的帮助。而在作者迫于经济压力尝试将项目进行商业化期间,又有企业做出了抄袭项目断其财路的恶劣行为。最终,无力反抗的 Marak 选择破坏了自己经营十余年的心血之作。
然而更令人感到惋惜的是,此类事件已不是第一次发生。2020 年,开源软件包管理工具 AppGet 的作者 Kevin 也同样遭受了类似的不公待遇。在获邀向某企业多次提供开发思路与意见后,Kevin 并未获得事先承诺的的职位与权益,而该企业却在得到 Kevin 的帮助后,抄袭其项目开发了自己的商用产品。面对这一结果,kevin 在失望中宣布了将放弃对 AppGet 的继续更新。
用爱发电身心俱疲
除了个人开源开发者难以得到商业企业的尊重与支持外,无数的开源项目维护者也同样处境艰辛,他们之中的多数人在全职工作的同时为了热爱与责任长期坚持用爱发电,最终换来的却是心理与健康的双重压力。
在不久前发生的 Log4j2 漏洞事件中,三位该项目的核心维护者都在第一时间加入了漏洞修复的行列。而当他们在利用业余时间自愿、无偿的努力寻找缓解措施时,却还需要承受来自世界各地的留言苛责。更值得注意的是,从此次漏洞的影响范围来看,要说 Log4j 被应用于互联网行业的“半壁江山”也不为过,然而一个如此级别的开源项目,在被曝出漏洞前却只收到过三次个人赞助。
当然,这样的现象也并非个例。开源事件记录工具 Docz 的作者 Pedro 也曾公开发文,表示维护开源项目压力极大。最初为了开发 Docz,Pedro 可以提前 3 小时起床,推迟 3 小时睡觉,Docz 也给 Pedro 的生活带来了很多乐趣。但随着项目的发展,需求日益增多。Pedro 既要忙于工作,还需要花费大量的休息时间对项目进行无偿维护。最终,迫于健康压力,Pedro 不得不减少了对 Docz 的投入,这也给项目带来了一种非常糟糕的状态,导致很长一段时间里没有人对其进行维护。
像 Log4j 核心维护人员与 Docz 作者这样面对压力依然坚持信仰的开发者并不在少数,他们都背负着众人的期望与监督。但从现实情况的角度来看,如今各方面对这些才华横溢且不求回报的贡献者们的关注与支持仍然是远远不够的。
中国开源喜忧参半
诚然,上述案例均发生在国际领域,那么如今,国内开源的现实状况又是如何,是否也同样存在着这些问题呢?目前,国内开源主要以企业主导,这一点从近期发布的“2021 中国开源先锋”榜单中也不难发现。在入选榜单的 33 人里,10 余人拥有大厂标签、8 人为企事业单位领导、其余则均为中小企业高层及国内外开源社区领军人物,而在这其中并没出现个人开发者的身影。
据 OSCHINA 所提供的调查报告可知,目前国内开发者接触开源的时间普遍较短,大部分不足五年,而这其中超 55% 的开发者每周在开源上的投入时间也仅限 1-2 小时。虽然如今由国内开发者所主导的个人开源项目不在少数,但其中真正具有较强影响力且被广泛应用的项目可以说是屈指可数。在这样的环境之下,国内暂时并未暴露出太多与开源开发者相关的问题,但这种状态是否能够长期持续依然存疑。
在知识产权等方面,国内暂时不存在直接以开源软件为主的法律条款,规制开源软件的主要法律法规目前只有《著作权法》与《计算机软件保护条例》。此外,部分开源项目问题还可能涉及《合同法》与《专利法》等法律。在这种情况下,个人与商业企业违反开源协议,侵犯开源项目开发者权益的现象将极易发生,对缺乏专业团队的个人开发者而言,在面临这些问题时,是难以有效维护自身权益的。
经济收入难以保障同样也是目前国内开源存在的现实问题,数据显示,国内约82.2% 的开发者无偿参与开源,而在有收入的群体之中,占比最多的是以企业员工身份参与开源后可获得固定工资的开发者。在参与调查的所有人中,仅有 4.7% 能从自己的个人开源项目中获得商业化收益,且其中近 55% 的开发者每月的收益金额小于 1000。如何保障开源开发者拥有稳定收入,无论在国外还是国内都是一个共性难题。"做开源没收入无法持续"也是在整个调查期间,所收到的最多的反馈之一。
而就目前趋势来看,中国开源正处于快速发展的阶段。在国家政策支持与大企业领头的带动之下,已有越来越多的开发者加入了开源贡献行列。仅 2021 年,Gitee 新增用户便超过了 180 万,活跃仓库则增长了超 200 万个。随着开源理念认可度在国内的不断提升,未来将有更多高质量的开源项目从中国开发者的手中诞生。面对这样蓬勃的发展趋势,如何有效解决开源开发者们的种种困境,让这些富有才华的人们有更大的热情去贡献技术,推动全国乃至世界开源生态的进一步繁荣,是如今亟需思考的现实问题。
写在最后
中国开源需要未雨绸缪,拥有活跃的开发者群体,才是开源项目的真正保障。正如阿里巴巴技术副总裁贾扬清曾在知乎上所说“一方面,开源是热情驱动的,但是另一方面,我们绝对不能饿死雷锋。所以一定要有体系化的能力沉淀,有很好的流程,把大家做开源的阻力做到最小。”开篇中所提到的 GitHub 的赞助者功能更新,无疑已经为业界开了一个好头。未来是否会出现更多更加行之有效的解决方案去支持开源的长期可持续性发展,我们暂且不得而知。但当下可以肯定且值得坚持奉行的一点是:为众人抱薪者,不可使其冻毙于风雪。