Open source a oprogramowanie zamknięte

Filozofia open source to wspólny sposób myślenia o oprogramowaniu i współpracy przy jego rozwijaniu w ramach społeczności open source. Fundamentem tej filozofii jest wolność intelektualna i pewne podstawowe zasady: transparentność, współpraca, dotrzymywanie zobowiązań, inkluzywność i podejście społecznościowe. Wymiana spostrzeżeń i pomysłów oraz tworzenie oprogramowania przez społeczności stymuluje postęp twórczy, naukowy i techniczny w takich dziedzinach, jak edukacja, administracja publiczna, prawo, ochrona zdrowia i produkcja. Ten ruch stworzył globalnej społeczności warunki do współdziałania, dzielenia się i wzajemnej pomocy w osiąganiu celów indywidualnych i grupowych poprzez właściwe wykorzystanie kodu źródłowego.

Oprogramowanie open source to dzieło zespołowe, które nie istnieje bez społeczności dotrzymującej podjętych zobowiązań dotyczących produkcji i wzajemnej weryfikacji. Jego podstawą jest wykorzystanie, doskonalenie i wzajemne udostępnianie kodu źródłowego. Programiści dzielą się spostrzeżeniami, pomysłami i kodem, by tworzyć bardziej innowacyjne oprogramowanie, zarówno indywidualnie, jak i w kolektywach. To skalowalne i elastyczne podejście do oprogramowania sprawia, że każda osoba mająca dostęp do kodu źródłowego może go modyfikować, ulepszać i dalej rozpowszechniać, aby był bardziej uniwersalny i dostępny. Oprogramowanie open source działa na bazie kolektywnej produkcji i masowej współpracy, co z punktu widzenia użytkowników końcowych oznacza większą stabilność i równowagę w procesie tworzenia oprogramowania.  

Oprogramowanie closed source to zamknięte, zastrzeżone oprogramowanie, które nie jest rozpowszechniane publicznie. Oprogramowanie takie jest zaszyfrowane, zatem tylko jego pierwotni autorzy mają prawo do kopiowania, modyfikowania, aktualizowania i edytowania kodu źródłowego. W modelu oprogramowania zamkniętego uprawnienia użytkownika końcowego w odniesieniu do aplikacji są ograniczone — użytkownikom nie wolno jest modyfikować, udostępniać, kopiować ani wtórnie publikować kodu źródłowego.

Oprócz oprogramowania open source i closed source wyróżnia się również tak zwane oprogramowanie wolne/otwarte, czyli FOSS (Free/Open Source Software), za którym stoi szczególna filozofia. Fundacja Wolnego Oprogramowania (FSF — Free Software Foundation) chroni swobody użytkowników oraz całą inicjatywę open source (OSI Open Source Initiative), dbając o wysoką wartość techniczną i niezawodność oprogramowania. Dostępny jest szereg różnych licencji na wolne oprogramowanie, które można wykorzystywać, modyfikować i sprzedawać na zasadach komercyjnych, między innymi licencje GPL, LGPL i BSD.

Poniżej wymieniono niektóre z najpopularniejszych licencji na oprogramowanie open source:

  • MIT License©: MIT License to licencja na wolne oprogramowanie, która — z pewnymi ograniczeniami — dopuszcza modyfikowanie oryginalnego kodu przez użytkowników. 
  • GNU General Public© (GPL): pod nazwą GNU kryje się szereg licencji na wolne oprogramowanie, które gwarantują użytkownikom końcowym możliwość uruchamiania, analizowania, udostępniania i modyfikowania oprogramowania. 
  • Apache®: Apache License 2.0 to licencja na wolne oprogramowanie, która dopuszcza używanie, modyfikowanie i rozpowszechnianie oprogramowania przez użytkowników w dowolnym celu. 
  • BSD: ta licencja nakłada mniej ograniczeń na programistów, zezwalając użytkownikom na używanie i modyfikowanie kodu bez obowiązku udostępniania tych modyfikacji.
  • MySQL™: MySQL to system zarządzania bazą danych będący oprogramowaniem open source udostępnianym na dwóch licencjach — MySQL Standard Edition i MySQL Enterprise Edition.
  • SUSE: SUSE Linux to system zbudowany na bazie jądra Linux, będącego oprogramowaniem open source, i rozpowszechniane z systemami i oprogramowaniem aplikacyjnym.
  • Ubuntu®: Ubuntu to dystrybucja systemu Linux złożona z oprogramowania wolnego i oprogramowania open source, wydawana dla komputerów osobistych, chmury i internetu rzeczy.

Historia systemów Unix® i Linux

Prace nad systemem Unix rozpoczęły się w roku 1969 w oddziale badawczo-rozwojowym Bell Labs koncernu AT&T®. Miał to być produkt zastrzeżony, ale z możliwością udostępniania na mocy licencji.  W kolejnych dziesięciu latach Unix doczekał się wielu wersji, w tym wersji V6 — pierwszej udostępnianej poza Bell Labs.

Kod tej wersji systemu szybko zwrócił na siebie uwagę społeczności akademickiej ze względu na charakter zastosowanego w nim nowego języka. Uniwersytet Kalifornijski w Berkeley podjął prace nad swoim własnym systemem Unix i w efekcie już wkrótce powstała wersja akademicka pod nazwą Berkley Software Distribution (na licencji BSD). Jednocześnie firma AT&T rozwijała własną wersję Uniksa, przekształcając go w System V. Te dwie wersje zostały ostatecznie scalone w jedną, siódmą edycję systemu Unix, która ewoluowała dalej, dając początek takim programom, jak: Sun Solaris, FreeBSD, NetBSD i OpenBSD.

W roku 1984 Richard Stallman opracował bezpłatny klon systemu Unix pod nazwą GNU (GNU’s Not Unix). Ta wersja została „otwarta” — dozwolone było jej dowolne wykorzystanie, modyfikowanie i rozpowszechnianie. W roku 1991 Linus Torvalds stworzył jądro systemu operacyjnego znane jako „Linux” lub jądro Linux. W połączeniu z komponentami oprogramowania FSF i BSD Linux stał się kompletnym systemem operacyjnym; obecnie może działać na systemach o kilku różnych architekturach, został włączony do oferty dostawców tradycyjnego Uniksa i jest objęty ich wsparciem.


Korporacyjne oprogramowanie open source

Korporacyjne oprogramowanie open source to coś więcej niż tylko open source — to zintegrowana biblioteka oprogramowania open source, dostępna na licencji dającej użytkownikom dużą swobodę i działająca w systemie open source. Aby zaliczać się do klasy korporacyjnego oprogramowania open source, produkt musi być przetestowany, dopasowany do wymagań przedsiębiorstw i zbadany pod kątem bezpieczeństwa przez zespół, który jest w stanie zareagować na ewentualne problemy w tym obszarze. Korporacyjne oprogramowanie open source oferuje także takie udogodnienia, jak pojedyncze logowanie (SSO — single sign-on) oraz integracja z platformami SSO i zarządzanie katalogami.

Korporacyjne środowiska informatyczne wymagają znaczących inwestycji i starannego planowania, przez co bywa, że oprogramowanie staje się przestarzałe zanim zostanie zainstalowane. Z wdrożeniem takich aplikacji wiąże się często konieczność zorganizowania dodatkowych szkoleń i uzyskania certyfikatów wskazanych w umowach o świadczenie usług. Jednak korporacyjne oprogramowanie open source ma przewidywalny cykl życia, a różne kategorie informacji i komponenty rozwijane są w różnym tempie. Ważne składniki oprogramowania mają długi cykl życia — na przykład w przypadku systemu Red Hat® Enterprise Linux jest to 10 lat.   

Wiele firm i osób prywatnych woli, zamiast oprogramowania zastrzeżonego lub komercyjnego, używać oprogramowania open source, które jest wszechstronne, bezpieczne, stabilne, a przy tym ewoluuje, ma wsparcie społeczności i zapewnioną dostępność szkoleń.  Do korzyści ze stosowania oprogramowania open source należą: niższe koszty, możliwość swobodnej adaptacji kodu do własnych potrzeb oraz brak przywiązania do jednego dostawcy (jako że oprogramowanie ma wsparcie całej społeczności). Oprogramowanie open source ma także pewne wady, do których należą: niższa jakość wsparcia i dokumentacji, wysoki poziom komplikacji, agresywne reklamy i słabości zabezpieczeń.

Również oprogramowanie zastrzeżone ma słabości, takie jak ryzyko dezaktualizacji, niepotrzebnie duża objętość, wyższe i nieprzewidywalne koszty, nieprzejrzyste umowy licencyjne i zależność od jednego dostawcy.  Jednak dla niektórych firm współpraca z jednym dostawcą jest atrakcyjna, ponieważ zapewnia centralizację zakupów, dostęp do skalowalnych produktów klasy korporacyjnej, profesjonalną komunikację, regularne aktualizacje, integrację z aplikacjami i innymi produktami, a także nie wymaga umiejętności programistycznych. 


Historia i ewolucja

Zaangażowanie w rozwój technologii Open Source

Wiele dużych przedsiębiorstw, w tym IBM, od dawna na różne sposoby angażuje się w rozwój idei open source — od wspierania nowych społeczności, poprzez udział w opracowywaniu licencji aż po działania na rzecz nadzoru i standaryzacji.

Elastyczne architektury łańcucha bloków

Dowiedz się więcej o Hyperledger Fabric, architekturze łańcucha bloków, która pomaga innowacyjnym organizacjom w transformacji działalności na skalę globalną.

Zasoby

Specjalistyczna wiedza w dziedzinie korporacyjnego oprogramowania open source

Dowiedz się, jak Twoje przedsiębiorstwo może tworzyć, wdrażać i skalować oprogramowanie open source, by budować otwarte środowisko korporacyjne.

Nowe otwarte projekty

Nasi programiści tworzą nowy kod open source w takich dziedzinach, jak łańcuch bloków, kontenery i sztuczna inteligencja.

Badanie rynku przeprowadzone przez firmę Forrester

Dowiedz się, jak przedsiębiorstwa wykorzystują technologię open source do wdrożeń oprogramowania na dużą skalę.

Rozwiązania

Serwery linuksowe

Zintegruj system Linux ze swoją infrastrukturą informatyczną, lokalnie i w chmurze, by zyskać większą elastyczność i kontrolę.

Linux na serwerach IBM Z

System operacyjny Linux na platformie mainframe IBM Z zapewnia ochronę danych i cyberbezpieczeństwo w hybrydowym środowisku wielochmurowym.

IBM LinuxONE

Odkryj bezpieczny serwer dla oprogramowania open source , który zapewni newralgicznym aplikacjom optymalny poziom bezpieczeństwa i skalowalność.

Korporacyjny Linux na serwerach Power Systems™

Serwery i otwarta infrastruktura do zarządzania wielkimi wolumenami danych dla nowoczesnych aplikacji.

System operacyjny IBM AIX®

Skalowalny, oparty na standardach system operacyjny z niezawodną konfiguracją zabezpieczeń, niezrównanym poziomem dostępności i gwarantowaną ochroną inwestycji.

Aplikacje Red Hat w chmurze IBM Cloud

Red Hat otwiera drogę do tworzenia aplikacji przeznaczonych do wdrożeń w publicznej lub prywatnej chmurze IBM.