CJ Silverio , бывший технический директор npm Inc., в начале этого месяца выступил на выставке JSConf EU 2019 в Берлине под названием «Экономика открытого исходного кода». В частности, она обсудила экономику управления пакетами применительно к программному обеспечению с открытым исходным кодом, основываясь на своем уникальном видении и опыте работы в компании, которая управляет крупнейшим в мире реестром пакетов JavaScript.
Silverio рассказывает о том, как npm получил официальный статус, и характеризует его успех как катастрофу для централизованного реестра пакетов и репозитория. Хотя централизация имеет некоторые преимущества с точки зрения удобства использования и надежности, успех может быть дорогостоящим, когда централизованная услуга становится популярной. Она описала события, приведшие к регистрации npm в 2013 году. Реестр упал больше, чем в октябре 2013 года, и npm потребовались деньги.
Владелец npm получил начальное финансирование от венчурной фирмы, а проект Node продолжал предоставлять npm особые привилегии. Разработчики увековечили это, продолжая использовать npm, поскольку со временем он определил ожидания разработчиков при обслуживании пакетов JavaScript. Silverio обсуждает некоторые последствия перехода npm под частный контроль, то, что разработчики теперь не могут вносить вклад в политики реестра или как разрешаются споры.
Предположительно, исходя из своего глубокого знания внутренней работы компании, Сильверио описывает, как венчурное финансирование превратило npm Inc. в финансовый инструмент.
«Финансовые инструменты – это контракты о деньгах», – сказала она. «Npm Inc, компания, которая владеет нашей языковой экосистемой, может с тем же успехом быть коллекцией свиных животов, насколько это понимают ее владельцы. Они заключают контракты друг с другом и обмениваются частями. npm Inc. – это средство превращать деньги в больше денег ».
Сильверио утверждает, что реестр пакетов JavaScript не должен находиться под частным контролем и что централизация – это бремя, которое неизбежно приведет к частному контролю, поскольку серверы стоят денег.
Ее резкая критика централизованного управления пакетами привела к ее объявлению о федеративном децентрализованном реестре пакетов под названием Entropic, который она создала вместе с бывшим коллегой по npm Крисом Дикинсоном и более чем дюжиной участников. Проект имеет лицензию Apache 2.0, и его создатели работают в сотрудничестве с OpenJS Foundation .
Entropic поставляется с собственным интерфейсом командной строки и предлагает новый API публикации, ориентированный на файлы. Все пакеты, опубликованные в реестре, являются общедоступными, и разработчикам рекомендуется использовать что-то вроде реестра пакетов GitHub, если им нужно контролировать доступ к пакетам. Проекту чуть больше месяца и он не готов к использованию.
«Я думаю, что это правильно, что маятник отклоняется от централизации, и я хочу дать толчок этому колебанию», – сказал Сильверио. Последнее десятилетие было связано с консолидацией и монолитными услугами, но следующее десятилетие будет федеративным. Федерация распределяет расходы. Он распространяет контроль. Он распространяет политику. Он передает вам контроль над вашей частью нашей языковой экосистемы. Я надеюсь, что, отдав Entropic, я помогу нам вернуть наши языковые ресурсы ».
Эссе Сильверио по экономике управления пакетами доступно на GitHub. Посмотрите видео презентации от JSConf EU ниже. Если децентрализованное управление пакетами набирает обороты и становится стандартом в отрасли, это видео фиксирует то, что может стать поворотным моментом в экосистеме JavaScript и определяющим моментом для будущего Интернета.
^(видео)