在我之前的文章中,我概述了可能的社区健康指标。在这篇文章中,我将探讨如何使用这些指标。你将看到来自不同社区的几个例子,其中一些你可能很熟悉。
贡献指标
我将从“新贡献者和贡献”指标开始,该指标衡量的是加入和离开社区的开发者。我可以通过查看哪些开发者在特定时期内进行了提交来衡量这一点。第一次出现的人加入了。一段时间没有贡献的人可能已经离开了。
开发者离开一个项目是很自然的。也许他们换了工作,优先事项发生了变化,或者有个人原因减少了他们对开源的参与。对于开源项目的健康来说,吸引新的开发者继续这项工作非常重要。

第一个例子取自2020年的一份社区报告,该报告考察了过去五年中的Mautic社区。
考虑到Mautic产品仓库,你可以看到本季度有稳定的新开发者为Mautic做出贡献。这里定义的新开发者是指在给定的时期内进行了第一次提交并被合并的人。

我添加了线条来显示社区在不同时期以不同的速度吸引新的贡献者。这反映了这五年中社区的不同阶段以及所做的战略决策。
然而,单个指标本身并不能完全描述社区的健康状况。Mautic社区报告继续关注所做的总体贡献。

在吸引新贡献者的时期内,总体贡献有所增加,如虚线圆圈所示。在经历了下降的螺旋式发展之后,社区在本分析期末变得更加活跃。
得出结论
2020年第一季度是Mautic社区繁忙的一个季度。采取了许多积极的步骤,为增长奠定了坚实的基础。团队变得更加积极主动,并建立了帮助社区更有效运作的流程。你因此看到了参与度和新贡献者的显着增加。
组织多样性指标
现在,看看“组织多样性”指标。类似于一个项目在许多不同的贡献者参与的情况下是健康的,拥有几个组织参与也是一件好事。
为了说明这一点,可以考虑一个社区,其中所有贡献者都由一个组织雇用。如果该组织决定减少其项目工作并重新分配贡献者,该项目将面临危险。这就是为什么社区对贡献者的组织多样性感兴趣的原因。

定期报告其组织多样性的一个实体是Drupal社区。事实上,Drupal社区拥有一个复杂的信用系统,用于跟踪贡献并将它们与组织联系起来。贡献者可以声明他们是否以志愿者身份、作为其工作的一部分或为特定客户提供客户工作而做出了贡献。
在2020年7月1日至2021年6月30日的12个月中,Drupal.org的信用系统记录了来自7,420个不同个人和1,186个不同组织的贡献。它看到个人贡献者下降了10%,但组织贡献者仅下降了2%。
这是 COVID 疫情时期。虽然许多人的经济状况不佳,但大多数组织继续支持 Drupal 这一事实告诉我们,当经济复苏时,他们将再次增加贡献。这一数据是社区健康的标志。
谁在做出贡献?

(Georg Link 和 Emilio Galeano Gryciuk, CC BY-SA 4.0)
我将研究组织的其他贡献。在这张来自kata containers社区的图中,我排除了两个创始成员组织。他们开源 kata containers 的既定目标是建立一个健康且充满活力的社区,并得到许多组织的支持。此图显示了这些非创始成员所做的提交数量,你看到五年内稳步增长。这表明了让更多公司参与做出贡献的成功。随着越来越多的组织参与,该图也变得更加丰富多彩。
贡献者体验指标
到目前为止,我讨论了显示有关谁参与开源项目以及他们的参与程度的信息的指标。参与程度很重要,因为没有它,社区将会死亡。
社区健康的另一个领域是社区成员在贡献时的体验。想象一下,尝试为一个社区做出贡献,打开一个问题,但没有人回应——你会有什么感觉?你会继续创建更改请求吗?如果你已经提出了更改请求,但没有人对其发表评论或进行审查,该怎么办?你是否更愿意至少听到一些消息,即使是“谢谢,但这超出了范围,我们不会合并它”?
考虑更改请求指标:更改请求旨在由其他开发人员审查,他们可能会提出改进建议。在 CHAOSS 项目中,成员决定使用供应商中立术语“更改请求”,因为 GitHub、GitLab 和 Gerrit 都称之为不同的东西。
- 拉取请求 (GitHub)
- 合并请求 (GitLab)
- 变更集 (Gerrit)

(Georg Link 和 Emilio Galeano Gryciuk, CC BY-SA 4.0)

(Georg Link 和 Emilio Galeano Gryciuk, CC BY-SA 4.0)
例如,Starling X 社区的合并中位时间(更改请求持续时间的另一个名称)为 3.97 天。该指标本身听起来不错。当你做出贡献时,工作会在四天内完成。
我想把这个指标放在更多的上下文中。你看到在大流行期间总体贡献有所下降。但是,当你查看审查效率指数时,你会发现响应能力良好。贡献者的体验很好,尽管在大流行期间处于较低水平,而且即使在压力大的情况下,他们也能很好地相互回应。
答案有时就是问题
可测量的数据会导致一些人自欺欺人地认为这是一个需要完美地组合在一起的谜题,才能构成完整的图景。但通常,审查数据、质疑社区项目的结果、发明解决你发现的问题的新解决方案以及提出推动你走向更健康社区的问题,正是你应该利用你的数据所做的事情。
关于你社区的数据永远不会停止变化,这是意料之中的。重要的是收集、查看数据并在你发现弱点、偏见或你忽略的事情时采取行动。
你可以建立一个更健康的社区,而一个更健康的社区有能力制造更好的软件。
评论已关闭。