[Перевод] Рассказ о том, как популярная JavaScript-библиотека начала выводить в терминал рекламу

В пакете Standard, который представляет собой руководство по стилю JavaScript, линтер, и средство для автоматического исправления кода, реализовано то, что, по всей видимости, можно назвать первой рекламной системой для JavaScript-библиотек.

В начале 20-х чисел августа сего года разработчики, которые устанавливали Standard через менеджер пакетов npm, смогли лицезреть в своих терминалах здоровенный рекламный баннер.

b801fbe8f3609cb2b991f051e5f147de.png


Рекламный баннер в терминале

Эта реклама создана средствами нового проекта — Funding. Им занимаются разработчики библиотеки Standard. Библиотека Funding была включена в Standard 14.0.0. Эта версия Standard вышла 19 августа. Именно тогда реклама и начала появляться в терминалах.
Идея, стоящая за библиотекой Funding, заключается в том, что компании покупают рекламное пространство в терминалах пользователей, а проект Funding потом распределяет доходы между опенсорсными проектами, которые согласились с ним сотрудничать и показывать рекламу своим пользователям.

Неудивительно то, что эта идея вызвала в сообществе разработчиков жестокие споры. Например — здесь и здесь.

Некоторые из спорщиков полагали что реклама в терминале — это хороший способ финансирования важных опенсорсных проектов, всегда испытывающих проблемы с деньгами. Другие считали совершенно неприемлемой мысль о том, чтобы смотреть рекламу в своём терминале.

«Суть дела в том, что те, кто занимается поддержкой [опенсорсного софта] нуждаются в деньгах», — говорит Винсент Уиверс — разработчик из Нидерландов. «Более совершенные решения этой проблемы могут появиться в будущем:, а до тех пор, пока их нет, можно и примириться с рекламой. Это не так уж и плохо. Хотя лично мне не особенно нравится видеть рекламные баннеры в терминале, я понимаю их необходимость и полностью поддерживаю эту идею», — продолжает он.

«Мой терминал — это последняя крепость, последний оазис спокойствия, который не показывает мне непрерывные потоки рекламы от воротил бизнеса. Я категорически против этой идеи, так как уверен в том, что она в корне противоречит духу опенсорса, который мы взращивали десятилетиями», — говорит Вук Петрович — разработчик из США.

Большинство негативных комментариев против Standard и новой схемы финансирования опенсорсных проектов исходит от разработчиков, которые недовольны тем, что рекламные баннеры, появляющиеся после установки, теперь будут попадать в логи, что совершенно неоправданно усложнит отладку приложений.

«Я не хочу смотреть рекламу в моих CI-логах, и мне не хочется и думать о том, что будет, если другие пакеты начнут делать то же самое. Некоторые JS-пакеты имеют десятки, сотни, или даже больше зависимостей. Можете себе представить то, что начнётся, если все они будут показывать рекламу?», — сказал Роберт Хэфнер — разработчик из Калифорнии.

Сейчас рекламу показывает лишь библиотека Standard, но со временем проект Funding, средствами которого это делается, может стать более популярным. Это может быть похоже на то, как за последний год выросла популярность проекта OpenCollective.

OpenCollective — это проект, похожий на Funding. Но он, вместо показа баннеров, выводит в терминале просьбы о пожертвованиях, в которых разработчикам предлагается переводить средства некоему проекту. Эти просьбы тоже выводятся в терминале npm после установки различных библиотек.

14a9b7a6fc0dfae373f14eec9fe3904b.png


Сообщения OpenCollective

С прошлого года сообщения OpenCollective были добавлены во многие опенсорсные проекты. В такие, например, как core.js, JSS, Nodemon, Styled Components, Level, да и во многие другие.

Так же, как и в случае с Funding, разработчики выражали недовольство, видя эти сообщения в терминале. Однако они были готовых их принять, так как в них всего лишь содержались просьбы о пожертвованиях, а не полномасштабные рекламные объявления.

Однако в случае с Funding возникает такое ощущение, что этот проект пересёк некую черту в умах некоторых разработчиков, которые не хотят видеть рекламу в своих терминалах ни под каким предлогом.

Некоторые их этих разработчиков надавили на Linode — на одну из компаний, которая договорилась с Funding о показе рекламы. Компания, в итоге, решила не накалять обстановку и отказаться от этой идеи.

Более того, некоторые разработчики пошли ещё дальше, направив энергию своего гнева на создание первого в мире блокировщика рекламы для интерфейса командной строки.

Итоги


Реклама в терминале — это попытка решить серьёзную проблему финансирования опенсорсных проектов. Но это многим очень и очень не нравится. В результате на вопрос о том, суждено ли этому явлению стать массовым, сейчас можно ответить скорее отрицательно, чем положительно. К тому же, недавно стало известно, что npm, вероятнее всего, будет банить пакеты, которые показывают рекламу в терминале.

Если вам эта тема интересна — взгляните на материал, который написан по результатам проведения эксперимента «Funding».

Уважаемые читатели! Как вы относитесь к рекламе в терминале? Какие пути финансирования опенсорса кажутся вам наиболее адекватными?

itt53pns2iucwylb3bwn1fmmtnu.png

© Habrahabr.ru