Справа зовсім не в ліцензіях, а в тобі
Квітень 11th, 2009Я ненавиджу ліцензії на програмне забезпечення. І зовсім не тому, що вони обмежують мою свободу, і бла-бла-бла. Річ у тім, що в більшості випадків ліцензії використовують морально та інтелектуально недорозвинені програмісти, які через свої хибні уявлення про життя просто не доросли до правильного розуміння цих речей.
The contents of your online communications, as well as other information about you as an ICQ Services user (e.g. IP address), may be disclosed (i) to authorized officers of the court in response to legal process (for example, a court order, search warrant or subpoena) or in other circumstances in which ICQ believes the ICQ Services is being used in the commission of a crime or when we have a good faith belief that there is an emergency that poses a threat to the safety of you or another person; or (ii) when necessary either to protect the rights or property of ICQ, the ICQ Services or its affiliated providers, or for us to render the service you have requested.
І мова йде зовсім не про власницьке (proprietary) програмне забезпечення, бізнес-модель якого просто зобов’язана шляхом ліцензування, обмежити права власних користувачів, і за рахунок цього популяризувати, а тоді й продавати копії продукту, заробляючи таким чином гроші. Ні, мови йде про вільне (не просто відкрите), і про безкоштовне, але закрите (freeware) програмне забезпечення.
Людина роками вчиться писати програмне забезпечення, використовує для цього величезну кількість чужих праць: книжки, статті, джерельні тексти чужих програм, тощо. Для створення усього цього люди, як і слід, витратили величезну кількість фізичної та психічної енергії, пожертвували своїм часом, можливістю займатись, можливо, більш цікавими та приємними для них речами, словом, здійснила аскезу.
Навіщо ж вони це роблять? Як би ви не крутили, але все можна звести до двох причин:
1. Егоїстична — черговий розумник намагається показати свої скіли, написавши статтю, книжку, програму, і реакція на яку майже завжди є такою: пісь, пісь, пісь гарячою жовтою водичкою (жовта вона через те, що ви п’єте не достатньо рідини), і, думки штибу, “ой, яка крута програма”, “ой, який крутий чувак”, пісь, пісь, пісь…
За звичай, такі статті і книжки, хоча й, нерідко доносять до читача необхідну інформацію, і вчать його певним речам, не несуть для науки і суспільства ніякої серйозної користі. Адже автор не має бажання, а отже, й достатнього стимулу та енергії для написання дійсно якісного тексту/коду.
2. Альтруїстична — хтось пише з дійсно щирого бажання поділитись знаннями, зробити щось корисне для суспільства, віддати свій борг спільноті, тощо. Я не хочу нічого ідеалізувати, бо люди таки й справді перетворили цей світ у купу великого смердючого лайна, тому одразу ж визнаю, що подібні творіння далеко не завжди є кращими за попередні, однак, просто на захист своїх переконань скажу, що лише у таких випадках пишуться дійсно відмінні книжки та відмінне з точки зору інженерії та юзабіліті програмне забезпечення.
Але мова трішки про інше. Вона про те, що робитиме програміст, який пише програмне забезпечення, на продажі копій якого не збирається заробляти. І тут знову ж одне з двох (але вже значно лаконічніше):
1. Зробить його freeware, тобто розповсюджуватиме безкоштовно, але нікому не показуватиме джерельні тексти.
2. Зробить його вільним програмним забезпеченням, тобто, дозволить вільно переглядати, використовувати і модифікувати код програми.
Навіщо програміст обирає кожен з цих шляхів, і, що це йому дає?
У першому випадку він зберігає усі права на власний продукт, і ексклюзивну можливість на я не знаю, на, що, просто на щось там. Дати йому це може, по суті, лиш одне — збереження вищезгаданих прав, які взагалі-то йому і не потрібні, адже 99,9% такого програмного забезпечення не є інноваційним, інакше б, воно продавалося за гроші, і у переважній більшості випадків його цінність складає виключно витрачений на його створення час.
У другому ж випадку він зберігає за собою авторство коду, до того ж, надає іншим можливість вільно його використовувати, поширювати, модифікувати, тощо.ґ
Так просто коротко, і не потрібно й сперечатись про те, хто з них тупий недорозвинений егоїстичний жлоб з комплексом неповноцінності, а хто просто нормальний хлопець.
Вибір вільної ліцензії — це взагалі окреме питання. Лиш серед визнаних Open Source Initiative, їх кілька десятків. І кожна чимось випендрилась перед іншими. Хто додатковим правом для користувача, хто додатковим обмеженням його прав, хто ще якоюсь, нікому не зрозумілою сранню. Ось основні, з їхніми короткими характеристиками:
| Назва | Тип ліцензії | Опис |
| Без ліцензії | NULL | Без ліцензії, а отже, ніяк не зазначено авторських прав. Для того, щоб якось використовувати код, слід запитати на це дозволу в його автора. |
| Суспільне надбання | Дозвільна | Будь хто і будь яким чином може використовувати ваш код. Ніщо за замовчуванням не є суспільним надбанням, ви повинні явно це сказати, якщо бажаєте, щоб ваш код був ним. За звичай, об’єкти авторського права стають суспільним через н-ну кількість років (залежить від законодавства країни) після смерті його автора. |
| GPL | Копілефт | Код заборонено використовувати у власницькому програмному забезпеченні. Роблячи будь які зміни до коду, ви повинні опублікувати їх на умовах ліцензії GPL. |
| LGPL | Ліберальний копілефт | Більш ліберальна версія GPL. Дозволяє компонувати ваш код з власницьким програмним забезпеченням |
| BSD | Дозвільна | Суперова річ! Включає у себе відмову від правової відповідальності, і все. |
| MIT/X11 | Дозвільна | Майже те ж саме, що й BSD. Містить лише правову відмову від відповідальності. |
| Apache | Дозвільна | Зобов’язує інформувати одержувача про факт використання коду, що ліцензований під ліцензією Апач. Таким чином, в протилежність копілефт ліцензіям, одержувач модифікованої версії не обов’язково отримує усі права, що спочатку надаються ліцензією Апач. |
| Mozilla | Ліберальний копілефт | Дозволяє вільне змішування вільного та власницького програмного забезпечення. |
| Eclipse | Дозвільна | Улюблениця бізнесу. Дозволяє самостійно обирати ліцензію для похідного коду. |
Нещодавно дискутував зі своїм колегою на рахунок вибору ліцензії для щойно написаної ним утиліти. Той з іншим нашим спільним колегою написав нехай і не якийсь меґа крутий, але досить корисний для програмістів знадіб. І, “О, Боги”, почав мізкувати над одвічним питанням, “яку ж ліцензію обрати?”. Ця не захищає моїх прав, ця надає моїм користувач надто багато прав, ця дозволяє корпоративним виродкам нагло вкрасти мій код, бла-бла-бла… Не знаю, на скільки потужний грім на небі загримів, але “бідолаха” врешті-решт таки обрав ліцензію, LGPL. Чим він керувався, для мене поки що лишається загадкою, та й зовсім не цікаво. Мої пропозицію обрати ліцензію BSD він одразу ж відкинув, не зважаючи на те, що я досить наполегливо запевняв його у тому, що це одразу ж позбавить його страждань, адже фактично забере у нього усі права на його код, і, що він не написав нічого революційного для того, щоб аж так перейматись даним питанням, а тому в даному випадку йому слід вчинити так, як буде ліпше не для нього, а для суспільства.
Після тієї розмові я ще раз переконався у тому, що найліпшою у світі ліцензією буде колись придумана мною “Пішли ви на*уй разом зі своїми довбаними ліцензіями”, суть якої більш грамотно з юридичної точки зору була сформована автором ліцензії Do What The Fuck You Want To Public License.
Власне, ось до чого я веду: наступного разу, бігаючи по кімнаті, і в екстазі від написаного вами коду обиратимете йому ліцензію, майте на увазі, що ліцензії — це просто набір байтів, і вся проблема полягає виключно у вас, вашому самовихованні, а також духовному та професійному рості, і ні в чому іншому!

Квітень 11th, 2009 at 12:27
Чудово-чудово! Гарна стаття, дякую.
Квітень 12th, 2009 at 01:11
гарна тема. колись сам витратив багато часу на ці “ліцензійні труднощі”.
зараз, за звичай, шльопаю потрійну MPL 1.1/GPL 2.0/LGPL 2.1