do góry         o książce


6.5 Otwarte Źródła i Wolność Oprogramowania

W roku 1984 Richard Stallman, naukowiec z MIT (Massachusetts Institute of Technology), stworzył projekt GNU (Gnu to Nie Unix) nakierowany na propagowanie darmowego i dostępnego bez ograniczeń wraz z kodem źródłowym (rozdział 3.2) oprogramowania. W celu jego finansowania powstała Fundacja Wolnego Oprogramowania (Free Software Foundation; free znaczy również ,,darmowy'', ale nacisk kładziony jest na znaczenie związane z wolnością). Po kilku latach do kompletu brakowało już tylko głównej części systemu operacyjnego, tzw. jądra (kernel).

W roku 1991 Linus Torvalds, student Uniwersytetu w Helsinkach, w oparciu o źródła Minixa6.10i oprogramowanie udostępniane przez projekt GNU, zaczął pisać jądro unixowego systemu operacyjnego. Gdy ogłosił swój projekt w Internecie, znalazł tysiące współpracowników i rozwój potoczył się lawinowo.

Rysunek 6.1: Richard Stallman i aktualne oraz tradycyjne logo Free Software Foundation
\includegraphics [width=.43\columnwidth]{figures/RMS.eps} \includegraphics [width=.35\columnwidth]{figures/fsf_logo.eps} \includegraphics [width=.2\columnwidth]{figures/gnu.eps}

Współpraca tysięcy ochotników doprowadziła do powstania imponującego oprogramowania, często lepszego od komercyjnych produktów największych firm. Internet odgrywa tu wciąż kluczową rolę: zarówno współpraca przy tworzeniu, jak i udostępnianie gotowych programów, byłyby bez niego właściwie niemożliwe. Można sobie wprawdzie wyobrazić wymianę dyskietek pocztą i spotkania ludzi (często z różnych kontynentów) pracujących nad tym samym projektem, ale bardziej prawdopodobne wydaje się to w przypadku firm komercyjnych. Dla większości ochotników (a oni głównie tworzą prawdziwie ,,wolne'' oprogramowanie) już koszty podróży byłyby zapewne poważną barierą. Internet zaś znosi odległości, i współpraca pięciu osób z pięciu różnych kontynentów może być tańsza i łatwiejsza, niż gdyby mieli dojeżdżać do pracy mieszkając w tym samym mieście.

Gdy sukces tej nowej ideologii i skala zjawiska stały się oczywiste 6.11, ruchem zaczęli się interesować również wielcy producenci, którzy w sektorze systemów przeznaczonych tradycyjnie dla ,,dużych'' komputerów tracili rynek na rzecz MS Windows i Windows NT. Jednak warunki, na których udostępniał swe programy projekt GNU ( http://www.gnu.org), były dla firm komercyjnych zbyt radykalne, toteż powstał ruch Otwartych Źródeł (Open Source). W jego (luźnych) ramach powstaje szereg szczególnych licencji, na których coraz więcej firm udostępnia kod źródłowy swoich produktów. Różnią się one między sobą -- czasami znacząco -- w aspektach prawnych. Pierwsza z nich Powszechna Licencja Publiczna (GNU General Public License, GPL) daje użytkownikowi prawo modyfikacji kodu źródłowego do swoich potrzeb oraz gwarantuje, że rozpowszechniane według tej licencji programy nie staną się pewnego dnia produktami komercyjnymi. Na zasadach tej licencji udostępniane są m.in. źródła systemu GNU/Linux i całe oprogramowanie projektu GNU. Podobne licencje mają program Apache (na którym opiera się większość serwerów WWW), LaTex, Perl, X11, BSD (Berkeley Software Distribution, m.in. unixowy system operacyjny). Mniej ,,wolności'' dają licencje Netscape czy Javascript, jednak ich forma jest wciąż akceptowana przez ruch Wolnego Oprogramowania, w przeciwieństwie do licencji, na których udostępniają źródła swych systemów firmy Apple i Sun.

Niezależnie od tych różnic, czasami subtelnych i niemal ideologicznych, rozpowszechnianie idei dostępności kodów źródłowych należy uznać za niewątpliwy postęp. Choćby dlatego, że analiza kodu źródłowego przez tysiące zapaleńców z całego świata pozwala na szybsze i efektywniejsze usuwanie błędów, dzięki czemu programy stają się bardziej niezawodne.

Dla zwykłego użytkownika dostępność źródeł nie oznacza na szczęście, że musimy sami kompilować programy z kodów źródłowych. W większości przypadków wystarcza możliwość analizy kodu źródłowego. Na przykład: krążyła swego czasu plotka, że pewna przeglądarka Internetowa ,,przy okazji'' łączenia nas ze stronami WWW producenta przesyła bez naszej wiedzy informacje o zainstalowanych w naszym komputerze programach itp. Oczywiście, w przypadku poważnej firmy byłoby to nie do pomyślenia. Jednak całkowicie pewne udowodnienie, że tak nie jest, jest w przypadku programu w wersji wykonywalnej (bez kodu źródłowego) dość skomplikowane. Natomiast jeśli kompletne kody źródłowe programu dostępne są dla wszystkich zainteresowanych (jak np. w przypadku Netscape), to możemy mieć pewność, że gdyby ktoś znalazł w nich taką ,,furtkę'', ogłosiłby to natychmiast w Internecie i wybuchłby skandal.

Setki amatorów i profesjonalistów przeglądają każdego dnia kody źródłowe systemów i programów spod znaku Otwartych Źródeł. Znalezienie błędu, np. dziury w zabezpieczeniach poważnego systemu, daje dziś więcej niż możliwość włamania do jakiegoś słabo zabezpieczonego komputera -- może zastąpić dyplom w staraniach o dobrą pracę.

[ ] [ ]


do góry o książce
Dalej: A. Kilka dat z historii Do góry: 6. Przejawy rewolucji cyfrowej Wstecz: 6.4 Praca na odległość