前npm CTO:JavaScript软件包管理未来是去除中心化

作者 | Sarah Gooding 译者 | 王强 JSConf EU是欧洲一个专业、非营利的 JavaScript 社区会议。该会议每年在 6 月初举行为期两天的活动,届时,会邀请很多技术专家来分享最新的前端技术。一路走来,成为开发者关注的最重要的技术会议之一,今年正好是它的 10 周年纪念日(JSConf EU 2019 于 6 月 1 日在柏林举行)。 本月初的柏林 JSConf EU 2019 会议(详见下方链接)上,前 npm 首席技术官 CJ Silverio 发表了题为“开源经济”的演讲。npm 是世界上最大的 JavaScript 包管理服务提供商,Silverio 根据自己独特的视角和工作经验,探讨了适用于开源软件的包管理经济体系。 相关链接: JSConf EU 2019 会议: https://2019.jsconf.eu/

npm 沦落为金融工具

Silverio 讲述了 npm 如何获得官方地位的经历,并总结说这种中心化的包托管和存储库服务的成功是一场灾难。 虽然中心化体系在可用性和可靠性方面具有一些优势,但是中心化服务越流行,随之而来的代价也就越沉重。 她回顾了 2013 年 npm 建立公司的始末,那年 10 月托管服务大部分时间都处于崩溃状态,而且 npm 需要资金来继续运营。 npm 的所有者从风投公司获得了基础资金,而 Node 项目继续为 npm 保留特权。开发者也在继续使用 npm,让这种状况维持至今。随着时间推移,npm 已经成为开发者对 JavaScript 包托管服务的标准参照。Silverio 讨论了 npm 受私有资本控制的一些后果,例如开发者现在无权影响包管理的服务政策,也没法参与争端的仲裁流程。 Silverio 根据她在 npm 内部的工作经历,告诉大家 VC 融资是如何将 npm 变成金融工具的。 “金融工具是关于金钱的一堆合约,”她这样说到:“npm 公司掌握着我们语言的生态系统,在公司股东来看不过是待宰的肥羊。他们只会签下一堆合同然后数钱,而 npm 只是一种让钱生钱的手段而已。“

JavaScript软件包管理的未来

Silverio 认为,JavaScript 的软件包管理不应该被私有资本控制,而中心化体系将不可避免地导致私有控制,因为服务器是需要花钱的。 在强烈批判中心化包管理服务的同时,她宣布了一项名为 Entropic 的去中心化软件包管理服务: https://github.com/entropic-dev 这是她与前 npm 同事 Chris Dickinson 和几十位贡献者一起创建的。该项目基于 Apache 2.0 许可分发,其创建者正在与 OpenJS 基金会合作。 Silverio说:”让我欣慰的是,现在有这么多前 npm 同事在为 entropic 做贡献,爱你们“ Entropic 带有自己的 CLI,并提供了一个新的以文件为中心的发布 API。 发布到管理服务的所有包都是公开的,如果开发者需要控制包的访问权限,可以使用类似 GitHub 包管理的工具。该项目刚刚开发了一个多月,尚未准备好发布。 “我认为去中心化是大势所趋,我想用我的能力推它一把,”Silverio 说:“过去十年一直是整合和单体服务统治一切,但未来十年将是去中心化的时代。去中心化能分摊成本、分散控制权、让更多人参与政策制定。用户可以重掌语言生态系统的控制权。在 Entropic 的帮助下,我希望我们回到语言自由民主的时代。” 可在 GitHub 上查阅 Silverio 的包管理经济体系文章: https://github.com/ceejbot/economics-of-package-management/blob/master/essay.md Silverio 在 JSConf EU 的演讲视频链接: https://youtu.be/MO8hZlgK5zc 英文原文: https://wptavern.com/former-npm-inc-cto-announces-entropic-a-decentralized-package-registry