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