Licencje otwartego oprogramowania – praktyczny przewodnik
W ubiegłym tygodniu miałam przyjemność poprowadzić szkolenie dla programistów jednej z gdańskich firm IT. Szkolenie dotyczyło praktycznych aspektów prawa własności intelektualnej w pracy programisty z naciskiem na otwarte licencje. Z przeprowadzonych przeze mnie rozmów z deweloperami wynika, że wielu programistów na własną rękę szuka w sieci informacji na temat zasad korzystania z otwartych licencji. Niestety, informacje o licencjach nie zawsze przedstawiane są w sposób zrozumiały.
Wychodząc naprzeciw oczekiwaniom programistów postanowiłam przygotować łatwe w odbiorze zestawienie najczęściej spotykanych licencji. Szukasz informacji o otwartych licencjach? Ten tekst powstał właśnie dla Ciebie.
Systemy licencjonowania praw autorskich w internecie
Na początek kilka słów na temat sposobów licencjonowania praw autorskich w internecie oraz modeli licencjonowania programów komputerowych.
Wyróżniamy dwa podstawowe systemy licencjonowania praw autorskich w internecie:
- COPYLEFT
- COPYRIGHT
Copyleft etymologicznie jest odwróceniem znaczenia słowa copyright (wszystkie prawa zastrzeżone). Idea copyleft polega na takim wykorzystaniu systemu praw autorskich, dzięki któremu osiąga sie zupełnie odwrotne cele niż copyright – poszerzenie wolności zamiast jej ograniczenia. Copyleft to natomiast rodzaj systemu licencjonowania praw autorskich, zezwalający na modyfikację pracy i jej dalszą redystrybucję na identycznych warunkach (o systemach licencjonowania praw autorskich w sieci pisałam też tutaj). Zastosowania idei copyleft można znaleźć m.in. w takich licencjach jak: GNU GPL, GNU LGPL, a także BSD czy MIT.
Podstawowym podziałem w kwestii licencjonowania oprogramowania jest podział na:
- model zamknięty (oprogramowanie własnościowe, prawnie zastrzeżone, zamknięte)
- model otwarty (oprogramowanie o otwartym kodzie źródłowym).
Istotą tego podziału jest podejście do praw dawanych użytkownikom oprogramowania. W przypadku oprogramowania własnościowego główną jego cechą jest zastrzeżenie większości praw na rzecz producenta oprogramowania.
Przeciwwagą dla systemu zamkniętych licencji jest model otwarty, w przypadku którego większość praw jest dana użytkownikowi. Najistotniejszą z technologicznego punktu widzenia cechą oprogramowanie udostępnionego na otwartej licencji jest to, że oprogramowanie to jest rozpowszechniane w postaci kodu źródłowego, co umożliwia jego zmiany i jego udoskonalanie. Co do zasady, użytkownik ma prawo swobodnie korzystać z oprogramowania udostępnionego na otwartej licencji. Zasady korzystania z oprogramowania (lub jego elementów) różnią się w zależności od typu licencji. Co to oznacza w praktyce?
GNU GPL – General Public License
GNU GPL to licencja wolnego* i otwartego oprogramowania (obecnie używana jest wersja trzecia – GPLv3) przez Richarda Stallmana i Ebena Moglena na potrzeby projektu GNU.
Celem najszerszej otwartej i wolnej licencji GNU GPL jest przekazanie użytkownikom czterech podstawowych wolności:
- wolność uruchamiania programu w dowolnym celu (wolność 0)
- wolność analizowania, jak program działa i dostosowywania go do swoich potrzeb (wolność 1)
- wolność rozpowszechniania niezmodyfikowanej kopii programu (wolność 2)
- wolność udoskonalania programu i publicznego rozpowszechniania własnych ulepszeń, dzięki czemu może z nich skorzystać cała społeczność (wolność 3)
Ze względu na to, że wszelkie prace bazujące na dziele objętym licencją GPL muszą również być oparte na tej licencji, licencja GPL jest tzw. licencją wirusową (czyli licencją, którą stosuje się do wszelkiego rodzaju dzieł pochodnych). W praktyce oznacza to, że chcąc korzystać z oprogramowania udostępnionego na tej licencji powinieneś udostępnić potem wszystkie efekty swojej pracy (również zmodyfikowany kod źródłowy) na tych samych zasadach.
Jeśli zatem zależy Ci na tym, aby efekty Twojej pracy pozostały w tajemnicy – licencja GNU GPL nie jest dla Ciebie.
Pełen tekst licencji GNU GPL znajduje się tutaj.
GNU LGPL – Lesser General Public License
GNU LGPL to licencja wolnego oprogramowania zaprojektowana jako kompromis między GNU GPL a tzw. liberalnymi licencjami, takimi jak licencja BSD czy licencja MIT (X11).
Najważniejsza różnica pomiędzy licencją LGPL i GPL sprowadza się do tego, że licencja LGPL nakłada ograniczenia określane jako copyleft tylko na poszczególne pliki źródłowe (nie na cały program). To oznacza, że – w przeciwieństwie do licencji GNU GPL – obowiązkiem użytkownika jest udostępnienie tylko kodu źródłowego (plików źródłowych) w wersji pierwotnej bez dzieł pochodnych (a zatem inaczej niż w przypadku licencji GNU GPL).
Pełen tekst licencji LGPL można znaleźć tutaj.
BSD – Berkeley Software Distribution License
BSD to tzw. liberalna licencja, która zezwala użytkownikowi nie tylko na modyfikacje kodu źródłowego i jego rozprowadzanie w zmodyfikowanej postaci, ale także na rozprowadzanie produktu bez postaci źródłowej czy nawet włączenia go do zamkniętego oprogramowania pod warunkiem załączenia do produktu informacji o autorach oryginalnego kodu i treści licencji.
Obecnie wielu programistów używa 2-klauzulowej licencji BSD (tzw. zmodyfikowanej licencji BSD), która funkcjonalnie jest identyczna z licencją MIT (zwaną także licencją X11). Najbardziej znane produkty rozprowadzane na licencji BSD to m.in. rodzina systemów operacyjnych BSD (np. FreeBSD, NetBSD i OpenBSD).
Pełen tekst licencji BSD znajduje się tutaj.
MIT – licencja X11
MIT to jedna z najprostszych i najbardziej liberalnych licencji otwartego oprogramowania. Daje użytkownikowi nieograniczone prawo do używania, kopiowania, modyfikowania i rozpowszechniania (w tym sprzedaży) oryginalnego lub zmodyfikowanego programu w postaci binarnej lub źródłowej. Jedynym wymaganiem jest, by we wszystkich wersjach zachowano warunki licencyjne i informacje o autorze.
Według statystyk przygotowanych przez GitHub, licencja MIT jest najczęściej używaną licencją wśród oprogramowania hostowanego w tym serwisie.
Pełen tekst licencji MIT dostępny jest tutaj.
Apache 2.0 – Apache Software License
Apache 2.0 to licencja wolnego oprogramowania autorstwa Apache Software Foundation. Podobnie jak licencje BSD czy MIT, licencja Apache dopuszcza użycie przez użytkownika kodu źródłowego zarówno na potrzeby wolnego oprogramowania, jak zamkniętego oprogramowania komercyjnego.
Pełen tekst licencji Apache 2.0 można znaleźć tutaj.
Licencje otwartego oprogramowania vs licencje wolnego oprogramowania
Na koniec warto wyjaśnić, że wolne oprogramowania i otwarte oprogramowanie to pojęcia pokrewne ale nie tożsame. Licencje otwartego oprogramowania są w praktyce bardziej liberalne od licencji wolnego oprogramowania (stworzonych przez Free Software Foundation).
Wg Richarda Stallmana – pomysłodawcy projektu GNU i założyciela fundacji Free Software Foundation – zarówno termin wolne oprogramowanie, jak i termin otwarte oprogramowanie opisują niemal tę samą kategorię oprogramowania, ale oznaczają poglądy oparte na fundamentalnie odmiennych wartościach. Dla niego open source to metodologia tworzenia oprogramowania, a wolne oprogramowanie to ruch społeczny.
Dla ruchu wolnego oprogramowania, wolne oprogramowanie jest ważne etycznie, ponieważ tylko wolne oprogramowanie respektuje podstawowe wolności użytkownika (wolność użytkowania, wolność analizy i zmiany kodu źródłowego oraz wolność do rozpowszechniania go wraz ze zmianami lub bez zmian). Dla porównania, filozofia otwartego oprogramowania rozważa kwestie, jak tworzyć oprogramowanie „lepiej” wyłącznie w sensie praktycznym.**
W praktyce, oprogramowanie otwartego źródła opowiada się za kryteriami nieco luźniejszymi od wolnego oprogramowania. Warto dodatkowo zapamiętać, że wszystkie programy udostępnione jako wolne oprogramowanie kwalifikują się także jako otwarte oprogramowanie.
***
*oprogramowanie, aby można je było nazwać wolnym, musi spełniać kilka podstawowych założeń, które zostały opublikowane przez Free Software Foundation.
** https://www.gnu.org/
Ten tekst był dla Ciebie pomocy? Jeśli tak to prześlij go dalej tak, aby dotarł do największej grupy zainteresowanych.
Masz dodatkowe pytania? Napisz do nas.
Zdjęcie autorstwa ronstik pochodzi z banku zdjęć Fotolia.