许多科技公司正在转向开源工具以加速创新和增长。随着这些公司努力影响开源项目,治理实践有时会从一小群开发者和公司之间的协调转变为由大型贡献者和组织社区管理,而这些社区通常具有相互竞争的优先事项。
可持续的项目需要可持续的社区。为了适应更大、更具竞争力的开源环境,组织需要投资于社区建设。 这需要一种观点,即源代码的可用性与开源项目中贡献者和组织的社会参与密不可分。 许多组织现在将开源社区参与视为一种社会和技术——或“社会技术”——投资。
CHAOSS 项目旨在提高开源项目和社区健康的透明度和可操作性。 CHAOSS 已经识别并定义了有意义地评估开源社区健康的指标。
一些 CHAOSS 指标提供了广泛的社会因素的指示,这些因素现在对于理解可持续开源社区的形态至关重要。 社会指标需要更复杂的收集和解释策略,例如机器学习,以及调查和规范经过验证的实践来吸引和留住新贡献者等技术。 分析开源项目的社会维度侧重于理解人际关系和社区的动态。
以下关于开源社区健康的见解来自对企业开源参与者进行的约 36 次访谈。 此处引用的受访者姓名已被隐去,以保护他们的隐私。
社区建设
企业开源参与者必须认识到,社区建设对于维持开源项目至关重要。 当构建和加入社区时,诸如“社区是否受欢迎?”和“谁的声音被听到?”等问题的答案是重要的考虑因素
在我们参与 [开源项目] 之前,我们肯定会关注的一件事是这里的氛围如何? 这通常是非常社会化的事情。 他们似乎是否执行行为准则? 这个社区里是否有人以各种方式显得粗暴……?
社区活动
大多数项目贡献者都认识到社区作为成功开源项目一部分的日益重要的意义。 他们希望社区活跃,能够继续以支持所有成员并反映社区工作中发现的各种意见的方式推进项目目标。 他们希望成员友善,可以经常见面和一起工作。 频繁和积极的互动正变得如此重要,以至于缺乏活动或有毒互动的激增是人们退出社区的常见原因。 事实上,它甚至可能比社区提供的任何技术支持都更重要
我曾在 [项目] 委员会工作过一段时间,这是一个非常活跃的委员会。 不幸的是,那里使用了大量的贬义词。 关于开源的事情是,它通常都是基于文本的,[并且] 这可能是有害的。 如果人们感到不舒服,我们会阻止他们做出贡献。 我已经看到有人因为事情的处理方式而离开不同的社区。 我认为我见过的 [最糟糕的] 基本上只是贬义词,不一定基于种族、宗教或性别,只是有人愤怒地抨击他们不想看到或想看到的代码。
多元化和包容性
同样重要的是社区如何解决多元化、公平和包容性 (DEI)。 潜在的贡献者会问自己诸如“我将如何被对待?”和“我将如何对待他人?”等问题。 人们理解对 DEI 的关注(或缺乏关注)是项目风险和可持续性的关键部分。 社区在项目的社会技术工作中未能以 DEI 为中心,会影响贡献者加入或离开开源社区的决定,无论社区在技术上可能提供什么
当你看到任何欺凌行为,比如种族主义、偏执或任何看起来将他人排除在对话之外的行为——如果这种情况被指出并得到处理,我的意思是,发生这种情况并不好,但要么这个人接受了反馈并改进了自己的行为,要么他们被告知离开。 [两者都是好的结果。] 但是如果你看到这种情况正在发生,但没有人对此采取任何行动,每个人都只是袖手旁观,等待别人对此采取行动,那就有问题了。 我没有时间处理这个。 这会让我离开。
社区文化
在开源中培养社区意识的重要性与贡献者对来自不同背景的人们友好环境的期望密切相关。 考虑到这些因素,开源项目必须不断反思如何发出社区健康的信号,在社区成员之间建立信任,并降低社区参与的障碍,以实现自身的可持续性。
开源社区对问题做出回应的方式是衡量他们在 [对] 反馈的接受程度和不对直接污染的接受程度之间平衡的非常强烈的指标。 我认为,一个成功的开源项目是在你的代码可以被他人审查的信心与你不认识的随机人员可以改进你的代码的谦逊之间取得平衡。 这种信心和谦逊之间的平衡反映在人们对问题的回应方式上。 这就是我要寻找的。
良性竞争
使企业利益与项目利益保持一致的压力可能会导致过度控制。 企业试图施加一定程度的控制,从而破坏社区意识,这对项目及其维护者是有害的。 创建健康的社区需要在付费贡献的企业控制与周到的社区建设之间取得平衡。
[例如,一家大型开源公司] 为该项目分配了资源,这些资源由他们自己的内部团队驱动,他们的优先事项很大程度上不受我们的控制。 在这种情况下进行协作不如找到做我们自己事情的方法有吸引力。
建设可持续性意味着建设社区
技术开源资产的重要性和质量取决于相互尊重的社会系统,这对大多数企业开源参与者来说是一个新的现实。 企业有效参与开源项目需要关注一系列悖论。 为了具有竞争力,公司需要为他们不控制的一组开源项目做出贡献,而竞争对手正在这些项目中并肩工作。 为了创建一个项目变得并保持可持续的公共环境,参与者必须放下他们的竞争本能并培养信任。 社会和技术问题的共同进步使所有人受益。
开源软件在为科技公司创造价值方面的作用持续增长,因为分担创建和维护核心基础设施的成本不仅具有吸引力,而且可以说是开展业务的必要条件。 维持这些关键技术资产需要如此大量的有才华的贡献者,以至于围绕开源软件形成和培育社区至关重要。
健康的开源社区为他们的贡献者培养一种目标感和归属感,从而使人们继续想要参与或加入。 这样的社区由真实和多样化的人组成,他们有自己的兴趣、关注点和生活。 开源贡献者——无论是个人还是企业——都必须与对彼此以及项目本身都感兴趣的参与者建立真正的社区。 这需要深思熟虑、专注且经常回顾性地关注我们如何构建和管理我们的开源社区。
我们要感谢红帽公司对这项工作的慷慨支持。
[ 探索公司选择开源的原因:红帽企业开源现状报告 ]
评论已关闭。