AAA

Historia rozwoju
oprogramowania open source

Krzysztof Kowalczyk

Artykuł ma na celu zapoznanie czytelnika z tematyką oprogramowania open source. Przedstawia historię rozwoju oraz podstawowy model tworzenia tego rodzaju kodu. Wyjaśnia, dlaczego rozwój tego oprogramowania był jednym z ważnych źródeł rozwoju internetu i e-biznesu.

Wstęp

Pojawienie i upowszechnienie się oprogramowania open source zwiększyło konkurencję na rynku oprogramowania, co szczególnie w segmencie systemów operacyjnych zaowocowało obniżeniem cen. Szersze zastosowanie tego oprogramowania daje szansę na obniżenie kosztów funkcjonowania infrastruktury publicznej we wszystkich krajach oraz na likwidację cyfrowego wykluczenia (digital divide). Należy też zwrócić uwagę na fakt, że pierwszy raz w historii pojawił się całkowicie darmowy czynnik produkcji - w gospodarce informacyjnej do wytwarzania i przetwarzania informacji można używać dostępnego za darmo oprogramowania open source. Idea open source ma już wieloletnią historię, a rozwój tego rodzaju oprogramowania wpłynął na rozwój internetu i odwrotnie, rozwój internetu umożliwił rozwinięcie się w pełni rozproszonego modelu tworzenia tego oprogramowania. Wiele przedsięwzięć e-biznesowych korzysta z oprogramowania open source w celu obniżenia kosztów wejścia na rynek i codziennej działalności.

Definicje

Terminem free software określa się oprogramowanie, którego licencja daje użytkownikom następujące cztery prawa1:

  • prawo do uruchamiania programu w dowolnym celu;
  • prawo do badania sposobu, w jaki działa program, oraz do adaptacji programu do własnych potrzeb. Warunkiem zagwarantowania tego prawa jest dostęp do kodu źródłowego;
  • prawo do redystrybucji kopii programu;
  • prawo do poprawiania programu oraz udostępniania modyfikacji wszystkim zainteresowanym. Warunkiem zagwarantowania tego prawa jest dostęp do kodu źródłowego.

W Polsce free software z reguły tłumaczy się jako wolne oprogramowanie i tego terminu używają Ruch Wolnego Oprogramowania (RWO), działający jako sekcja Internet Society Polska oraz Forum Rozwoju Wolnego Oprogramowania, powołane przy Ministerstwie Nauki i Informatyzacji. Ze względu na kryteria, jakie musi spełniać free software (zagwarantowanie pewnych praw, czyli swobód), bardziej właściwym wydaje się być określenie swobodne oprogramowanie, które pozwala uniknąć dwuznaczności słowa wolne (wolne jako powolne lub wolne jako swobodne). Podwójne znaczenie słowa free w języku angielskim (swobodne lub darmowe) doprowadziło do powstania terminu open source, którym określa się oprogramowanie spełniające następujące wymagania2:

  • licencja musi dawać prawo do swobodnej redystrybucji oprogramowania;
  • program musi zawierać kod źródłowy. Program może być rozpowszechniany bez kodu źródłowego, ale w takim przypadku kod musi być publicznie dostępny;
  • licencja musi zezwalać na modyfikacje programu i produktów pochodnych, oraz na ich rozpowszechnianie na prawach oryginalnej licencji;
  • licencja może wymagać rozpowszechniania licencji w formie dodatkowych modułów, dołączanych do oryginału w czasie kompilacji, w celu ochrony integralności oryginalnego kodu źródłowego;
  • brak dyskryminacji pojedynczych osób lub grup społecznych;
  • brak ograniczenia pola zastosowań;
  • licencja programu musi obowiązywać wszystkich jego użytkowników, bez konieczności zawierania dodatkowych umów;
  • licencja nie może być ograniczona do pojedynczego produktu;
  • licencja nie może tworzyć ograniczeń w stosowaniu innych programów rozpowszechnianych wraz z oprogramowaniem, którego dotyczy;
  • licencja musi być technologicznie neutralna.

Historia

Oprogramowanie open source (którego najbardziej znanym przedstawicielem jest system operacyjny Linux) ma już ponad dwudziestoletnią historię. W 1983 r.3 powstał projekt GNU mający na celu powrót do swobodnego, akademickiego podejścia do tworzenia i posługiwania się oprogramowaniem. Podejście to było charakterystyczne dla początków rozwoju informatyki w latach 60. i pierwszej połowie 70., jednak w kolejnej dekadzie nastąpiła komercjalizacja oprogramowania i ograniczenie dostępu do kodu źródłowego. W 1985 r.4 twórcy projektu GNU (m.in. Richard Stallman) założyli Free Software Foundation (FSF), której celem było wspieranie projektu GNU oraz rozwoju oprogramowania, które może być dowolnie uruchamiane, modyfikowane i rozpowszechniane. W tym celu FSF zaproponowała nowy rodzaj licencjonowania oprogramowania - wymuszający dziedziczność otwartości kodu i swobody dysponowania nim - pod nazwą GNU General Public License (GPL).5 GPL wymaga, aby każdy program zawierający komponenty swobodnego oprogramowania był w całości oferowany jako swobodne oprogramowanie.6 Sam Stallman nazwał swoją licencję copyleft ponieważ dawała pełne prawa do kopiowania oprogramowania.

Początkowym celem FSF (w wyniku decyzji koncernu AT&T o komercjalizacji systemu UNIX) było stworzenie kompletnego, darmowego systemu operacyjnego kompatybilnego z systemem Unix, co udało się osiągnąć dopiero po pojawieniu się na początku lat 90. jądra Linuksa i w wyniku tego powstania systemu operacyjnego GNU/Linux. Działalność Fundacji przyczyniła się też do powstania darmowych odpowiedników komercyjnych kompilatorów, edytorów tekstu czy innych narzędzi. W drugiej połowie lat 90. oprogramowanie o dostępnym kodzie źródłowym takie jak systemy operacyjne Linux i FreeBSD, serwer Apache czy język skryptowy Perl zaczęło być obiektem szerszego zainteresowania ze strony nowej grupy odbiorców - środowiska biznesowego.7 Niektórzy programiści rozwijający swobodne oprogramowanie zdecydowali, że aby podtrzymać to zainteresowanie należy odciąć się od skojarzeń z tanim lub wręcz darmowym oprogramowaniem, co wynikało z podwójnego znaczenia nazwy FSF. Nowe określenie open source oraz jego definicja (OSD - Open Source Definition) zostały stworzone w roku 1997 przez B. Perensa i E. Raymonda na podstawie licencji systemu Debian GNU/Linux. Celem zmian w stosunku do licencji GPL i terminu free software było przekonanie użytkowników korporacyjnych do tego rodzaju oprogramowania. Powstanie OSD zaowocowało dyskusjami nt. darmowości oprogramowania oraz samej terminologii. Pojęcie open source używane jest w kontekście zdobywania informacji z powszechnie dostępnych źródeł dla celów wywiadowczych, politycznych i gospodarczych. Część środowiska uważała, że termin open jest już dostatecznie nadużywany w innych dziedzinach, inni preferowali istniejący termin free software. B. Perens uznał, że nadużywanie proponowanej nazwy nie jest tak szkodliwe dla idei wolnego oprogramowania, jak podwójne znaczenie wyrazu free w j.angielskim - odnoszącego się albo do wolności (liberty) albo do ceny (price). Kontekst ceny był najczęściej używany w przemyśle komputerowym. Kiedy firma Netscape zdecydowała się otworzyć kod swojej przeglądarki skontaktowała się z E. Raymondem, który napisał kilka opracowań nt. fenomenu wolnego oprogramowania i kultury wokół niego narosłej. Zarząd Netscape'a był pod wrażeniem eseju E. Raymonda pt. The Cathedral and the Bazaar, książki o projektach free software. Raymond nalegał, aby licencja Netscape'a była zgodna z wytycznymi - po to, by została uznana za free software. W 1998 r. w reakcji na udostępnienie kodu przeglądarki Netscape powstała fundacja Open Source Initiative.8

Model tworzenia oprogramowania

Tworzenie większości oprogramowania open source odbywa się w ramach rozproszonej pracy programistów współpracujących poprzez internet. Model ten jest wydajny dzięki uniknięciu silnego reżimu własności intelektualnej (np. brak możliwości udostępnienia kodu osobom trzecim) oraz równoczesnemu projektowaniu i testowaniu poszczególnych modułów oprogramowania. Programiści współpracują ze sobą, mimo braku natychmiastowych korzyści finansowych. Tłumaczyć to można potrzebą samorealizacji oraz wzrostem reputacji na rynku i zyskaniem doświadczenia, co może zaowocować znalezieniem lepiej płatnej pracy.

Podsumowanie

Aplikacje open source zyskują rosnącą popularność. Serwery z zainstalowanym systemem operacyjnym Linux w roku 2002 stanowiły 11% liczby serwerów, a do 2007 roku mają osiągnąć 25% rynku.9 Firmy korzystające z Linuksa to m.in. Google, Amazon i PayPal.10 Od lat wiodącym (obecnie ponad 65% rynku) serwerem WWW jest serwer Apache.11 W oparciu o ten serwer działają strony m.in. IBM, Hewlett-Packard, Deutsche Bank i Europejskiego Banku Centralnego (ECB).12 Oprogramowanie open source jest tak popularne w zastosowaniach sieciowych ze względu na większą od oprogramowania komercyjnego o zamkniętym kodzie źródłowym13 stabilność oraz możliwość dostosowywania. W ogólnym przypadku przyczyn popularności należy dopatrywać się jednak głównie w prawach, jakie licencje, w oparciu o które oprogramowanie to jest rozpowszechniane, dają użytkownikom. Głównie chodzi tu o możliwość wielokrotnej, bezpłatnej instalacji, poprawiania kodu oprogramowania oraz wynikającą z tego możliwość uzyskania wsparcia technicznego, nawet jeśli pierwotny twórca oprogramowania nie będzie w stanie dalej go zapewnić, co ma duże znaczenie dla zapewnienia ciągłości działania przedsiębiorstw.

Bibliografia

  • B. Behlendorf, Open Source as a Business Strategy, Open Sources: Voices from the Open Source Revolution, O'Reilly, 1999
  • S. Bradner, The Internet Engineering Task Force, Open Sources: Voices from the Open Source Revolution, O'Reilly, 1999
  • G. Carbone, D. Stoddard, Open Source Enterprise Solutions: Developing an E-Business Strategy, Wiley Computer Publishing, 2001
  • C. DiBona, S. Ockman, M. Stone, Open Sources: Voices from the Open Source Revolution, O'Reilly, 1999
  • M. Fink, The Business and Economics of Linux and Open Source, Prentice Hall, 2003
  • M. K. McKusick, Twenty Years of Berkeley Unix: From AT&T-Owned to Freely Redistributable, Open Sources: Voices from the Open Source Revolution, O'Reilly, 1999
  • E. Raymond, The Brief History of Hackerdom. "Open Sources: Voices from the Open Source Revolution", O'Reilly, 1999
  • D. K. Rosenberg, Open Source: The Unauthorized White Papers, IDG Books, 2000
  • J. Sandred,Managing Open Source Projects, Wiley&Sons, 2001
  • R. Stallman, The GNU Operating System and the Free Software Movement. Open Sources: Voices from the Open Source Revolution, O'Reilly, 1999
  • M. Tiemann, Future of Cygnus Solutions: An Entrepreneur's Account, Open Sources: Voices from the Open Source Revolution, O'Reilly, 1999
  • L. Torvalds, The Linux Edge. "Open Sources: Voices from the Open Source Revolution", O'Reilly, 1999
  • P. Vixie, Software Engineering. "Open Sources: Voices from the Open Source Revolution", O'Reilly, 1999
  • R. Young, Giving It Away: How Red Hat Software Stumbled Across a New Economic Model and Helped Improve an Industry, Open Sources: Voices from the Open Source Revolution, O'Reilly, 1999
INFORMACJE O AUTORZE

KRZYSZTOF KOWALCZYK
Autor jest absolwentem SGH i programu CEMS, obecnie pracownikiem Katedry Informatyki Gospodarczej SGH oraz firmy McKinsey&Company. Jest członkiem zarządu Internet Society Polska.

 

Przypisy

1 www.gnu.org/philoso... 15.03.2004

2 www.opensource.org/... 15.03.2004

3 www.gnu.org/gnu/gnu... 15.03.2004

4 www.gnu.org/gnu/the... 15.03.2004

5 www.fsf.org/license... 15.03.2004>

6 B. Behlendorf, Open Source as a Business Strategy, Open Sources: Voices from the Open Source Revolution, O'Reilly, 1999

7 ibidem

8 www.opensource.org/... 01.03.2003.

9 Raporty IDC, Goldman Sachs, 2003

10 www.eweek.com/artic... 22.03.2003

11news.netcraft.com/a... 22.03.2003

12 ebusiness.gbdirect.... 22.03.2003

13 ang. proprietary code