Три эры лицензирования

За 28 лет разработки и публикации ПО прошли три отчётливо различимых периода лицензирования. Сейчас практически все новые проекты распространяются под European Union Public License 1.2, и стоит объяснить, почему.

Midgard был полностью под LGPLv2. Это было более простое время, когда вообще не было такого множества лицензий для свободного ПО. Midgard — веб-фреймворк, и выбор слабого копилефта казался правильным решением. Примерный веб-сайт, поставляемый с Midgard, использовал X11 лицензию.

Когда начали более серьёзно работать с JavaScript около 2011 года, перешли на MIT лицензию. Это был "делай что хочешь, но не подавай на меня" — простой подход, любимый экосистемой NPM пакетов. Легкая совместимость, без никаких условий.

После закрытия Flowhub был перерыв в несколько лет, когда практически ничего не выпускалось. То ли из-за работы, то ли из-за времени, уходящего на лодку.

Приход EUPL

В этом году решено было переключить "лицензию по умолчанию" на EUPL-1.2. Это одобренная OSI лицензия свободного ПО, созданная и опубликованная Европейским союзом. Это значительный отход от всех предыдущих лицензий. EUPL — это сильный копилефт, который закрывает "SaaS лазейку", требуя взаимного лицензирования независимо от способа распространения ПО.

За прошедшие годы стало очевидно, что "лагерь открытого исходного кода" (в отличие от "лагеря свободного ПО") всё время ошибался. Выиграли дебаты, но пользователи и разработчики получили мало. Всё, что удалось сделать — это облегчить крупным корпорациям дешевле строить свои системы и помочь миллиардерам становиться триллионерами.

Пора перестать возиться с пермиссивными лицензиями. Если корпорациям не нравится использовать ПО на наших условиях — они могут потратить усилия или ресурсы на разработку своего.

То, что EUPL имеет официальные юридически действительные переводы на 23 языка, тоже хороший знак в мире, где большая часть ПО создаётся и используется далеко за пределами Кремниевой долины.

Проекты на EUPL

Вот некоторые проекты, уже опубликованные под EUPL:

  • reticulum-js — JavaScript-реализация протокола Reticulum mesh networking;
  • dacar — децентрализованная система авторизации, построенная на Reticulum;
  • signalk-energy-predictor — система прогнозирования для лодок с возобновляемой энергией;
  • offshore-blogging-system — инструмент для публикации постов в блоге и загрузки данных о погоде через текстовые сообщения спутника InReach.

Кроме того, переписанная версия NoFlo Development Environment разрабатывается под EUPL. Сам NoFlo остаётся под MIT-лицензией, поскольку это существующий проект с множеством вкладов от третьих сторон.