Багато хто, працюючи з програмним забезпеченням, що поширюється безкоштовно, автоматично асоціює його з термінами «вільне» або «з відкритим кодом» (open‐source). Я сам тривалий час використовував слово «безкоштовний» для свого ПЗ і пов’язував себе з концепцією open‐source, особливо через мій бекґраунд у FOSS та CSSM Group. Проте, з часом я зрозумів, що традиційні open‐source ліцензії не завжди відповідають моїм баченням та потребам, і це спонукало мене створити власні.
Мої ліцензії, починаючи з 2020 року, відійшли від загальноприйнятих стандартів. Вони були спробою зафіксувати мої власні правила гри, які, можливо, здаються неортодоксальними для спільноти вільного ПЗ.
Згадка про сервіс «CSSM License»
Створення власних ліцензій було, з одного боку, експериментом, а з іншого — спробою максимально захистити власні інтереси та визначити чіткі рамки використання мого програмного забезпечення. Цей шлях не був прямим і призвів до появи кількох версій ліцензій, кожна з яких відображала моє зростаюче розуміння юридичних нюансів та бажання адаптувати умови до конкретних реалій.
Цікавим етапом у цьому процесі став мій псевдоавтоматизований сервіс «CSSM License». Цей сервіс мав на меті «розповсюдження інформаційних продуктів (відкритого програмного забезпечення) з автоматичною видачею ліцензії». За допомогою простого JavaScript‐коду, який методом рандому обирав одну з десяти попередньо створених мною лінків (з унікальними UUID), користувач отримував на новій сторінці кнопку «Copy Link» та текст з умовами. Як я сам зазначив, «ліцензії, видані в сервісі, є неправильно складеними з точки зору грамотності юридичного права».
Це була спроба імплементувати механізм видачі ліцензій, але, як виявилося, з певними вадами. Зокрема, фрагмент тексту, який з’являвся після «видачі» ліцензії:
Автор або уповноважений персонал мають право вносити зміни до ліцензії, зокрема додавати пункти, змінювати переклад чи формулювання тексту або вилучати окремі положення. Усі зміни мають бути затверджені радою або безпосередньо автором. Після внесення змін необхідно надіслати оновлений файл ліцензії на адресу [email protected] та очікувати підтвердження.
Щороку автор зобов'язаний оновлювати рік у відомостях про авторські права (або вказувати діапазон років через дефіс). Оновлений файл ліцензії слід надсилати на адресу [email protected] для затвердження.
Оновлені версії ліцензії не поширюються через систему автоматичних оновлень. Для отримання нової версії необхідно звернутися на адресу [email protected], зазначивши мету отримання та ім’я автора (для оформлення постійної ліцензії).
Цей текст яскраво демонструє один з ключових недоліків — відсутність реальної юридичної обґрунтованості та надмірну бюрократизацію процесу оновлення ліцензії. Фактично, це була саморобна спроба регулювати процес, який у світі open‐source вирішується через публічні репозиторії та версійний контроль.
Таким чином, власний шлях дав мені повний контроль над умовами використання мого ПЗ, але водночас вимагав глибокого занурення в питання, які зазвичай вирішуються заздалегідь розробленими та перевіреними юридичними текстами.
Які недоліки мали й мають попередні ліцензії?
Назва «Unlimited» у моїх ранніх ліцензіях може здаватися оманливою, адже вона майже нічого не означає в порівнянні з такими ліцензіями, як MIT або GNU. Ось основні недоліки, які я помітив у своїх попередніх ітераціях:
-
Надмірна складність та неструктурованість: перші версії були хаотичними, перевантаженими неоднозначними формулюваннями. Вони були більше схожі на суміш внутрішніх правил та загальних застережень, ніж на чіткий юридичний документ.
-
Відсутність чітких визначень: багато термінів не мали однозначних визначень, що могло призвести до неоднозначних тлумачень.
-
Недосконала інтелектуальна власність: вони містили положення, які, ймовірно, не мали реальної юридичної сили або могли бути легко оскаржені. Наприклад, вимога підписання користувачем «угоди» шляхом натискання кнопки завантаження без чіткості, що саме підписується.
-
Відсутність стандартизації: мої попередні ліцензії не відповідали жодному визнаному стандарту, що ускладнювало їхнє розуміння та прийняття спільнотою розробників. У той час як MIT чи GNU GPL є широко визнаними та зрозумілими, мої ліцензії вимагали ретельного вивчення кожного пункту, що не завжди зручно для користувачів.
-
Фрагментація: наявність окремих ліцензій для музичних творів, попри їхню приналежність до ПЗ, свідчила про відсутність єдиної, всеохоплюючої стратегії.
Наскільки реальні перспективи зараз будь‐кому скористатися ліцензією?
З урахуванням еволюції моїх ліцензій, особливо після випуску версії 2.0, перспективи для інших скористатися ними стають більш реальними, хоча і все ще вимагають обережності.
Попередні версії, включаючи ті, що розповсюджувалися через сервіс «CSSM License», були занадто специфічними та неформальними, щоб їх можна було широко застосовувати. Вони були скоріше внутрішнім документом, аніж публічною ліцензією.
Проте, CSSM Unlimited License v2.0 значно покращує ситуацію. Вона написана більш універсальною мовою, містить чіткіші визначення та структуру, що робить її потенційно придатною для використання іншими. До того ж, тепер для зручності доступний офіційний онлайн-генератор CSSM Unlimited License v2.0 за адресою chernega.eu.org/ul-generator.html. Однак, варто пам’ятати, що це все ще кастомна ліцензія. Це означає, що вона не має того ж рівня перевірки та визнання, як, наприклад, ліцензії SPDX. Будь‐який розробник, який захоче її використовувати, повинен буде ретельно вивчити її положення та, можливо, проконсультуватися з юристами, щоб переконатися, що вона відповідає їхнім потребам та місцевому законодавству.
Що було досягнуто у версії CSSM Unlimited License 2.0 і який великий розрив навіть у юридичному плані між попередньою версією?
CSSM Unlimited License v2.0 є значним кроком вперед у порівнянні з попередніми версіями. Розрив між ними не просто великий, він колосальний як у структурі, так і в юридичній чіткості:
-
Чіткі визначення: версія 2.0 починається з детального розділу «Definitions», який чітко окреслює такі поняття, як «Software», «Modification», «User», «Documentation», «Derivative Works» та «License Terms». Це кардинально відрізняється від попередніх ліцензій, де багато термінів були розмитими або відсутніми.
-
Структуровані розділи: нова ліцензія має чітку структуру з розділами «Introduction», «Definitions», «Rights and Obligations of the Author», «Rights and Obligations of Users», «Distribution Terms», «Disclaimer of Liability», «License Termination» та «Changes to License». Це робить документ значно легшим для читання, розуміння та аналізу. Попередні версії були набором хаотичних пунктів.
-
Стандартизована мова: версія 2.0 використовує більш формалізовану та стандартизовану юридичну мову, що робить її більш схожою на загальноприйняті ліцензії, хоча і зі збереженням індивідуальних положень.
-
Чіткіші права та обов’язки: значно більш прозоро викладені права та обов’язки як Автора, так і Користувача, включаючи умови використання, модифікації та розповсюдження. Зокрема, у пункті 3.1 чітко визначено права користувачів на використання, вивчення та модифікацію.
-
Відмова від відповідальності: розділ «Disclaimer of Liability» став значно чіткішим і відповідає загальноприйнятим стандартам відмови від гарантій, що є критично важливим з юридичної точки зору. Попередні версії мали більш неформальні та потенційно недійсні застереження.
-
Умови розповсюдження: чітко прописані умови розповсюдження, включно з вимогою супроводжувати кожну копію ліцензією та ліцензувати модифіковані версії на тих самих умовах.
-
Процес внесення змін: деталізований розділ про зміни до ліцензії (Changes to License), який передбачає повідомлення користувачів та їхню згоду на нові умови.
Порівняння CSSM Unlimited License v2.0 з іншими популярними ліцензіями
Щоб краще зрозуміти місце CSSM Unlimited License v2.0 у ландшафті програмного ліцензування, давайте порівняємо її з деякими популярними open‐source та публічними ліцензіями:
Характеристика | CSSM UL v2.0 | MIT License | Apache License 2.0 | GNU GPL v3 |
---|---|---|---|---|
Тип ліцензії | Дозвільна (Permissive) | Дозвільна (Permissive) | Дозвільна (Permissive) | Копілефт (Copyleft) |
Вимога збереження авторства | Так | Так | Так | Так |
Дозвіл на комерційне використання | Так | Так | Так | Так |
Дозвіл на модифікацію | Так | Так | Так | Так |
Дозвіл на розповсюдження | Так | Так | Так | Так |
Дозвіл на приватне використання | Так | Так | Так | Так |
Вимога розкриття змін | Так | Ні | Так | Так |
Вимога ліцензування похідних робіт під тією ж ліцензією | Ні | Ні | Ні | Так |
Патентна ліцензія | Немає | Немає | Так | Так |
Захист від патентних позовів | Немає | Немає | Так | Так |
Відмова від гарантій | Так | Так | Так | Так |
Відмова від відповідальності | Так | Так | Так | Так |
Вимога до документації | Детальна | Мінімальна | Помірна | Помірна |
Механізм оновлення ліцензії | Детальний | Немає | Немає | Базовий |
Складність документа | Помірна | Проста | Помірна | Складна |
Популярність у спільноті | Низька | Дуже висока | Висока | Висока |
Юридична перевіреність | Немає | Висока | Висока | Висока |
Детальне порівняння
1. GNU General Public License (GPL):
- Основний принцип: GPL є «копілефтною» ліцензією, що означає, що будь‐які похідні роботи, створені на основі коду, ліцензованого під GPL, також повинні бути ліцензовані під GPL. Це забезпечує, що програмне забезпечення залишається вільним.
- Порівняння з CSSM UL v2.0: CSSM UL v2.0 є більш дозвільною (permissive) ліцензією, яка не вимагає, щоб похідні роботи були ліцензовані під тією ж ліцензією. Вона дозволяє створення пропрієтарних похідних робіт, тоді як GPL запобігає цьому. CSSM UL v2.0 фокусується на авторстві та прозорості змін, але не накладає жорстких обмежень на подальше ліцензування.
2. MIT License:
- Основний принцип: MIT є однією з найпростіших і найдозвольніших ліцензій. Вона вимагає лише збереження авторського права та ліцензійного тексту в усіх копіях програмного забезпечення. Дозволяє використання, модифікацію, розповсюдження, субліцензування та продаж без будь‐яких обмежень, крім зазначення авторства.
- Порівняння з CSSM UL v2.0: CSSM UL v2.0 є дещо більш детальною, ніж MIT. Вона, як і MIT, дозволяє широке використання та модифікацію з вимогою збереження авторства. Однак, CSSM UL v2.0 додає більш розгорнуті розділи про обов’язки користувачів (наприклад, повідомлення про помилки), умови розповсюдження (копія ліцензії, інформування про зміни) та припинення дії ліцензії. Хоча MIT також має пункт про відмову від відповідальності, CSSM UL v2.0 більш детально описує його, а також вводить більш розширені вимоги щодо дій користувачів у випадку порушень.
3. Apache License 2.0:
- Основний принцип: дозвільна ліцензія, яка, крім дозволів на використання та модифікацію, також надає явну патентну ліцензію від розробників, що захищає користувачів від патентних позовів. Вимагає збереження авторських прав, відмови від відповідальності та зазначення змін.
- Порівняння з CSSM UL v2.0: CSSM UL v2.0 не містить явної патентної ліцензії, що є однією з ключових відмінностей від Apache. Хоча обидві ліцензії є дозвільними, Apache 2.0 надає додатковий рівень захисту від патентних позовів, чого немає в CSSM UL v2.0. CSSM UL v2.0 зосереджується на дотриманні авторських прав та прозорості в розповсюдженні модифікованих версій, але не заглиблюється в патентне право.
Висновки
Підсумовуючи, CSSM Unlimited License v2.0 є значним кроком вперед у порівнянні з попередніми версіями. Вона перетворилася з неформального набору правил, що видавалися через псевдоавтоматизований сервіс, у документ, який, хоч і залишається власною розробкою, уже має значно більшу юридичну вагу та потенціал для ширшого використання.
Вона займає свою нішу як досить дозвільна ліцензія, подібна до MIT, але з більш розширеними та деталізованими обов’язками для користувачів та умовами розповсюдження, а також більш чітким механізмом оновлення. Це показує, що навіть відхід від open‐source стандартів може призвести до створення працездатної та чіткої ліцензії, якщо до цього процесу підійти з належною увагою до юридичних деталей.