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