开源项目需要开发者才能生存,而开发者最主要的来源之一是项目的用户群。我参与了 openEuler 项目,其中了解贡献者从用户到开发者的转化率是一个关键指标。本文从层级角度审视开源社区,希望能为通过数据观察社区健康状况提供一个新的维度。
漏斗模型
为了获得社区如何运作的运营视角,您通常可以查看项目使用的代码托管平台,例如 Gitlab、Github,或者对于 openEuler 来说是 gitee.com。这是您的开发者工作的地方,也可能是您的许多用户访问以查看项目进展的地方。这些平台会留下基于贡献的数字足迹,它可以帮助您了解您的贡献者与项目代码库的不同类型的交互。对于 openEuler 来说,不同的开发者类型包括有权向官方 openEuler 网站提交代码的人员、下载并安装了发行版的人员以及每天更新软件包的人员。
当然,并非每个人都需要帐户才能使用我们的操作系统,这意味着某些交互无法分类。无法确认贡献者的身份意味着很难了解他们的交互,因此 openEuler 社区中的“开发者”目前仅限于与代码托管平台上的 openEuler 代码仓库进行交互的开发者。换句话说,我们有一些我们“不认识”的开发者,因为我们只有进入代码仓库的开发者的数据。
openEuler 社区将已知的开发者分为三个级别
- 代码贡献者 (D2):狭义的贡献者,他们创建了 PR(Pull Request)并成功合并了代码
- 贡献者 (D1):广义上的贡献者,指合并了 PR、提交了 Issue 或评论了 Issue 或 PR 的开发者
- 开发者 (D0):广泛的贡献者,指提交了 PR,或评论了 Issue 或 PR,或给项目点赞,或正在关注或 Fork 了仓库的人
根据上述分类,三个级别的开发者形成了从 D0 到 D2 的包含关系,从而形成了漏斗模型。

(Jun Zhong,CC BY-SA 4.0)
可以从不同的角度查看此数据,使其形成漏斗的形状,D0 是最广泛的分类,逐渐缩小到 D2

(Jun Zhong,CC BY-SA 4.0)
- 漏斗图:显示每一层的转化率
- 活跃度:根据时间分布,显示每个级别的时间序列中活跃开发者的数量
- 按组织:根据组织的分布,显示每个组织投入的人数
开发者是人
每个参与社区的开发者都是一个活生生的人,而不是图形平台上的一个冰冷的 KPI。人们很容易沉迷于数字运营的图表,而忽略了开发者的个性。但每个开发者都是客户,您需要以服务心态对待每个开发者的需求,并将项目的运营方向指向开发者而不是 KPI。
有趣的是,尽管如此,关注点还是会根据贡献者的类型而变化
- 代码贡献者 (D2):关注开发者的社区成长路径和职业发展路径,培养长期维护,或为项目布道。培养开发者对社区的忠诚度。
- 贡献者 (D1):关注开发者对项目功能的需求,协助开发者在实际生产中使用项目。帮助开发者与社区的其他成员沟通,以帮助解释项目的工作方式和原因。使用流程来增强开发者对社区的信任,以及社区对开发团队的信任。
- 开发者 (D0):这些人是项目的追随者,因此要关注传达项目的技术特点、用例。这些贡献者可以通过参与项目的试用,展示项目可以为他们做什么来提供帮助。这是您吸引人们注意力的机会,并将他们作为用户拉近项目。
开源项目的贡献者不是稳定的。它们不是永恒不变的固定点。发展,恰如其分地,是一个发展的角色。作为贡献者,很容易从“仅仅是用户”开始参与一个项目,然后发展成为贡献者,然后再成为核心贡献者,而这段旅程的每一步都很重要,而且任何一步都不应导致死胡同。
总结
您的项目需要了解其贡献者是谁。您的项目可能与 openEuler 的不同,但您必须确定路径、里程碑、不同的角色、贡献者生命周期的不同阶段。数据可以帮助您识别您的利益相关者是谁,但从这些数据中,您必须与数字背后的人建立联系。了解您的贡献者,了解他们对您的项目有什么需求,并确保他们与您的项目并肩同行的旅程是互惠互利的。
本文改编自作者的帖子,并经许可重新发布。
评论已关闭。