一份新工种:专职改善贡献者体验

去年 9 月,Servo 浏览器引擎项目做了一件少见的事:用 OpenCollective 和 GitHub Sponsors 上的月度捐款,让长期维护者 Josh Bowman-Matthews(@jdm)以兼职身份专职改善“贡献者体验”。今年 9 月 15 日,他交出了这一年的回顾。这份清单值得国内做开源、乃至做内部技术平台的人认真读一遍——它展示了一种把“看不见的社区工作”变成可量化产出的方式。

自由软件开发者社区活动现场

一年的产出台账

数字很直白:提名了 8 位新维护者,评审了 1150 个 pull request,为新手提交了 114 个“适合入门”的 issue,其中 92% 已被修复。他还写了一批文档:借用检查的风险、实验性特性、AI 政策常见问题,以及如何定位稳定与偶发的测试失败。除了这些看得见的产出,他花了不少时间诊断别人 PR 里莫名的失败,修掉大量“偶发失败”的测试——正是这些东西让所有人合并代码都变慢。

具体做了哪几件“难而重要”的事

第一件,支持一次大规模重写:Servo 与 JS 引擎的集成因为垃圾回收相关的偶发 panic 需要动手术。他没有一个人扛,而是评审大量 PR、同时拆出许多 issue,让这次重写能被分散到更多贡献者手上。第二件,查清并修复了 open.window 行为的错误,把一批不稳定测试变稳定。第三件,协助另一位贡献者的资助申请走完流程,最终拿到了 NLnet 的资助。

为什么“赞助一个维护者”值得做

开源项目缺的通常不是热情,而是有人持续处理那些既不炫技又阻断别人的事:评审、复现、写文档、把偶发失败钉死。这类工作没有 commit 数量上的存在感,却是整个项目吞吐量的隐形阀门。把一个人从“顺手做”变成“有报酬地做”,收益不是他多写了多少代码,而是他让更多人的代码能进来——8 位新维护者、92% 的新手 issue 修复率,都是这个乘数效应的证据。

对国内团队的启发也很直接:内部技术平台、公共组件库、跨部门协作的中间层,往往卡在同样的位置。与其不停招募新贡献者,不如明确一个“贡献者体验负责人”的角色,把评审、文档、失败复现这些事当成正经工作任务来安排,并给它们设定可观察的指标。