Самостоятельное создание сайта
Самостоятельная раскрутка и продвижение сайта

Лицензии open source

Логотип GNU GPL третьей версии
   Начинающие web разработчики, так или иначе, сталкиваются с внешними программными продуктами, без которых практически невозможно создать функциональный сайт. К таким продуктам относятся модули, классы, библиотеки, плагины и т.д. Зачастую обойтись без них невозможно, так как они значительно упрощают разработку. Как правило, это отлаженные и кросс-браузерные решения, которые легко интегрируются в популярные CMS или сами расширяются за счет большого количество существующих плагинов или функций, яркий пример тому JQuery. Иногда обойтись без внешнего функционала невозможно, например Вы вряд ли сможете быстро создать качественный визуальный графический редактор на javascript, такой например, как wz_jsgraphics или написать на PHP класс AJAX File Uploader без перезагрузки.
   Поэтому Вы должны знать, что каждая библиотека или класс предлагается вместе с лицензией. Каждая лицензия накладывает на Вас обязанности или наделяет правами по использованию кода, поставляемого с лицензией. 99% подключаемого внешнего кода предлагается как Open Source Code (открытый код), который можно изменять под конкретный сайт.

   Понятие Open Source Code
   До появления термина open source (открытое программное обеспечение или ПО) в 1998г, в английском языке существовало только неоднозначное понятие free softwarе. Неоднозначность заключается в двойственности слова frее, которое может переводиться как «свободный» и «бесплатный». Открытым ПО, называется программное обеспечение, которое поставляется вместе с открытым, то есть не откомпилированным, исходным кодом (open source code) всех исполняемых модулей, библиотек и других файлов, входящих в программный пакет.

   Но эта особенность и является самым уязвимым местом разработчиков, ведь невозможно распространить свою библиотеку и надежно защитить свои авторские права. Так как, каждый пользователь может спокойно использовать код в своих разработках и продавать его. Поэтому все лицензии на ПО относятся либо к свободным лицензиям, либо к коммерческим (несвободным, полусвободным, проприетарным). Разделение на два типа вызвано, в первую очередь различными правами и обязанностями разработчика и конечного пользователя.
   Закрытые лицензии, по сути, можно рассматривать как договор сдачи в аренду (пусть и пожизненную) программного модуля, пакета, либо приложения, так как издатель продукта остается его владельцем. Все разновидности коммерческого лицензирования, предусматривают ограничение прав пользователя на любые действия, не связанные напрямую с личной эксплуатацией продукта без вмешательства в его программный код. То есть, это касается распространения, копирования и модификации..
   Свободные лицензии, в отличие от проприетарных, предусматривают передачу основных прав на владение программным продуктом. По сути, все виды свободных лицензий, несмотря на некоторые отличия, представляют собой юридический инструмент для защиты прав пользователя на неограниченное использование, распространение, модификацию и т.д. Однако с разработчиками ситуация несколько сложнее.

   Виды свободных лицензий – основные права и обязанности

   Свободных лицензий существует несколько десятков. Классификацию их чаще всего производят по максимальному соответствию определению open source одной из редакций: FSF (Free Software Foundation, он же Фонд свободного ПО). Для всех свободных лицензий характерно отсутствие каких-либо гарантий от разработчика и обязательное явное указание автора. Ими разрешается неограниченно запускать, распространять ПО, изучать и изменять исходный код.

   Основные виды лицензии:

   GNU GPL (GPL)– лицензия поддерживаемая FSF, существует в трех основных редакциях. Самая распространенная свободная лицензия. Подобный способ лицензирования плохо подходит для разработки коммерческих приложений, так как GPL предусматривает принцип наследования - вы обязаны, также открыть ваш код для всех остальных. В том числе и при распространении на коммерческой основе.
   LGPL – компромиссный "облегченный" вариант GPL для библиотек, который позволяет связать библиотеку с коммерческим ПО, без необходимости попадания последнего под действие свободной лицензии.
   Смена GPL на любую другую лицензию запрещена, а если поменять LGPL на GPL – обратной дороги уже не будет.

   Пригодные для коммерческого использования свободные лицензии: ВSD, Apache, MIT, MРB (Mоzilla Public Licensе).
   BSD - позволяют неограниченное использование, модификацию, распространение и коммерциализацию исходного кода c указанием автора ПО.
   MIT - не содержат требования выпуска модифицированных версий под той же лицензией, что допускает любую модификацию кода с любым дальнейшим использование кода, вплоть до собственного лицензирования и просто продажей ПО, но c указанием автора ПО. Единственная особенность, никто не может подать в суд на Вас за последствия от использования данного ПО.
   Исключение составляет MPB, в котором в конечном продукте необходимо наличие исходного текста лицензии. MPB явно предусматривает смену лицензии, в остальных – эта возможность просто не рассматривается.
   Отсутствие прямого запрещения в любой библиотеки, дает полную свободу выбора способа лицензирования.

   Инструменты web программирования и способы их лицензирования

   FCKEditor – веб-плагин, с функциональностью текстового редактора. Главной причиной бешеного успеха FCKEditor является, скорее всего, не его мультиплатформенность и возможности, а скорее тройное лицензирование, позволяющее выбрать наиболее подходящую лицензию. Редактор распространяется по лицензиям GNU GPL, MPL, LGPL. Для разработчиков, часто предоставляет интерес возможность закрытия разработанного с использованием FCKEditor кода при помощи коммерческой лицензии CDL – Commercial Distribution License.
   Интерпретаторы Perl, одного из самых широко применяемых языков веб-программирования, лицензируются GPL и Perl Artistic License (PAL), которую можно считать слегка модифицированной версией GNU GPL. То есть, исходный код самого пакета Perl можно как угодно модифицировать, хоть и со множеством оговорок, диктуемых условиями лицензий PAL и GPL – пакет можно поставлять только в комплекте с исходными файлами, модифицированный пакет должен иметь открытый код, с тщательно задокументированными изменениями. Если же вы не планируете создавать какую-либо embedded-версию интерпретатора, а пишите веб-приложения с помощью этого языка – полученный код вообще не попадает под какую-либо из этих двух лицензий. Сложность заключается в том, что при написании на Perl серверных приложений, вы их хоть и можете распространять под любой открытой или своей проприетарной закрытой лицензией, полученный код нельзя защитить от копирования. Та же ситуация наблюдается с java/c#, Phyton и PHP.
   Для популярных скриптовых языков ситуация с двойным лицензированием или заменой GPL своей, более свободной лицензией, очень характерна. Они именно потому и популярны, что ограничения GPL снимаются более либеральным для разработчика вариантом. Та же картина наблюдается с PHP, который изначально поставлялся с GPL и лицензией типа Аpache, а при переходе от третьей к четвертой версии, лицензии GNU было решено убрать, что не очень понравилось сторонникам FSF.   Свою лицензию имеет Python, под лицензией BSD-типа распространяется Tcl.

   JQuery - библиотека написанная на JavaScript, и поддерживающая множество функций для простого написания js сценариев. JQuery позволяет модифицировать HTML как DOM-документ, вешать события на элементы страницы и обеспечивает кросс-браузерность. Библиотека JQuery предлагается к использованию с двойным лицензированием MIT и GPL лицензиями. Эти лицензии позволяют Вам модифицировать и распространять ПО, в том числе и на коммерческой основе, но только в открытом виде.

   JShttprequest - библиотека написанная на JavaScript, позволяющая просто и эффективно использовать Ajax. Данная библиотека распространяется бесплатно с лицензией LGPL. Эти лицензии позволяют Вам модифицировать и распространять ПО, в том числе и на коммерческой основе, даже в закрытом виде, например сжатой специальными упаковщиками.

   Коммерческие лицензии

   Все разновидности коммерческого лицензирования, предусматривают ограничение прав пользователя на любые действия, не связанные напрямую с личной эксплуатацией продукта без вмешательства в его программный код. То есть, это касается распространения, копирования и модификации. Пользователь имеет право «распространять» лицензированную продукцию только самому себе, то есть делать копии для личного использования. Это не относится к лицензиям на бесплатные и условно-бесплатные коммерческие продукты, в которых интерес разработчика заключается не в получении прибыли за продукт, а в рекламировании продукции и фирмы, либо в улучшении своего положения на рынке. Коммерческие лицензии, гарантируют пользователю право на техподдержку и использование доступных обновлений, патчей, плагинов и т.д. Существует также классификация лицензий по количеству пользователей (однопользовательские и многопользовательские) и сроку действия.

1027
3.3 19
Рейтинг: +3.3 , голосов 19
Вы еще не голосовали!
Добавить комментарий
Удалить ответ

Ваш почтовый ящик никогда не будет опубликован
Трудно разобрать цифры? Нажмите на рисунок, чтобы обновить.

Комментариев еще нет, Вы будете первым!

Дополнительно

» С чего начать сайт?

» Установка программ

» Пример создания сайта

» Хостинг и домен

» Оптимизация сайта

» Раскрутка сайта

» Заработок web-мастера

» Примеры PHP/Javascript

» Блог и мои записки

Последние новости

Статьи по рейтингу

» Особенности покупки контента 5.0 1
» Выбор хостинга 4.8 5
» Поисковые системы 4.7 9
» Курс молодого web-мастера 4.6 21
» Где взять бесплатные ссылки 4.5 11
» Что такое сниппеты 4.5 6
» Addstudio - SEO модуль 4.5 4
» Отладка js и CSS 4.4 14
» Стратегия дохода на Sape.ru 4.3 3
» Каталоги и биржи статей 4.3 4