Przejdź do głównej treści

Dlaczego open source ma znaczenie

Tak duża część codziennego życia zależy od oprogramowania – od telefonu w kieszeni, przez usługi w domu, aż po aplikacje, z których korzystasz każdego dnia. Kiedy jedna platforma kontroluje te narzędzia, zyskuje niezdrową władzę i dyktuje, w jaki sposób możesz z nich korzystać.

Wolne i otwarte oprogramowanie przywraca tę władzę tam, gdzie jej miejsce: w ręce użytkownika, zapewniając, że technologia służy Tobie i Twojej społeczności, a nie interesom korporacji.

Podsumowanie

  • Open source oznacza, że podstawowa technologia jest publicznie dostępna dla każdego do użytku, kopiowania, ulepszania lub rozbudowywania.
  • Współczesne cyfrowe życie wymienia Twoją suwerenność na wygodę. Wolne i otwarte oprogramowanie to praktyczna droga powrotna, dająca Ci prywatność i ochronę przed wyzyskiem finansowym.
  • Nie musisz czytać kodu, aby czerpać korzyści. Otwartość oznacza, że niezależni eksperci mogą sprawdzić, co oprogramowanie naprawdę robi, a ich kontrola chroni wszystkich.
  • Ethereum jest budowane w sposób otwarty. Jego specyfikacje, oprogramowanie klienta, a nawet ta strona internetowa mogą być sprawdzane i ulepszane przez każdego.

Kiedy rzeczy, które kupujesz, przestają być Twoje

Większość Twojego cyfrowego życia jest obsługiwana przez garstkę dużych firm. Możesz nie być w stanie zobaczyć, jak wykorzystywane są Twoje dane, dlaczego zmienia się algorytm Twojego kanału, i nie masz żadnego wyjścia, gdy znika funkcja, na której polegasz. W zamian wszystko jest wygodne.

To nie są tylko hipotezy.

W 2009 roku Amazon uzyskał dostęp do czytników Kindle klientów i zdalnie usunął książki, które ludzie kupili i za które zapłacili.[1] Jeszcze w 2024 roku Spotify wycofało swoje urządzenie Car Thing i zdalnie wyłączyło jednostki, które klienci kupili.[2]

Te przypadki pokazują ryzyko związane z zamkniętym oprogramowaniem: kiedy produkt zależy od kodu i serwerów kontrolowanych przez jednego dostawcę, ten dostawca może zdecydować, czy produkt będzie nadal działał.

Open source zmienia tę równowagę. Kiedy kod stojący za produktem jest publiczny, a jego licencja przyznaje znaczące prawa, ludzie mogą go sprawdzać, uruchamiać, naprawiać, dostosowywać i kontynuować jego rozwój niezależnie. To ten sam argument, którego ruch na rzecz prawa do naprawy używa w odniesieniu do sprzętu, zastosowany do oprogramowania w jego wnętrzu.

Co oznacza „wolne i otwarte oprogramowanie”?

Wolne i otwarte oprogramowanie (FLOSS, pisane również jako FOSS) to oprogramowanie, którego kod źródłowy jest publiczny, aby każdy mógł go uruchamiać, badać, udostępniać i ulepszać. Pomyśl o daniu, które jest dostarczane z pełnym przepisem: możesz sprawdzić składniki, ugotować je samodzielnie, przekazać dalej lub ulepszyć. Zamknięte oprogramowanie utrzymuje przepis i składniki w tajemnicy, więc jedna firma decyduje, co wchodzi w jego skład, kto może jeść i czy kiedykolwiek się o tym dowiesz.

Prawie na pewno korzystałeś dziś z oprogramowania open source, nawet tego nie zauważając:

  • Linux, podstawa każdego telefonu z systemem Android i większości serwerów obsługujących odwiedzane przez Ciebie strony internetowe.
  • Firefox, jedna z niewielu głównych przeglądarek z własnym, niezależnym silnikiem.
  • Signal, aplikacja do przesyłania wiadomości, której protokół szyfrowania zabezpiecza również każdą wiadomość w WhatsApp.
  • VLC, odtwarzacz multimedialny, który otwiera pliki, z którymi nic innego sobie nie radzi.
  • LibreOffice, pełny pakiet biurowy, który odczytuje dokumenty, które już posiadasz.

„Wolne” oznacza tutaj wolność, a nie cenę. Program może kosztować, a mimo to być wolnym oprogramowaniem; darmowa aplikacja może być nadal zamknięta i restrykcyjna.

Idea jest prosta: jeśli firma kontroluje kod, firma kontroluje użytkownika. Wolne oprogramowanie to odwraca. Gwarantuje, prawnie i trwale, że oprogramowanie odpowiada przed Tobą. Mówiąc wprost, przyznaje cztery wolności:[3]

Swobodne użytkowanie

Uruchamiaj program tak, jak chcesz, w dowolnym celu, na własnych warunkach.

Badanie i modyfikowanie

Zbadaj kod źródłowy, aby dokładnie zobaczyć, jak działa program, a następnie zmień go, aby odpowiadał Twoim potrzebom.

Udostępnianie

Przekazuj innym dokładne kopie programu, aby oni również mogli z niego korzystać.

Dystrybucja modyfikacji

Wydaj swoją zmodyfikowaną wersję, aby szersza społeczność mogła czerpać korzyści z Twoich zmian.

Korzyści z open source

Wolne oprogramowanie to neutralne, powszechnie dostępne narzędzie do kontrolowania własnego cyfrowego życia. Nie należy do żadnej ideologii politycznej ani ruchu i działa tak samo dla każdego, kto je uruchamia.

Zaufanie, które możesz sprawdzić

Otwarty kod pozwala niezależnym osobom sprawdzić, jak działa oprogramowanie. Twierdzenia dotyczące bezpieczeństwa, prywatności i dostępności można przetestować, zamiast przyjmować je na wiarę.

Wolność odejścia

Otwarte oprogramowanie i otwarte formaty mogą ułatwić przenoszenie danych i uniknięcie uzależnienia od jednego dostawcy (szczegóły nadal mają znaczenie, ponieważ otwarte produkty powinny również zapewniać praktyczne opcje eksportu i migracji).

Oprogramowanie, które przeżywa swojego twórcę

Kiedy firma zostaje zamknięta lub zmienia kierunek, otwarty kod pozwala każdemu podtrzymać działanie projektu.

Lepsze sposoby na współpracę

Open source pozwala ludziom uczyć się na pracy innych, zgłaszać błędy, tłumaczyć tekst i obrazy, pisać dokumentację, poprawiać dostępność i budować narzędzia dla indywidualnych potrzeb, które komercyjny plan rozwoju mógłby przeoczyć.

Prawo do naprawy

Urządzenie zazwyczaj umiera wraz ze swoim oprogramowaniem. Aktualizacje ustają, serwer gaśnie, a działający sprzęt staje się odpadem. Ruch na rzecz prawa do naprawy walczy z tym na drodze prawnej, wymagając, aby zakupiony sprzęt mógł zostać naprawiony w przypadku awarii; open source to programowa połowa tej samej walki. Kiedy kod może zostać odczytany i przebudowany przez każdego, kto posiada urządzenie, przetrwa on zainteresowanie dewelopera sprzedażą kolejnej wersji.

Wolność publikowania

Publikowanie kodu to wolność słowa i jako takie musiało być bronione. Prawo do publikowania oprogramowania szyfrującego zostało wywalczone w sądzie w latach 90. Odwrotna sytuacja również jest prawdziwa. Kiedy jedna firma kontroluje narzędzie, decyduje o tym, co można za jego pomocą powiedzieć, przeczytać lub zbudować. Oprogramowania, które każdy może skopiować i ponownie opublikować, nie da się po cichu wyłączyć.

Prawo do tworzenia rozwidleń

Jeśli opiekunowie poprowadzą projekt w złym kierunku, społeczność może skopiować kod i kontynuować własną ścieżką. Popularne narzędzia, takie jak LibreOffice, Jenkins i OpenTofu, istnieją, ponieważ społeczności skorzystały z tego prawa, gdy właściciele korporacyjni zmienili kurs. Rozwidlenia są zabezpieczeniem przed przejęciem.

Jak przejść na aplikacje open source

Nie musisz wymieniać wszystkiego od razu. Zacznij od jednego narzędzia, którego często używasz, i sprawdź, czy istnieją dla niego powszechnie przyjęte alternatywy open source. Różne alternatywy open source mogą być zoptymalizowane pod kątem wyników, które mają dla Ciebie największe znaczenie, takich jak lepsza prywatność, mniejsza liczba subskrypcji, lokalna kontrola, przenośność danych lub możliwość wniesienia własnego wkładu.

Przed całkowitym przejściem uczciwie rozważ kompromisy. FLOSS i oprogramowanie chroniące prywatność czasami wymieniają wygodę na kontrolę. Ochrona przed śledzeniem może czasami zepsuć mocno oskryptowane strony internetowe, wyszukiwaniu bez śledzenia może brakować hiperlokalnych przewidywań, a mapom, które odmawiają śledzenia Cię, może brakować danych o ruchu w czasie rzeczywistym. Możesz pobrać i wypróbować alternatywę open source, aby sprawdzić, czy spełnia Twoje potrzeby, zanim w pełni zrezygnujesz z zamkniętej aplikacji.

Aplikacje open source

Open source i sztuczna inteligencja

Sztuczna inteligencja (AI) ma tu dwa oblicza. Asystenci AI, z których korzysta większość ludzi, to zastrzeżone usługi działające na cudzym komputerze. Ale są one również, w tej chwili, jednym z najlepszych dostępnych narzędzi, które pomogą Ci zacząć korzystać z oprogramowania open source. Istnieją również otwarte modele AI, które możesz uruchomić samodzielnie i które nigdy nie wysyłają informacji z powrotem do scentralizowanego dostawcy AI.

Prompty AI, które pomogą Ci zacząć

Trudną częścią zmiany rzadko jest samo oprogramowanie: to wiedza o tym, co istnieje, czy jest dobre i co zrobić, gdy coś się zepsuje. Asystent AI wypełnia większość tej luki, a ponadto potrafi czytać kod projektu i odpowiadać prostymi słowami, więc nie potrzebujesz umiejętności programisty, aby sprawdzić tę jedną rzecz, która Cię martwi.

Rzeczy, o które warto zapytać. Kliknij dowolną kartę, aby ją skopiować, a następnie wypełnij puste miejsca:

Jedno ustawienie AI, które warto zmienić

Dodaj „zawsze preferuj wolne i otwarte opcje (open source) i podawaj mi licencję” do konfiguracji swojego asystenta, a stanie się to domyślne dla każdej przyszłej rozmowy. Otwarte alternatywy będą wtedy pojawiać się w odpowiedziach asystenta AI bez konieczności specjalnego o nie proszenia.

Uruchamianie AI lokalnie na własnym komputerze

Większość asystentów czatu to usługi. Twój prompt opuszcza Twoje urządzenie, firma ustala zasady, a dostęp może zostać zmieniony, wyceniony lub przerwany w dowolnym momencie. To nie musi tak działać.

Modele z opublikowanymi wagami można pobrać i uruchomić na sprzęcie, który już posiadasz. Bez konta. Bez klucza API. Bez subskrypcji. Nic nie jest nigdzie wysyłane, więc możesz odłączyć sieć i kontynuować pracę. A kiedy plik znajdzie się na Twoim dysku, jest Twój. Nikt nie może wycofać Twojego lokalnego modelu AI, po cichu go zmienić ani Ci go odebrać. Model, który pobierzesz dzisiaj, nadal będzie odpowiadał na pytania na tej maszynie za dziesięć lat.

Trzy sposoby na start:

Otwarte poza kodem

Długo przed powstaniem Ethereum ludzie wysuwali te argumenty i wygrywali. Napisali licencje opisane na tej stronie, wygrali sprawy sądowe, które uczyniły publikowanie kodu legalnym, i zbudowali narzędzia, na których polegają miliony, aby mówić i czytać bez nadzoru. Prywatność, własność, naprawa, wolność słowa, prawo do czytania: Ethereum ma te same zobowiązania, ponieważ wyrosło z tej samej tradycji, a poniższe organizacje to miejsca, w których duża część tego gruntu jest nadal broniona, przypadek po przypadku i narzędzie po narzędziu. Wiele z tego, co opisuje ta strona, istnieje dzięki nim. Są one niezależne od Ethereum i ustalają własne priorytety, a wszystkie z nich warto wspierać.

Organizacje broniące praw cyfrowych

Warto również znać:

Otwarta wiedza

Część z najbardziej użytecznej wiedzy, jaką kiedykolwiek udostępniono w internecie, jest darmowa, ponieważ ludzie, którzy ją stworzyli, postanowili ją taką zachować, w tym recenzowane podręczniki uniwersyteckie, materiały szkoleniowe ze światowej klasy uniwersytetów, encyklopedie w setkach języków, mapy całej planety czy badania, które w przeciwnym razie znajdowałyby się za paywallem.

Dlaczego Ethereum to open source?

Ethereum to publiczna sieć zbudowana w oparciu o otwarte specyfikacje i niezależnie rozwijane oprogramowanie. Żadna pojedyncza firma nie jest właścicielem protokołu ani nie ma wyłącznej kontroli nad tym, jak ludzie uzyskują do niego dostęp. Każdy może sprawdzić kod, przejrzeć proponowane zmiany, uruchomić oprogramowanie, które łączy się z siecią, lub budować aplikacje korzystające z protokołu.

  • Zasady sieci są wdrażane przez wiele niezależnych zespołów, więc żadna pojedyncza firma nie kontroluje tego, co ona robi.
  • Każdy może uruchomić węzeł i niezależnie weryfikować sieć.
  • Badacze i deweloperzy otwarcie dyskutują o zmianach w protokole.
  • Współtwórcy mogą ulepszać kod, dokumentację, tłumaczenia, edukację, narzędzia i zasoby społeczności.

Inna przyszłość jest możliwa – taka, w której otwartość jest wbudowana, a rzeczy, na których polegasz, nadal dla Ciebie pracują.

Otwartość Ethereum nie oznacza, że każda zbudowana na nim aplikacja jest open source, bezpieczna lub godna zaufania. Nadal powinieneś oceniać oprogramowanie, kontrakty, zespoły i związane z nimi ryzyko. Ale sam protokół został zaprojektowany tak, aby jego fundamenty mogły być sprawdzane i ulepszane publicznie.

Oprogramowanie zastrzeżone, open source i wolne oprogramowanie: jaka jest różnica?

Słowo „otwarte” jest używane dość luźno, a różnice mają znaczenie. Cztery rodziny obejmują prawie wszystko, z czym się spotkasz:

Typowe licencje: Brak jakiejkolwiek licencji na kod źródłowy

Prawdziwe przykłady: Windows, iOS, Photoshop

Typowe licencje: BUSL 1.1, SSPL, wiele licencji „open core”. Nie są zatwierdzone przez OSI (otwiera się w nowej karcie).

Prawdziwe przykłady: Terraform, który w sierpniu 2023 r. przeszedł z otwartej licencji MPL 2.0 na BUSL 1.1. Ta zmiana jest powodem, dla którego społeczność stworzyła rozwidlenie (fork) OpenTofu.

Typowe licencje: MIT, Apache 2.0, BSD, MPL 2.0

Prawdziwe przykłady: Lighthouse, Reth, Besu, Teku (Apache 2.0); Nimbus (Apache 2.0 / MIT); ta strona internetowa (MIT)

Typowe licencje: GPL, LGPL, AGPL

Prawdziwe przykłady: Linux (GPL-2.0); Klienci Ethereum: go-ethereum (GPL-3.0 dla pliku binarnego, LGPL-3.0 dla jego bibliotek); Prysm, Nethermind, Grandine, Solidity (GPL-3.0)

Ethereum działa na zasadach copyleft, a nie tylko na słowie „otwarte”

Wiele projektów nazywa się otwartymi. To, co ma znaczenie, to plik licencji, więc oto nasz.

Najbardziej krytyczna infrastruktura Ethereum jest dostarczana na własnych licencjach copyleft Free Software Foundation: go-ethereum to GPL-3.0 z bibliotekami LGPL-3.0, a Prysm, Nethermind, Grandine i kompilator Solidity to GPL-3.0, z Erigon na licencji LGPL-3.0. Inni klienci obierają ścieżkę permisywną: Lighthouse, Reth, Besu i Teku to Apache 2.0.

Ta strona internetowa jest na licencji MIT, a każda zmiana na tej stronie jest publicznie widoczna. Każdy może swobodnie sprawdzić kod źródłowy (otwiera się w nowej karcie) lub zaproponować zmiany (otwiera się w nowej karcie).

Różnorodność klientów jest sama w sobie zastosowaniem prawa do tworzenia rozwidleń. Żadna pojedyncza implementacja nie kontroluje sieci, a każdą z nich można zastąpić czymś lepszym bez pytania o pozwolenie.

Często zadawane pytania

„Wolne oprogramowanie” i „open source” wywodzą się z pokrewnych tradycji. Wolne oprogramowanie kładzie nacisk na prawa i wolność użytkowników. Open source często podkreśla praktyczne korzyści, takie jak współpraca, niezawodność i lepsze oprogramowanie. W praktyce oba terminy opisują oprogramowanie, którego licencja przyznaje ludziom rzeczywiste prawa do jego używania, badania, modyfikowania i udostępniania.

Ta strona używa tych terminów łącznie, jako FLOSS, ponieważ to rozróżnienie rzadko zmienia to, co możesz zrobić z oprogramowaniem, które masz przed sobą.

To uczciwe pytanie, a odpowiedź nie brzmi po prostu „nie”. Publikowanie kodu pozwala atakującym na jego badanie. Ale pozwala na to również wszystkim innym, a tajemnica ma słabe wyniki jako obrona: zamknięte oprogramowanie ma te same wady, znajdowane później, ujawniane zgodnie z harmonogramem dostawcy i naprawiane wtedy, gdy mu to odpowiada.

Szczera wersja jest taka, że otwartość jest konieczna, ale niewystarczająca. Poważne błędy latami pozostawały niezauważone w szeroko używanych otwartych projektach, zazwyczaj dlatego, że krytyczna infrastruktura była utrzymywana przez jedną lub dwie nieopłacane osoby. To, co gwarantuje otwartość, to fakt, że każdy może zajrzeć i każdy może to naprawić; to, czy zrobi to wystarczająco dużo osób, zależy od tego, jak dobrze projekt jest finansowany i obsadzony personelem. Warto to sprawdzić, zanim zaczniesz na czymś polegać, a łatwo o to zapytać.

Większość modeli AI opisywanych jako otwarte publikuje swoje wagi, ale nie dane treningowe ani kod, który je wyprodukował. Możesz je uruchamiać i dostosowywać; nie możesz ich w pełni badać ani przebudowywać. Zgodnie z definicjami przedstawionymi na tej stronie, jest to bliższe oprogramowaniu z dostępnym kodem źródłowym (source-available) niż wolnemu oprogramowaniu.

To wciąż duża poprawa w stosunku do zamkniętej alternatywy. Pobrany model z otwartymi wagami działa bez pozwolenia, nie może zostać unieważniony, działa nadal, gdy firma za nim stojąca zmienia kierunek lub znika, i może być niezależnie testowany przez każdego, kto chce sprawdzić jego zachowanie. To te same korzyści – wolność odejścia i oprogramowanie, które przeżywa swojego twórcę – o których mowa na reszcie tej strony. Definicja Open Source AI (otwiera się w nowej karcie) stworzona przez Open Source Initiative określa, czego wymagałaby pełna otwartość, a garstka modeli, takich jak OLMo od AI2 i Pythia od EleutherAI, już ją spełnia.

Dalsza lektura

  1. Szef Amazona mówi, że usunięcie książek Orwella było „głupie” (otwiera się w nowej karcie) - The New York Times (archiwum)
  2. Spotify oficjalnie uśmierca Car Thing, pozostałe jednostki już nie działają (otwiera się w nowej karcie) - 9to5Google
  3. Definicja wolnego oprogramowania (otwiera się w nowej karcie) - Projekt GNU

Znajdowanie alternatyw