Wolne Oprogramowanie To Przyszłość I Dlatego - Alternatywny Widok

Spisu treści:

Wolne Oprogramowanie To Przyszłość I Dlatego - Alternatywny Widok
Wolne Oprogramowanie To Przyszłość I Dlatego - Alternatywny Widok

Wideo: Wolne Oprogramowanie To Przyszłość I Dlatego - Alternatywny Widok

Wideo: Wolne Oprogramowanie To Przyszłość I Dlatego - Alternatywny Widok
Wideo: 15 oznak, że jesteś wybitnie inteligentny, ale o tym nie wiesz 2024, Może
Anonim

Oprogramowanie open source to powszechna rzecz w XXI wieku. Organizacja zwana Open Source Initiative została założona w 1998 roku, chociaż przykłady rozwoju otwartego oprogramowania były wcześniej liczne. Jak sama nazwa wskazuje, główna różnica między takimi rozwiązaniami a zamkniętym (zastrzeżonym) oprogramowaniem polega na tym, że kod tego pierwszego jest publicznie dostępny i każdy programista może go sprawdzić lub zmienić według własnego uznania. Wszyscy znamy co najmniej jeden program typu open source - system operacyjny Android firmy Google.

Tak, tak, system zainstalowany na 70-80 proc. (Według różnych szacunków) smartfonów na świecie jest całkowicie otwarty i każdy może zmieniać jego kod źródłowy według własnego uznania. Dowodem na to jest ogromna liczba widełek Androida, na których oparte jest niestandardowe oprogramowanie dla smartfonów. Tutaj jednak jest jeden najważniejszy niuans: tak naprawdę cały system operacyjny Android traci znaczną część swojej funkcjonalności bez usług samego Google. Cóż, te ostatnie są oczywiście zamknięte i całkowicie kontrolowane przez korporację oprogramowania. Epos ostatnich lat, w który zaangażowany był Huawei, jest kolejnym tego dowodem.

Wolne oprogramowanie dostosowuje się do potrzeb użytkowników, a nie odwrotnie

W przeciwieństwie do oprogramowania własnościowego, oprogramowanie open source jest na ogół bardzo elastyczne. Dzieje się tak z prostego powodu - jedną z podstawowych „zasad open source” jest to, że „użytkownik powinien być postrzegany jako współtwórca”. Tę zasadę, wraz z innymi, opisał Eric Raymond w swoim eseju „Cathedral and Bazaar” z 1997 roku. Zgodnie z nią użytkownik powinien mieć zagwarantowany dostęp do kodu źródłowego, a ponadto zachęca się do aktywnego udziału użytkownika w rozwoju. Może się to objawiać w różnych formach: od bezpośredniej edycji kodu lub dokumentacji do niego, po proste zbieranie raportów o błędach (raporty o błędach).

Cóż, ponieważ użytkownik jest częściowo programistą, jest dość oczywiste, że produkt końcowy będzie bardziej odpowiedni dla jego potrzeb niż początkowo zamknięte oprogramowanie. Aby dokonać zmian w tym ostatnim, konsument musi skontaktować się z firmą deweloperską (co nie zawsze jest łatwe), przekazać jej swoją wizję i czekać. Poczekaj, aż (prawdopodobnie) dokona tych zmian. Wszystko wydaje się logiczne - kupiłeś gotowy produkt w takiej postaci, w jakiej jest sprzedawany i zgodziłeś się używać go dokładnie tak, jak zamierzał deweloper. Możesz wziąć przykład z innego obszaru: kupując samochód, nie próbujesz kontaktować się z fabryką samochodów i zmuszać go do korzystania z mocniejszego silnika w tym modelu, a układ wydechowy jest głośniejszy. Dokładnie tak, jak nie zwrócisz się do niego o wykonanie np. Jachtu na bazie tej maszyny. Może,gdybyś był bardzo dużym klientem hurtowym, producent spotkałby się w pewnym momencie w połowie drogi, ale z pewnością nie zmieni dla Ciebie całego procesu produkcyjnego. A tym bardziej, że mogę cię do tego przyznać.

Ta sama sytuacja jest w oprogramowaniu. Kupując zastrzeżony system operacyjny, taki jak Windows na komputer stacjonarny, zgadzasz się, że będziesz go używać zgodnie z zamierzeniami producenta. Oznacza to, że zainstaluj go (lub zdobądź preinstalowany) na zwykłym komputerze PC z obsługiwaną architekturą i sprzętem, nie będziesz „usuwał” z niego żadnych krytycznych komponentów i nie będziesz próbował używać go do innych celów. Na przykład jako system operacyjny serwera lub system operacyjny dla smartfona. Albo w ogóle nie możesz tego zrobić, albo napotkasz wiele trudności i ograniczeń.

Oto przykład smartfona opartego na desktopowym systemie Windows - Fujitsu F-07C, zaprezentowanego w 2011 roku. Jednak w części telefonicznej nadal używany był system operacyjny Symbian
Oto przykład smartfona opartego na desktopowym systemie Windows - Fujitsu F-07C, zaprezentowanego w 2011 roku. Jednak w części telefonicznej nadal używany był system operacyjny Symbian

Oto przykład smartfona opartego na desktopowym systemie Windows - Fujitsu F-07C, zaprezentowanego w 2011 roku. Jednak w części telefonicznej nadal używany był system operacyjny Symbian.

Film promocyjny:

Systemy operacyjne typu open source to inna sprawa. Jeśli weźmiemy pod uwagę Linuksa jako cechę wspólną wszystkich jego dystrybucji, bardzo trudno będzie znaleźć docelową lub „żelazną” architekturę, dla której nie ma Linuksa. Oto system operacyjny dla Wielkiego Zderzacza Hadronów, oprogramowanie motoryzacyjne i wszelkiego rodzaju „inteligentne” rzeczy oraz największe serwery szkieletowe i banalne komputery domowe. Wiele z tych dystrybucji również pozostaje open source. Oznacza to, że każdy użytkownik takiego produktu może aktywnie uczestniczyć w jego tworzeniu, uzupełniając go zgodnie ze swoimi potrzebami. Ten sam system dla LHC to zmodyfikowana wersja Scientific Linux, która została opracowana wspólnie przez naukowców z całego świata. Z kolei ta wersja Linuksa jest oparta na dystrybucji Red Hata, która również została „domieszkowana” do celów naukowych. A zatem,Naukowcy z CERN otrzymali narzędzie, które najlepiej pasuje do ich konkretnych celów, bez tworzenia od podstaw całej architektury oprogramowania.

Ale kilka lat temu CERN ogłosił przejście na inną dystrybucję - CentOS. Scientific Linux będzie obsługiwany do 2024 roku, ale nie otrzyma nowych wersji
Ale kilka lat temu CERN ogłosił przejście na inną dystrybucję - CentOS. Scientific Linux będzie obsługiwany do 2024 roku, ale nie otrzyma nowych wersji

Ale kilka lat temu CERN ogłosił przejście na inną dystrybucję - CentOS. Scientific Linux będzie obsługiwany do 2024 roku, ale nie otrzyma nowych wersji.

Oprogramowanie open source jest łatwiejsze do kontrolowania

Publicznie dostępny kod źródłowy dopuszcza tak zwane „prawo Linusa”, które mówi: „Przy wystarczającej liczbie obserwatorów pojawiają się błędy”. Mówiąc najprościej, jeśli wszyscy programiści mogą zobaczyć kod źródłowy, istnieje duża szansa, że błąd zostanie naprawiony znacznie wcześniej. Ta sama zasada działa w przypadku bezpieczeństwa oprogramowania: jeśli kod źródłowy jest otwarty, szybciej zostaną w nim znalezione zarówno przypadkowe, jak i celowo wprowadzone luki i luki. W przypadku rozwiązań autorskich znalezienie błędów może zająć znacznie więcej czasu, a podatności można nawet bezpiecznie ukryć w kodzie źródłowym.

Wielu pamięta skandal z 2013 roku, kiedy Edward Snowden ujawnił tajne informacje o programie PRISM Agencji Bezpieczeństwa Narodowego USA. Według opublikowanych dokumentów dane wszystkich gigantów internetowych w taki czy inny sposób wpadły do NSA, a same firmy albo się do tego przyczyniły, albo nie stawiały aktywnego oporu. Oczywiście nie chodzi tylko o to, że wszystkie te firmy używają i produkują oprogramowanie o zamkniętym kodzie źródłowym. Ponadto istnieją zarówno czynniki polityczne, jak i czysto ludzkie. Ale tylko jedna okazja dla zewnętrznego obserwatora do zbadania mechanizmów przepływu danych osobowych mogłaby zapewnić znacznie lepszą ochronę niż jakiekolwiek szyfrowanie. W końcu szyfrowanie jest w rzeczywistości blokadą, która zamyka informacje za pomocą klucza. I bez względu na to, jak zabezpieczone jest przed włamaniem, nie uchroni Cię przed sytuacjami, w których osoba atakująca ma kopię klucza.

Image
Image

Duże organizacje przechodzą na oprogramowanie typu open source

Powyższe zasady mogą nie być aż tak ważne dla przeciętnego użytkownika (przynajmniej jeszcze nie), ale są bardzo ważne dla tzw. „Przedsiębiorstw” - dużych organizacji, w których awarie i wycieki są skrajnie niepożądane, jeśli nie całkowicie niedopuszczalne. To samo można powiedzieć o organizacjach non-profit - tych samych projektach naukowych, a także instytucjach państwowych i miejskich. Uderzającym tego przykładem jest administracja niemieckiego miasta Monachium, która zdecydowała się w miarę możliwości przenieść infrastrukturę informatyczną władz miasta na rozwiązania open source. Kilka innych niemieckich miast również planuje przejść na oprogramowanie typu open source, ale przykład Monachium jest szczególnie godny uwagi. Faktem jest, że lokalna gmina była światowym pionierem w tej kwestii - pierwsze przejście na oprogramowanie typu open source rozpoczęło się w 2003 roku. Założył rezygnację zarówno z oddzielnych programów własnościowych, takich jak Adobe, SAP i Microsoft, jak i zamkniętego systemu operacyjnego wspomnianej firmy z Redmond.

Image
Image

Opracowali nawet własną dystrybucję o nazwie LiMux (Linux + Munchen), a plan przejścia zakładał zwiększenie liczby komputerów PC z tym systemem operacyjnym do 80 procent do 2013 roku. Jednak wiele czynników doprowadziło do tego, że pracownicy utrzymywali równolegle dwa systemy na swoich stacjach roboczych: warunkowo „główny” LiMux i warunkowo „dodatkowy” Windows. Stało się tak, ponieważ niektóre specjalistyczne programy nie miały wersji dla Linuksa, a jeśli tak, to często działały na nim niestabilnie. W 2017 roku administracja zapowiedziała powrót do produktów Microsoftu, ale w tym roku nastąpił nowy zwrot. Nowy rząd ogłosił hasło „Pieniądze publiczne, kodeks publiczny” i przyjął porozumienie w sprawie przejścia infrastruktury informatycznej miasta na oprogramowanie open source. Wszystko, co nie jest związane z poufnymi danymi,będzie stopniowo (wraz z wygaśnięciem obecnych umów) przechodzić na oprogramowanie z publicznie dostępnym kodem - rząd chce więc zapewnić maksymalną przejrzystość swojej pracy.

Image
Image

Nawet giganci technologiczni dostrzegają potrzebę udziału w tworzeniu oprogramowania typu open source

Wydawałoby się, dlaczego największe firmy w świecie informacji, które zarabiają na swoich zastrzeżonych produktach, miałyby wejść na open source? W końcu jest to prawie bezpośrednio sprzeczne z logiką i zdrowym rozsądkiem.

Notoryczny Microsoft stosował to podejście przez długi czas. Jej kulminacją było kierownictwo Steve'a Ballmera, który ogłosił w 2001 roku: „Linux jest rakiem, który pochłania każdą własność intelektualną, której dotyka”. Ale od tego czasu wszystko się bardzo zmieniło. Korporacja nie tylko posiada obecnie najważniejszy bastion świata open source - Github, ale z każdym rokiem stopniowo przybliża swoje produkty do świata open source. Na przykład w 2015 roku udostępniła programistom platformę. NET, aw 2018 roku korporacja opublikowała część kodu źródłowego gry Minecraft, z której korzystają deweloperzy.

A sama gra stała się rodzajem nieformalnej społeczności open source: wspólnymi siłami tworzą tutaj najbardziej złożone projekty, a ostatnio stworzyli nawet emulator komputera, na którym można grać w Dooma
A sama gra stała się rodzajem nieformalnej społeczności open source: wspólnymi siłami tworzą tutaj najbardziej złożone projekty, a ostatnio stworzyli nawet emulator komputera, na którym można grać w Dooma

A sama gra stała się rodzajem nieformalnej społeczności open source: wspólnymi siłami tworzą tutaj najbardziej złożone projekty, a ostatnio stworzyli nawet emulator komputera, na którym można grać w Dooma.

A w 2019 roku zrobiła niecodzienny krok - dodała jądro Linuksa do Windows 10 w celu obsługi podsystemu o nazwie Windows Subsystem Linux (WSL). Wcześniej wszystkie wersje systemu operacyjnego firmy Redmond mogły emulować tylko Linuksa, ale teraz jest to absolutnie pełnoprawny podsystem, który jest oczywiście skierowany do programistów preferujących to środowisko. W tym samym celu utworzono terminal Windows, za pomocą którego można uzyskać dostęp zarówno do znanego programu PowerShell / CMD, jak i jądra Linuksa.

Image
Image

Nie bez powodu wszystkie te zmiany dokonują się w ogromnej korporacji. Jej nowe kierownictwo zaczęło zdawać sobie sprawę, że idea open source staje się z każdym rokiem coraz ważniejsza dla programistów i że z czasem open source zmiażdży znaczną część społeczności. I tu w grę wchodzi stara, dobra zasada „jeśli nie możesz walczyć - prowadź”. To właśnie podwaliny pod przywództwo w świecie open source skłoniły Microsoft do zakupu tak niezbyt dochodowego aktywa jak Github. Sytuację tę widać także w innych dużych firmach: wiele podobnych projektów korzysta z mocy obliczeniowej chmury AWS od Amazona, Apple na początku tego roku zaczął masowo zatrudniać kluczowych pracowników bezpośrednio ze świata cloud computingu (w tym z AWS), a Google to rodzaj standardu „open source” wśród organizacji komercyjnych. Cały kod źródłowy jest otwarty nie tylko na ich mobilny system operacyjny Android, ale także na silnik przeglądarki Chromium, a nawet na komputerowy system operacyjny Chromium.

Ponad 2000 projektów Google jest open source
Ponad 2000 projektów Google jest open source

Ponad 2000 projektów Google jest open source.

Jednocześnie kalifornijska firma tworzy na ich podstawie udane produkty komercyjne, używając kodu z minimalnymi różnicami. Z grubsza mówiąc, jeśli chcesz zrobić własny fork (fork) Androida i korzystać z najnowszych źródeł, to tylko brak usług Google odróżni go od oryginalnego systemu operacyjnego. Tak, we współczesnym świecie właśnie te usługi odgrywają niemal kluczową rolę (znowu wracamy do sytuacji z Huawei). Ale fakt pozostaje faktem - możesz stworzyć swój własny mobilny system operacyjny, na równi z systemami gigantów technologicznych na świecie, całkowicie legalnie iw 100% za darmo. Jeśli oczywiście masz wystarczającą wiedzę i umiejętności.

Open source wcale nie oznacza „darmowego”

I tutaj dochodzimy do tego, że postrzeganie produktów open source jako bezpłatnych również powoli odchodzi na bok. Tak, zasady społeczności open source są ściśle związane z darmową dystrybucją kodu, ale nie wykluczają jego komercjalizacji. RedHat to przykład podejścia, które łączy te dwie pozornie niezgodne rzeczy. Fedora jest dystrybucją Linuksa, którą rozwija i jest całkowicie open source. Jednak firma nadal jest firmą handlową - zarabia na abonamencie usług dla klientów komercyjnych oraz na wsparciu technicznym. W ubiegłym roku firma została wykupiona przez innego niegdyś największego giganta technologicznego - IBM, ale nie wpłynęło to na model biznesowy RedHata. Zestaw dystrybucyjny był i pozostanie otwarty,a firma planuje zarabiać nie tylko na abonamentach, ale także na chmurze. Nawiasem mówiąc, w 2018 roku firma zarobiła prawie pół miliarda dolarów, co wydaje się być bardzo istotnym wskaźnikiem dla firmy, której główny produkt można pobrać całkowicie za darmo.

Image
Image

Inna popularna dystrybucja Linuksa, Ubuntu, jest również tworzona przez firmę komercyjną. Pomimo otwartego kodu źródłowego Ubuntu, jego firma deweloperska Canonical zarobiła około 11 milionów dolarów w 2019 roku. Nie jest to największy wskaźnik, ale mimo to jest to stabilny zysk i nie może być mowy o żadnym „stowarzyszeniu non-profit”. Model biznesowy jest tutaj taki sam jak w przypadku RedHat - sprzedaż subskrypcji usług.

Image
Image

Wniosek

Szczególnie interesujące jest to, że open source można znaleźć nie tylko w oprogramowaniu, ale także w sprzęcie. Na przykład nie wszyscy wiedzą, że platforma Arduino jest open source i każdy może całkowicie legalnie wykonać własną kopię tego mikrokomputera. Nawiasem mówiąc, jest to z powodzeniem wykorzystywane przez chińskie firmy. Jednak sama nazwa Arduino jest zarejestrowanym znakiem towarowym, a firma produkcyjna zarabia nie tylko na samej produkcji płytek, ale także na licencjonowaniu marki.

Arduino Uno
Arduino Uno

Arduino Uno.

Możesz być pewien, że open source będzie kontynuować zwycięski marsz po całej planecie, a nawet poza nią. Na przykład światowej sławy firma Elon Musk SpaceX ogłosiła niedawno, że wprowadziła już na orbitę Ziemi 32 tysiące mikrosatelitów, aby zapewnić sieć Starlink, podczas gdy ich system operacyjny jest oparty na tym samym Linuksie. A kontrolę nad kapsułą Crew Dragon częściowo powierzono systemowi monitorów dotykowych, których interfejs oparty jest na kodzie źródłowym silnika przeglądarki Chromium.

Centrum kontroli kapsuły Crew Dragon
Centrum kontroli kapsuły Crew Dragon

Centrum kontroli kapsuły Crew Dragon.

Ale czy przejście w kierunku całkowitej otwartości kodu przejdzie bezboleśnie, czy też nadal będziemy świadkami konfliktów na tej podstawie, czas pokaże. Podejrzewam, że open source wkrótce stanie się standardem dla wszystkich deweloperów, a autorskie rozwiązania zajmą dość wąską, aczkolwiek wciąż bardzo zauważalną niszę. Proces ten przyspieszy nie tylko samą społeczność deweloperów, ale także użytkowników, a zwłaszcza rządy krajów. Tendencja do przejrzystości wszystkiego i wszystkich rośnie z każdym rokiem, a oprogramowanie nie będzie wyjątkiem. Co o tym myślisz?