Wolne oprogramowanie

Z Encyklopedia Nowoczesnego Survivalu
Przejdź do nawigacji Przejdź do wyszukiwania

W naszym codziennym życiu w coraz większym stopniu pośredniczą technologie cyfrowe. Wszystko, co napędza nasze społeczeństwo — nasze media, urządzenia medyczne, maszyny do głosowania, komunikacja i wiele więcej — zależy od urządzeń z oprogramowaniem, które je kontroluje. Sposób działania oprogramowania zależy od jego „kodu źródłowego”, a ktokolwiek jest jego właścicielem, z kolei kontroluje naszą technologię i ma ogromny wpływ na nasze życie. Kiedy ten kod źródłowy jest własnością kogoś innego i jest utrzymywany w tajemnicy, nie ma możliwości dowiedzenia się, co robi ani jak działa. Gdy ktoś inny kontroluje Twoje oprogramowanie, dajesz mu pełną kontrolę nad Twoim komputerem.

Jak możemy zaufać naszej technologii?[edytuj]

Widzieliśmy niesamowity postęp i ruchy społeczne, które umożliwia technologia cyfrowa, ale musimy być świadomi jego skutków. Oprogramowanie ostatecznie pozostawia użytkowników na łasce tego, kto je posiada, ale nie musimy rezygnować z wolności na rzecz postępu. Oprogramowanie nie powinno działać przeciwko swoim użytkownikom dla zysku i kontroli. Powinieneś być właścicielem swojego oprogramowania. Powinieneś mieć kontrolę.

Korzystanie z wolnego oprogramowania jest jedynym sposobem, aby Ci to zagwarantować. Używając wolnego oprogramowania, zyskujesz autonomię w zakresie własnego komputera i jesteś chroniony przed inwigilacją, monopolem i innymi złośliwymi cechami niewolnego oprogramowania.

Czym jest wolne oprogramowanie?[edytuj]

Celem tego artykułu jest wyjaśnienie tego w pełni, to znaczy po przeczytaniu tego rozdziału, nie tylko to, że sam to rozumiesz, ale będziesz mógł później wygodnie wytłumaczyć innym. Wiem, że to ambitne założenie, ale postaramy się to zrobić.

Definicja:
Wolne oprogramowanie to oprogramowanie komputerowe rozpowszechniane na warunkach, które pozwalają użytkownikom uruchamiać oprogramowanie w dowolnym celu, jak również badać kod źródłowy, zmieniać go, rozpowszechniać i ulepszać wszelkie zaadaptowane wersje.

komputer to uniwersalna maszyna, którą można zaprogramować do automatycznego wykonywania sekwencji operacji arytmetycznych lub logicznych. Współczesne komputery mogą wykonywać ogólne zestawy operacji znane jako programy. Programy te umożliwiają komputerom wykonywanie szerokiego zakresu zadań.

oprogramowanie to zbiór instrukcji, które informują komputer, jak ma działać. Pisząc odpowiedni program, możesz sprawić, że zrobi prawie wszystko

Użytkownicy są punktem wyjścia. W przypadku oprogramowania istnieją dwie możliwości: użytkownicy kontrolują program lub program kontroluje użytkowników. To nieuchronnie jedno lub drugie. Aby użytkownicy mogli kontrolować program, potrzebują 4 podstawowych wolności.

  • Wolność 0: Swoboda uruchamiania programu w dowolnym celu.
  • Wolność 1: Wolność studiowania, jak działa program i zmieniania go, aby robił to, co chcesz.

Ale czym jest kod źródłowy? W informatyce kod źródłowy to dowolny zbiór kodu, z komentarzami lub bez, napisany przy użyciu czytelnego dla człowieka języka programowania, zwykle jako zwykły tekst. Kod źródłowy programu został specjalnie zaprojektowany, aby ułatwić pracę programistom, którzy określają czynności, które ma wykonać komputer, głównie poprzez pisanie kodu źródłowego. Kod źródłowy jest często przekształcany przez asembler lub kompilator w binarny kod maszynowy, który może być wykonywany przez komputer. Kod maszynowy może być następnie przechowywany w celu wykonania w późniejszym czasie. Alternatywnie, kod źródłowy może zostać zinterpretowany i w ten sposób natychmiast wykonany.

Większość oprogramowania aplikacyjnego jest rozpowszechniana w formie zawierającej tylko pliki wykonywalne. Gdyby kod źródłowy został dołączony, byłby przydatny dla użytkownika, programisty lub administratora systemu, z których każdy mógłby chcieć studiować lub modyfikować program.

Jeśli wszystko, co dostaniesz, to plik wykonywalny, może być utrapieniem, aby dowiedzieć się, co robi, a jeszcze trudniej go zmienić, więc aby dać ci realną możliwość uczenia się i zmieniania tego, mają ci to dać do kodu źródłowego, to jest wymóg. to indywidualna kontrola.

Ale co, jeśli nie jesteś programistą? Patrzysz na kod źródłowy i nie rozumiesz go. Indywidualna kontrola nie wystarczy. Potrzebujemy również zbiorowej kontroli, co oznacza, że każda grupa użytkowników może współpracować, aby dostosować program do tego, czego chcą. Oczywiście w grupie niektórzy z nich to programiści. To oni faktycznie piszą zmiany, ale robią to jako część grupy dla tego, czego chce grupa. Oczywiście grupa nie musi być wszystkim. Inni mogą to wykorzystać w inny sposób. Wszyscy mogą to zrobić. Zbiorowa kontrola wymaga jeszcze dwóch podstawowych wolności.

  • W olność 2: Wolność redystrybucji i wykonywania kopii, abyś mógł pomóc bliźniemu.
  • Wolność 3: Swoboda ulepszania programu i publicznego udostępniania swoich ulepszeń (i ogólnie zmodyfikowanych wersji), aby cała społeczność odniosła korzyści

Zasadniczo wolność trzecia jest podobna, ale dotyczy to twoich zmodyfikowanych wersji. Możesz robić kopie, a potem je dawać lub sprzedawać, kiedy chcesz. Jeśli masz te wolności, to jest to darmowe oprogramowanie, użytkownicy kontrolują program. Ale jeśli brakuje którejś z tych wolności, to użytkownicy nie kontrolują programu. Zamiast tego program kontroluje użytkowników, a programista kontroluje program. Oznacza to, że ten program jest instrumentem niesprawiedliwej władzy jego twórcy nad użytkownikami. Oznacza to, że użytkownicy nie mają wolności, to niewolne, zastrzeżone oprogramowanie, którego musimy się pozbyć.