В июне 2025 года сообщество разработчиков Node.js оказалось вовлечено в активное обсуждение и спор вокруг новой кнопки, появившейся на официальной домашней странице проекта. Данная кнопка привлекает внимание пользователей к платной поддержке для версий Node.js, находящихся в статусе End-of-Life (EOL), то есть больше не поддерживаемых официально. Это изменение стало причиной разногласий между основными участниками проекта и подняло важные вопросы о прозрачности управления, процессе принятия решений и способах обеспечения долгосрочной устойчивости открытых проектов.
Кнопка, расположенная под основной кнопкой установки Node.js, ведет на сайт стороннего коммерческого поставщика — HeroDevs. Эта компания является золотым участником Фонда OpenJS и предоставляет услуги по расширенной безопасности для устаревших версий Node.js. При этом часть средств от продажи таких услуг возвращается в проект, направляясь на поддержку инфраструктуры и развитие Node.
js через программу Ecosystem Sustainability Program (ESP). Идея реализации данного механизма финансирования, с одной стороны, звучит логично и даже необходима. Node.js имеет огромную пользовательскую базу, и множество компаний продолжают использовать старые версии платформы из-за бизнес-потребностей или особенностей их собственной инфраструктуры. Официальная поддержка этих версий закончилась, и создание возможностей для обеспечения их безопасности за счет платных сервисов можно рассматривать как шаг к более устойчивому развитию проекта.
Тем не менее, способ внедрения новой кнопки вызвал негативную реакцию у части участников команды проекта и сообщества в целом. Критики отмечают, что кнопка выделена крайне заметно — она даже превосходит размером основную кнопку установки Node.js. Это создает впечатление, что это не просто рекомендация, а навязчивое коммерческое предложение. Кроме того, решение о размещении ссылки приняли без должного обсуждения и согласования на уровне Технического Совета Проекта (TSC), что противоречит сложившейся культуре прозрачных и коллективных процессов принятия решений.
Один из членов TSC, Ягиз Низипли, публично выразил своё несогласие с принятым решением на платформе Bluesky и GitHub, подчеркивая необходимость формального голосования и полного обсуждения таких значимых изменений. Его критические замечания были быстро удалены модераторами Node.js, что вызвало дополнительные вопросы о механизмах модерации, свободе выражения мнений и отношении к критике внутри сообщества. Тем временем другие участники проекта, среди которых выделяется активный член TSC Джеймс Снелл, поддержали нововведение. Они подчеркнули, что финансирование через партнерские программы, подобные сотрудничеству с HeroDevs, является важной составляющей устойчивого развития проекта.
Особенно учитывая, что вся инфраструктура Node.js строится на усилиях волонтеров, и не всегда возможно обеспечить долгосрочную поддержку устаревших версий бесплатно. Дополнительной причиной поспешного внедрения кнопки стал указание от руководства OpenJS Foundation о необходимости срочно решить проблему безопасности версий Node.js, используемых миллионами пользователей, что подтверждается статистикой скачиваний. Даже Node.
js 12, уже признанная устаревшей, всё еще скачивается примерно 25 миллионов раз в месяц. В связи с этим предлагается создать определённые финансовые стимулы для предприятий, которым требуется продленная поддержка версий, не подпадающих под обычный график долгосрочной поддержки (LTS). Одновременно с этим представители сообщества, в том числе и TSC-члены, обращают внимание на важность прозрачности и открытости процесса принятия решений. Они настаивают на публичных обсуждениях крупных нововведений, а не на закрытых встречах или односторонних решениях. По мнению специалистов, такая практика увеличит доверие к проекту и позволит учесть мнение максимально широкого круга заинтересованных лиц.
Кроме того, многие предлагают альтернативные способы информирования пользователей о статусе устаревших версий и доступных вариантах поддержки. Например, создать официальную страницу проекта с информацией о завершении жизненного цикла версии и опциями поддержки, оставляя возможность выбора пользователям без навязчивого прямого перенаправления на коммерческого партнера. Такой подход применяют и другие популярные проекты с открытым исходным кодом, позволяя сохранить нейтральность основной платформы и одновременно обеспечить прозрачность. Также обсуждается и техническая сторона вопроса. Некоторые участники отметили, что кнопка теперь блокируется большинством популярных браузерных блокировщиков рекламы, что негативно сказывается на её эффективности.
Аналитика по деталям переходов и конверсиям еще не собрана, поэтому многое будет зависеть от анализа конечных результатов и предпочтений сообщества. Фонд OpenJS в лице исполнительного директора Робин Гинн подтвердил, что программа партнерства ESP еще находится на ранних стадиях и испытывает дефицит финансирования порядка 50%. Организация намерена расширять число партнеров и искать другие источники дохода, не ограничиваясь одним поставщиком услуг, что позволит одновременно увеличивать финансовую устойчивость и соблюсти интересы сообщества. В контексте открытого программного обеспечения данная ситуация служит ярким примером сложностей, с которыми сталкиваются крупные проекты при балансировании между принципами открытости, добровольного вклада и необходимостью устойчивого финансирования. Как сохранить доверие, одновременно находя ресурсы для поддержки и развития, — вопрос далеко не тривиальный.
Стоит отметить, что многие пользователи и компании осознают необходимость обновления своих систем и перехода на поддерживаемые версии платформы. Однако реальность бизнеса часто диктует свои условия. Наличие платных вариантов продленной поддержки даёт возможность плавного перехода и минимизации рисков, что в конечном итоге выгодно и проекту, и его пользователям. В настоящее время Node.js Технический Совет продолжает обсуждать ситуацию и рассматривает варианты изменения или смягчения формата кнопки поддержки.
Среди возможных решений — перенаправление на официальные проинформированные страницы проекта и проработка более выверенного пользовательского опыта, который не будет восприниматься как рекламный ход. Таким образом, текущий конфликт поднимает фундаментальные темы, связанные с управлением и эволюцией открытых проектов в современном мире. Уроки, извлечённые из этого эпизода, могут помочь Node.js и другим инициативам отрегулировать свои процессы, сделать их более публичными, инклюзивными и ответственными перед сообществом. Появление платной поддержки для EOL-версий Node.
js — это попытка найти баланс между необходимостью финансировать жизненно важные инфраструктурные задачи и уважением к принципам открытости и волонтёрской работы. Этот опыт, вероятно, станет примером для множества других проектов, которые ищут пути сохранения своего развития в условиях ограниченных ресурсов и растущих ожиданий пользователей. В конечном счёте, открытое обсуждение и сотрудничество между разработчиками, пользователями и организацией фонда будут ключом к созданию устойчивой и безопасной экосистемы Node.js, способной удовлетворить потребности как конечных пользователей, так и всей глобальной технологической инфраструктуры.