Nadia Eghbal 在她关于我们 数字基础设施 状况的主要报告中,以及 Jonathan Lister 在他的回应中描述了我们的 数字生态系统,都指出了开源软件中的公地悲剧。虽然一些项目是可持续的,但许多项目仍然在与“搭便车问题”作斗争。正如 Nadia 所说:
资源是免费提供的,每个人(无论是个人开发者还是大型软件公司)都在使用它们,因此没有人受到激励去回馈,他们认为其他人会介入。
Heartbleed 漏洞揭示了这种现象的一个极端案例:一位独自工作的开发者,拿着微薄的薪水,承担着超过半个网络的重担。
关于如何解决这个问题,Jonathan 建议我们借鉴生态系统管理,“生态系统管理本身就是一个行业,拥有其相关的专家,他们著书立说,并在会议上发言。”我最近阅读了该领域的开创性著作之一,诺贝尔奖得主 Elinor Ostrom 的 Governing the Commons,我想就它如何应用于开放组织和开源可持续性提供一些初步的想法。
Ostrom 论公地
Ostrom 观察到,有些群体显然已经克服了公地悲剧,而另一些群体则没有。她给我们的第一个教训是关注制度,将其作为成功与失败的决定性因素。通过仔细审查案例研究,她提炼出了 原则,用于设计制度来管理她所谓的“公共池塘资源”或 CPR。
术语“公共池塘资源”指的是一种自然或人造[原文如此]资源系统,该系统足够大,使得排除潜在受益人从其使用中获得利益是昂贵的(但并非不可能)。
CPR 包括渔场、地下水盆地和森林等事物。“占用者”是指那些从 CPR 中索取的人,而“提供者”和“生产者”则建立 CPR 并使其持续运行。
现在,开源软件在技术上不是 CPR,而是一种所谓的“公共物品”。两者是相似的:阻止某人占用开源软件是困难的(根据设计!),就像阻止人们在特定区域捕鱼一样困难。经济学家会将它们都称为“非排他性”的。但是,虽然你和我不能同时捕到同一条鱼(当你捕到一条鱼时,我就不能捕到同一条鱼),但你和我可以同时使用相同的软件(当你下载并部署它时,我也能这样做)。用技术术语来说,经济学家认为 CPR 是“竞争性的”,而像开源软件这样的公共物品是“非竞争性的”。
这种区别意味着 Ostrom 描述的生态系统管理并不完全或完全适用于开源软件。然而,CPR 和公共物品都遭受搭便车问题的困扰,而 Ostrom 本人也说:
一项专注于个人如何避免搭便车、实现高度承诺、安排新制度以及在 CPR 环境中监督对一套规则的遵守的研究,应有助于理解个人如何在其他一些环境中解决这些关键问题。
开源社区中的搭便车行为导致个人工作过度和报酬过低,并最终导致倦怠。这对个人不利,对项目也不利。这是一个我们需要解决的问题。Ostrom 向我们展示了如何通过有条不紊的制度设计和分析方法来解决问题。管理开源软件项目的开放组织可以从她那里学到很多东西,同时也要认识到,我们将需要调整她的建议以适应我们的情况。
22 条评论