Open Source: znaczenie, zalety, przykłady i więcej
Oprogramowanie open source, w skrócie OSS, to termin określający oprogramowanie komputerowe, które jest oferowane wraz z kodem źródłowym. Taki pakiet pozwala użytkownikom czytać, modyfikować i rozpowszechniać go według własnego uznania.
Kultura OSS ma swoje korzenie w początkach programowania komputerowego. Programiści chętnie dzielili się swoimi kodami, co umożliwiło uczenie się od siebie nawzajem i rozwijanie zestawu umiejętności.
Kolejnym celem udostępniania kodu oprogramowania jest jego ulepszanie, ponieważ każdy, kto ma odpowiednie umiejętności, może go modyfikować i rozpowszechniać. Prowadzi to ostatecznie do lepszego oprogramowania, które często jest również tanie lub bezpłatne.
W tym poście omówiono ogólnie oprogramowanie typu open source, w tym początki tego ruchu, jego osiągnięcia i wpływ, jaki wywarło ono na branżę inżynierii oprogramowania.
Internet, jaki wszyscy znamy, opiera się głównie na oprogramowaniu typu open source. Zatem bez OSS mielibyśmy zupełnie inną sieć.
Z serwerów internetowych, takich jak Apache i Nginx do środowisk skryptowych, takich jak PHP, JavaScript i Python. Nawet wytrzymałe serwery baz danych, takie jak MySQL, owoce ruchu open source są wszędzie w sieci.
Darmowe i otwarte oprogramowanie umożliwiło małym graczom korzystanie z potężnych narzędzi, które wcześniej były zarezerwowane dla dużych korporacji z głębokimi kieszeniami. To z kolei pomogło otworzyć drzwi dla jeszcze bardziej ekscytujących wydarzeń.
Według nich oprogramowanie typu open source pomogło także użytkownikom zaoszczędzić około 60 miliardów dolarów rocznie ten raport 2008. Do zadowolonych klientów zaliczają się wszyscy – od osób fizycznych po małe firmy, firmy internetowe, agencje rządowe, a nawet instytucje finansowe.
Historia oprogramowania open source
Ruch open source można prześledzić od początków programowania komputerowego i kultury hakerskiej z lat 1970. Już na początku programiści dzielili się swoimi pracami z innymi hakerzy z powodów innych niż interesy korporacyjne.
Jednakże pierwszy większy ruch rozpoczął się w 1983 roku, kiedy Richard Stallman uruchomił GNU Projekt. W 1985 roku założył także Fundację Wolnego Oprogramowania, aby wspierać ten rozwijający się ruch. Ten ruch wolnego oprogramowania stał się podstawą wszystkiego, od Linuksa po MySQL i większość innych technologii, które napędzają dzisiejszy Internet.
W tamtych czasach większość prywatnych programistów i hakerów zadowalała się tworzeniem i dystrybucją wolnego oprogramowania wśród wszystkich, którym zależało. Nienawidzili także wielu korporacji programistycznych i ich chciwości. Zatem stworzenie darmowej wersji dowolnego większego, prawnie zastrzeżonego oprogramowania było fajnym hackiem.
Z tych powodów większość korporacji dystansowała się od pozornie antykapitalistycznego Ruchu Wolnego Oprogramowania aż do lutego 1998 roku. To właśnie wtedy firma Netscape wypuściła swoją popularną wówczas przeglądarkę internetową „Netscape Communicator” jako wolne oprogramowanie, dając początek Mozilla.org i Firefoksa. Dwa projekty, które również pomogły w kształtowaniu historii Internetu.
Wielu korporacjom nie podobało się podejście Free Software Foundation i termin „wolne oprogramowanie”. Wielu z tych dostawców oprogramowania chciało nawet udostępnić część swojego oprogramowania jako programy bezpłatne, inne zaś jako projekty zastrzeżone, zatem musiała istnieć alternatywa.
Inicjatywa Open Source
Bruce Perens i Eric S. Raymond, autor „Katedry i Bazaru”, również założyli w 1998 roku Inicjatywę Open Source, zainspirowaną publikacją kodu przeglądarki Netscape.
Inicjatywa ta prowadzi obecnie opensource.org stronie internetowej i miało fundamentalne znaczenie w promowaniu pojęcia „oprogramowania open source” i korzystania z takich programów.
Inicjatywa Open Source jest postrzegana jako organizacja bardziej poprawna politycznie. Dlatego na przestrzeni lat przyciągnął więcej projektów, programistów i wsparcia korporacyjnego. Obejmują one systemy Linux, WordPress, Wikimedia, Mozilla i wiele innych dużych organizacji.
OSI używa 10-punktowej definicji w celu określenia, czy dany pakiet oprogramowania jest oprogramowaniem typu open source, czy nie. A te punkty są następujące:
- Bezpłatna redystrybucja – Sprzedaż nie powinna wymagać płacenia tantiem.
- Kod nieśmiertelności – Program musi zawierać swój kod źródłowy.
- Dzieła pochodne – Modyfikacje i ich rozpowszechnianie muszą być dozwolone
- Integralność autorskiego kodu źródłowego – Wyjaśnia się samo przez się
- Zakaz dyskryminacji osób i grup – Wyjaśnia się samo przez się
- Żadnej dyskryminacji ze względu na dziedziny działalności – Wyjaśnia się samo przez się
- Licencja nie może być specyficzna dla produktu – Wyjaśnia się samo przez się
- Licencja nie może ograniczać innego oprogramowania – Wyjaśnia się samo przez się
- Licencja musi być neutralna technologicznie – Wyjaśnia się samo przez się
Otwarte oprogramowanie kontra wolne oprogramowanie
W zależności od tego, kogo spytasz, możesz otrzymać różne definicje oprogramowania typu open source. Niektórzy powiedzą, że oznacza wolne oprogramowanie, podczas gdy inni skupiają się na zaletach lub wartościach wynikających z rozwoju oprogramowania typu open source.
W obecnej sytuacji możesz mieć oprogramowanie typu open source, które nie jest bezpłatne, ponieważ nie jest wymagana żadna opłata. Jak również darmowe oprogramowanie, które nie jest oprogramowaniem typu open source.
Jednakże ruch wolnego oprogramowania FSF koncentruje się na swobodzie użytkownika w korzystaniu z oprogramowania. Często określa się to mianem „wolności w sensie wolności słowa”, a nie „darmowego piwa”. Powinno to umożliwić każdemu zainteresowanemu kopiowanie, modyfikowanie i rozpowszechnianie oprogramowania.
Ogólnie rzecz biorąc, często można spotkać się z terminem „FOSS” (oprogramowanie bezpłatne i otwarte). Działa to jako ogólna definicja programów, które spełniają cztery wolności FSF i są to:
- Swoboda uruchamiania programu według własnego uznania i w dowolnym celu.
- Swoboda badania, jak to działa i modyfikowania go. Wymaga to dostępu do kodu źródłowego.
- Swoboda redystrybucji oprogramowania komukolwiek chcesz.
- Swoboda rozpowszechniania zmodyfikowanej wersji wśród innych.
Zalety oprogramowania typu open source
Podejście open source ma swoje zalety i wady. Jednak na przestrzeni lat okazało się, że ta pierwsza metoda przeważa nad drugą, co skłoniło coraz więcej osób, organizacji i rządów do przyłączenia się do ruchu.
Oto niektóre z głównych zalet oprogramowania typu open source:
- Więcej oczu studiujących i modyfikujących kod prowadzi ostatecznie do lepszej jakości oprogramowania
- Więcej testerów znajduje i zgłasza więcej błędów
- Open-source oferuje doskonałe źródło wiedzy dla nowych programistów
- Ulepsz Swój bezpieczeństwo w dłuższej perspektywie, gdy wszyscy przyłączają się do rozwiązywania problemów
- Aktywnie utrzymywane oprogramowanie typu open source zawiera mniej błędów
- Umożliwia ciągłość projektów nawet po przejściu pierwotnego autora na emeryturę
- Open source walczy z monopolem i innymi nieetycznymi zachowaniami dostawców oprogramowania
Wady oprogramowania open source
Oprogramowanie typu open source ma również kilka wad, takich jak:
- Uzyskanie wsparcia na poziomie komercyjnym może być trudne
- Otwarte oprogramowanie potencjalnie stwarza luki w zabezpieczeniach, ponieważ hakerzy również badają kod
- Problemy ze zgodnością sprzętu z nieobsługiwanymi systemami
- Rzadziej utrzymywane pakiety często zawierają błędy i wyzwania związane z bezpieczeństwem
Oprogramowanie open source vs oprogramowanie zastrzeżone
- Niższe koszty lub brak kosztów – Większość programów typu open source jest bezpłatna lub ma bardzo przystępną cenę. Dzięki temu może sobie na nie pozwolić szersze grono osób i przedsiębiorstw.
- Wolność – Oprogramowanie typu open source oferuje więcej możliwości dostosowywania, więcej opcji zapewniających prywatność i ogólnie większą swobodę robienia tego, co lubisz.
- Bezpieczeństwo – Często w zastrzeżonym oprogramowaniu można znaleźć celowe tylne drzwi, które często powodują luki w zabezpieczeniach. Oprogramowanie typu open source można łatwo sprawdzić i wyeliminować wszelkie problemy związane z bezpieczeństwem.
- Lepsza wydajność – Oprogramowanie typu open source jest generalnie projektowane dla użytkowników, a nie dla zysku, jak ma to miejsce w przypadku oprogramowania prawnie zastrzeżonego. Dzięki temu jest bardziej efektywny pod względem tworzonej wartości.
- start małe – Wiele firm może rozpocząć działalność na małą skalę, korzystając z bezpłatnego oprogramowania typu open source. Następnie będą mogli dokonać aktualizacji do wersji dla przedsiębiorstw, gdy będą na to gotowi.
Wybitne projekty Open Source
Lista projektów open source jest ogromna, a coraz więcej jest rozwijanych i wydawanych. Oto jednak lista kilku godnych uwagi.
- Linux – Najpopularniejszy na świecie system operacyjny typu open source.
- LibreOffice - System suite, rozwidlony z OpenOffice. Obejmuje arkusz kalkulacyjny, moduł zapisywania i zarządzanie bazami danych.
- Mozilla Firefox – Popularna i bezpieczna przeglądarka internetowa, która szanuje Twoją prywatność.
- Android OS – Mobilny system operacyjny oparty na systemie Linux, który podbił świat.
- Joomla i Drupal - Systemy zarządzania treścią
- WordPress – Najpopularniejszy CMS i blogowania Platforma
- PHP – Język skryptowy po stronie serwera
- Apache HTTP Server – Najpopularniejszy serwer WWW w Internecie
- Asterix – PBX typu open source i VoIP Platforma
- Kałamarnica – Skalowalna platforma pamięci podręcznej, DNS i serwera proxy sieci Web
- CloudStack i OpenStack – Platformy do tworzenia i zarządzania chmurami komputerowymi
Licencje na oprogramowanie typu open source
Wiele organizacji zaproponowało różne licencje, które ucieleśniają filozofię open source. Większość projektów również korzysta z tych licencji, zamiast wymyślać zupełnie nową.
Możesz przeczytać więcej o tych licencjach tutaj. Najpopularniejsze to:
- Powszechna Licencja Publiczna GNU (GPL)
- MIT License
- Licencja Apache
- Licencja BSD
- Licencja publiczna Mozilla
Przyjęcie rządowe
Wiele rządów i agencji rządowych na całym świecie na przestrzeni lat przyjęło oprogramowanie typu open source w tej czy innej formie. Dla niektórych, takich jak bawarskie Monachium w Niemczech, oznacza to oszczędności liczone w milionach euro. Podczas gdy dla innych ważniejsze są bezpieczeństwo, propaganda i integralność kulturowa.
Oto lista znaczących adopcji na całym świecie:
- Chiny – Ubuntu Kylin jest dziełem Canonical i chińskiego rządu, przeznaczonym dla chińskich użytkowników i ich sił zbrojnych.
- Rosja – Astra Linux została opracowana na potrzeby armii rosyjskiej, włączając w to funkcje zarządzania danymi „ściśle tajne”. Wykorzystywany jest przez Gazprom, Koleje Rosyjskie oraz w rosyjskich i chińskich elektrowniach jądrowych.
- – Internetowa sieć badawczo-dochodzeniowa holenderskiej policji obsługuje 2,200 stacji roboczych Ubuntu i od 2013 r. korzysta wyłącznie z FOSS.
- Rumunia – Biblioteki publiczne w kraju działają w oparciu o IOSSPL (zintegrowany system open source dla bibliotek publicznych).
- United States – Amerykański Biały Dom przeniósł swoją stronę internetową na serwery Linux w 2009 roku. Jest ona również utrzymywana przy użyciu Drupala. Ponadto polityka z 2016 r. nakłada obowiązek stosowania polityki oprogramowania open source w wysokości 20% w projektach rządowych.
- Francja – Narodowe siły francuskiej żandarmerii przeszły na OpenOffice w 2005 roku i kontynuowały działania migracyjne z systemem GendBuntu Linux, wpływając po drodze na inne agencje rządowe.
- Niemcy – W 15,000 r. miasto Monachium rozpoczęło konwersję 2013 400 maszyn na system LiMux oparty na Debianie. W 2002 r. Schwäbisch Hall przeprowadził także migrację XNUMX stacji, a federalny urząd pracy obsługuje system openSUSE Linux.
- Brazylia – Brazylijskie agencje stanowe i federalne działają głównie na oprogramowaniu typu open source.
- Włochy – W 6,000 roku włoskie wojsko rozpoczęło przenoszenie ponad 2015 maszyn do LibreOffice.
- Peru – W 2005 roku rząd Peru głosował za całkowitym przyjęciem oprogramowania typu open source.
Podsumowanie
Wyraźnie widać, jak daleko zaszły ruchy wolnego oprogramowania i otwartego oprogramowania i jak bardzo wzbogaciły nasze życie.
Jednak to może być dopiero początek. Ponieważ może nadejść więcej zakłóceń na rynku, napędzanych w ten czy inny sposób przez oprogramowanie bezpłatne lub o otwartym kodzie źródłowym.