HeadlinesBriefing HeadlinesBriefing.com

开源新模式:拒绝PR,鼓励重新混用

Hacker News •
×

熟悉GitHub的软件工程师可能不了解随笔《大教堂与集市》所描述的内容。GitHub吸纳了“集市”的理念,即去中心化、开放、自组织的项目,并构建了一套工作流程,让任何人都能通过拉取请求检查或贡献代码。作者认为,这种模式如今已显露裂痕,在AI到来的时代,需要一种新的方法。

集市模式催生了一种“权利感”,用户会施压维护者合并其改动;同时形成了一种社会期望:发布代码的人必须无偿维护它。随着AI生成代码,阅读拉取请求的价值下降。作者表示,人们大多只想理解核心思想。开源许可证本就允许重新混用,而作者认为,重新混用一直被视为过于困难,是一道知识鸿沟,如今智能体正在帮助弥合这一鸿沟。作者以Nix作为实现这一目的的工具。

所提出的“重新混用模型”是去中心化且可组合的。思想通过独立的Nix覆盖层传播,而不是汇聚到同一个代码仓库。作者以“按原样”许可证发布源代码和设计意图。其他人只需在一个小型覆盖层中表达一次所需的改动,即可在开发环境、Docker镜像、NixOS系统、持续集成和智能体沙箱中重复使用,而无需分叉。最有价值的单位是行为上的改变,而非补丁本身。维护者可以采纳、重新实现或忽略这些改动,原作者也没有审查或维护的义务。上游采纳始终是可选的。有用的改编会在外部传播,维护者可以按自己的意愿选择采用。

举例来说,某个项目使用者若想阻止Git强制推送,可以编写一个覆盖层,修补Git以拒绝此类操作,而无需向上游提交拉取请求。该改动只需定义一次,即可应用于使用者需要的任何地方。作者认为,这使维护工作从共同的义务转变为个人自愿的组合。

常见问题:什么是开源软件的“重新混用模型”?

重新混用模型是一种去中心化的方法:作者以“按原样”许可证发布源代码和设计意图,其他人则通过编写小型Nix覆盖层来进行改编。思想通过覆盖层而非单一代码仓库传播,且没有人有义务维护这些改动或将其集成到上游。

来源: Hacker News · 由HeadlinesBriefing整理摘要