Tento překlad nemusí obsahovat změny, které byly v článku provedeny po 2021-10-24 v anglickém originálu.
Podívejte se na tyto změny. Přečtěte si prosím Příručku překladatele, kde se dozvíte, jak se zapojit do překladu tohoto článku.
Projekt GNU
napsal Richard Stallman
Původně vyšlo v knize Open Sources. Richard Stallman nikdy nepodporoval „open source“, ale přispěl tímto článkem, aby v této knize ideály hnutí svobodného softwaru úplně nechyběly.
Proč je dnes, víc než kdy jindy, potřeba trvat na tom, aby software, který používáme, byl svobodný.
První komunita sdílející software
Když jsem v roce 1971 začal pracovat v MIT v Laboratoři umělé inteligence (AI Lab), stal jsem se součástí komunity sdílející software, která existovala již mnoho let. Sdílení software nebylo výsadou pouze naší komunity; je staré jako počítače samy, stejně jako sdílení receptů je staré jako vaření. Dělali jsme však více než toto.
AI Lab používala operační systém pro sdílení času nazvaný ITS (Nekompatibilní systém pro sdílení času) navržený hackery (1) pracujícími v laboratoři a psaný v assembleru pro Digital PDP-10, jeden z velkých počítačů tehdejší doby. Jako člen komunity, systémový hacker laboratoře umělé inteligence, jsem měl za úkol vylepšovat tento systém.
Nenazývali jsme náš software „svobodným software“, neboť tento termín ještě neexistoval, ale náš software jím byl. Kdykoliv lidé z jiné vysoké školy nebo firmy chtěli portovat a používat program, rádi jsme jim to umožnili. Pokud jste viděli někoho používat neznámý a zajímavý program, mohli jste ho vždy požádat, aby vám ukázal zdrojové kódy, abyste jej mohli studovat, měnit anebo demontovat některé z jeho částí a vytvořit nový program.
(1) Užívání výrazu „hacker“ jako pojmenování někoho, kdo prolamuje bezpečnost systémů, je matení způsobené dnešními médii. My hackeři toto pojmenování odmítáme uznat a toto slovo stále používáme k označení někoho, kdo miluje programování nebo si užívá svůj důvtip s hravostí. Přečtěte si můj článek O hackování.
Rozpad komunity
Situace se dramaticky změnila na počátku osmdesátých let, když Digital přestal ukončil výrobu řady PDP-10. Jejich architektura, elegantní a výkonná v šedesátých letech, nemohla, přirozeně, pokrýt větší adresní prostory, které začaly nastupovat v osmdesátých letech. To znamenalo, že téměř všechny programy pro ITS byly zastaralé.
Komunita hackerů AI Lab se nedlouho předtím rozpadla. Oddělující se firma Symbolics si v roce 1981 najala téměř všechny hackery z AI Lab a oslabená komunita byla neschopná se nadále sama udržet. (Kniha Hackeři od Steve Levyho popisuje tyto události, stejně jako vykresluje jasný obrázek komunity za jejího rozkvětu.) Když v roce 1982 nakoupila laboratoř AI nová PDP-10, její administrátoři se rozhodli používat nesvobodný systém pro sdílení času od Digitalu namísto našeho ITS.
Moderní počítače té doby jako například VAX nebo 68020, měly své vlastní operační systémy, ale žádný z nich nebyl svobodným softwarem: museli jste podepsat tzv. non-disclosure agreement (NDA) dokonce i proto, abyste vůbec získali spustitelný program.
Znamenalo to tedy, že první věc, kterou jste museli při používání počítače udělat, byl slib, že nebudeme pomáhat svým kolegům. Spolupráce komunity byla zakázána. Pravidlo vytvořené vlastníky proprietárního software znělo: „Pokud sdílíte software se svým kolegou, jste pirát. Pokud chcete provádět v našem software jakékoliv změny, musíte nás nejdříve poprosit.“
Myšlenka, že společenský systém proprietárního softwaru – systém, v němž nesmíte sdílet nebo měnit software – škodí společnosti, je neetický, zkrátka a jednoduše špatný, by mohla být pro některé čtenáře překvapením. Co jiného se však dá říct o systému založeném na rozdělování veřejnosti, na systému nechávajícím své uživatele bezmocné? Lidé, jimž tato myšlenka připadá překvapující, mohli pokládat proprietární sociální systém za daný, nebo jej posuzovat podle slov lidí z oblasti obchodu s proprietárním software. Vydavatelé software dlouho a těžce pracovali na tom, aby přesvědčili veřejnost, že existuje pouze jediný způsob, jak pohlížet na tento problém.
Když vydavatelé softwaru hovoří o „posilování“ svých „práv“ nebo „zastavení pirátství“, to, co vlastně říkají je druhotné. Opravdová podstata těchto tvrzení je v nevyslovených domněnkách, jež berou jako samozřejmé; předpokládá se, že je veřejnost bez kritiky přijme. Pojďme se tedy na ně podívat.
Prvním předpokladem je, že softwarové firmy mají nesporné přirozené právo vlastnit software a mít tak moc nad všemi jeho uživateli. (Pokud by se jednalo o přirozené právo, potom bychom, bez ohledu na to, do jaké míry poškozuje veřejnost, nemohli nic namítat.) Je zajímavé, že americká ústava a právní zvyklosti tento pohled na věc odmítají; copyright není přirozené právo, ale vládou uměle vytvořený monopol, jež omezuje přirozené právo uživatelů na vytváření kopií.
Dalším nevysloveným předpokladem je, že jedinou důležitou věcí týkající se software je, jaké úkoly nám umožňuje plnit – a že my, počítačoví uživatelé, bychom se neměli starat o to, v jaké společnosti je nám dovoleno žít.
Třetí domněnkou je, že bychom neměli použitelný software (nebo programy na konkrétní věci), kdybychom nenabídli společnosti moc nad uživateli jejího programu. Předtím než hnutí svobodného software ukázalo, že jsme schopni vytvořit mnoho užitečného software bez zbytečných omezení, mohla být tato domněnka ještě i přijatelná.
Jestliže odmítneme akceptovat tyto předpoklady a posoudíme dané problémy přirozeným smyslem pro etiku a dáme uživatele na první místo, dojdeme k závěrům velmi odlišným. Počítačoví uživatelé by měli mít svobodu modifikovat programy tak, aby splňovaly jejich potřeby, a svobodu sdílet software. Pomáhat ostatním lidem je základ společnosti.
Není zde dostatek prostoru pro rozsáhlý dokument odůvodňující tento závěr, takže odkazuji čtenáře na webovou stránku Proč by software neměl mít majitele a http://www.gnu.org/philosophy/free-software-even-more-important.html.
Důležitá morální volba
Po rozpadu mé komunity bylo nemožné pokračovat jako dříve. Místo toho jsem stál tváří v tvář morálnímu rozhodnutí.
Bylo by snadnou volbou připojit se ke světu proprietárního software, spolu s podepsáním tzv. non-disclosure agreement a slibů, že nebudu pomáhat svým kolegům hackerům. Je velmi pravděpodobné, že bych rovněž vyvíjel software vydávaný pod non-disclosure agreement a naléhal na ostatní, ať rovněž zrazují své kolegy.
Mohl jsem si tak vydělávat a možná se sám bavit psaním kódu. Věděl jsem však, že kdybych se na konci své kariéry ohlédl zpět a viděl roky strávené stavbou zdí oddělujících lidi, připadalo by mi, že jsem svůj život zasvětil činěním světa horším a horším.
Sám jsem měl již zkušenosti s tím, jak dopadne přijetí non-disclosure agreement, a to když někdo odmítl dát mně a MIT AI laboratoři zdrojový kód na program pro řízení naší tiskárny. (Program trpěl některými nedostatky a to bylo pro uživatele tiskárny velmi frustrující.) Nemohl jsem si říct, že non-disclosure agreement je nevinný. Byl jsem velmi rozzlobený, když s námi odmítl sdílet kód; nemohl jsem se otočit zády a začít dělat ostatním totéž.
Další možností, snadnou ale neradostnou, bylo opustit počítačové odvětví. Mé dovednosti by tak sice nebyly zneužity, ale stále by byly promrhávány. Nebyl bych vinen za rozdělování a omezování počítačových uživatelů, ale tak jako tak by k tomu došlo.
Začal jsem se tedy poohlížet po způsobu, jak bych mohl vytvořit něco prospěšného. Ptal jsem se sám sebe: existuje nějaký program nebo programy, které bych mohl psát, aby mohla naše komunita opět existovat?
Odpověď byla zřejmá: nejdříve byl potřeba operační systém. Jedná se o klíčový software pro používání počítače. S operačním systémem můžete dělat mnoho věcí, bez něj se však počítač nedá vůbec používat. Se svobodným operačním systémem bychom znovu mohli vytvořit komunitu spolupracujících hackerů – a pozvat kohokoliv, aby se k nám přidal. Kdokoliv by mohl používat počítač bez toho, aniž by se tak upisoval ke spiknutí proti svým přátelům.
Jako vývojář operačních systémů jsem pro takovou práci měl dostatečné znalosti. Přestože jsem tehdy nemohl s jistotou předpokládat, že uspěji, uvědomil jsem si, že jsem byl pro tuto práci vybrán. Rozhodl jsem se vytvořit systém kompatibilní s Unixem, aby byl přenositelný a aby na něj mohli unixoví uživatelé snadno přejít. Jméno GNU bylo vybráno podle hackerské tradice, jako rekurzivní akronym „GNU's Not Unix“ a vyslovuje se jako jedna slabika s tvrdým G.
Operační systém neznamená pouze jádro (kernel), plně dostačující ke spouštění jiných programů. V sedmdesátých letech v sobě již každý operační systém, který byl hoden svého jména, zahrnoval procesory, assemblery, kompilátory, překladače, debuggery, textové editory, mailery a mnohem více. ITS, Multics, VMS, Unix, všechny tyto systémy je měly. Operační systém GNU je zahrnoval také.
Později jsem slyšel tato slova, připisovaná Hillelovi (1):
Jestliže nejsem pro sebe, kdo bude pro mě?
Jestliže jsem jen pro sebe, co jsem?
Jestliže ne nyní, kdy?
V podobném duchu bylo i rozhodnutí začít s projektem GNU.
(1) Coby ateista sice nenásleduji žádné náboženské vůdce, ale někdy se mi líbí, co někdo z nich prohlásí.
Svobodný jako ve slově svoboda
Pojem „svobodný software“ je někdy špatně vykládán – nijak nesouvisí s cenou. Je o svobodě. [1] Zde proto cituji definici svobodného softwaru.
Program je svobodným softwarem pro vás, uživatele, jestliže máte tyto svobody:
- Smíte spouštět program za jakýmkoliv účelem.
- Smíte upravovat program tak, aby vyhovoval vašim potřebám. (Abyste tuto svobodu mohli realizovat v praxi, musíte mít přístup ke zdrojovému kódu, neboť vytváření změn v programu, je nesmírně obtížné, nemáte-li k dispozici zdrojový kód.)
- Smíte šířit kopie a to jak zadarmo, tak za poplatek.
- Smíte distribuovat upravené verze programu, aby vaše komunita mohla mít užitek z vašich vylepšení.
Jelikož se „free“ vztahuje ke svobodě, nikoliv k ceně, není tu rozpor mezi prodejem kopií a svobodným softwarem. Svoboda prodávat kopie je ve skutečnosti velmi důležitá: sbírky svobodného softwaru prodávané na CD-ROMech jsou pro komunitu důležité a jejich prodej je jednou z cest, jak sehnat peníze na rozvoj svobodného softwaru. Z toho důvodu není svobodným softwarem program, jež nesmí být distribuován.
Kvůli dvojznačnosti slova „free“ se lidé dlouho pokoušeli najít jiná označení, avšak žádné z nich nebylo shledáno jako vhodná alternativa. Angličtina má více slov a nuancí než kterýkoli jiný jazyk, ale chybí jí jednoduché, jednoznačné slovo pro „free“ jako v slově svoboda – „nespoutaný“ – slovo s nejbližším podobným významem. Alternativy „osvobozený“ (liberated), „svoboda“ (freedom) a „otevřený“ (open) nesou jiný význam nebo mají jiné nevýhody.
GNU software a GNU systém
Vývoj celého systému je velmi rozsáhlý projekt. Abych ho dotáhl do konce, rozhodl jsem se přizpůsobit a používat již existující části svobodného software všude tam, kde to bylo možné. Úplně na počátku jsem se například rozhodl používat TeX jako hlavní textový formátovač; o několik let později jsem se rozhodl používat X Window Systém – raději, než abych pro GNU psal další okenní systém.
Díky tomuto a podobným rozhodnutím není GNU systém totéž jako souhrn veškerého GNU software. GNU systém v sobě zahrnuje i programy, které nejsou GNU software, programy, které byly vyvíjeny jinými lidmi pro jejich vlastní potřeby, ale které můžeme používat, protože jsou svobodným software.
Počátek projektu
V lednu 1984 jsem odešel z MIT a začal psát GNU software. Bylo nutné MIT opustit, aby se nevměšovala do distribuce GNU jako svobodného software. Kdybych zůstal zaměstnancem MIT, mohli by si chtít mou práci přivlastnit a uvalit na ni své distribuční podmínky, nebo ji dokonce přeměnit v proprietární software. Nechtěl jsem dělat tolik práce jen na to, abych pak vyděl jak se stává nepoužitelnou pro můj cíl: vytvoření nové software sdílející komunity.
Přesto mi však profesor Winston, ředitel MIT AI Lab, laskavě dovolil i nadále používat vybavení laboratoře.
První kroky
Krátce před začátkem GNU projektu jsem se doslechl o Svobodném univerzitním kompilátoru, rovněž známého jako VUCK. (dánské slovo „svobodný“ se píše s V) Tento překladač byl navržen pro mnoho jazyků, včetně C a Pascalu a s podporou mnoha cílových strojů. Napsal jsem jeho autorovi, zda by ho GNU mohl používat.
Posměšně mi odpověděl, že sice univerzita svobodná je, avšak překladač nikoliv. Rozhodl jsem se proto, že mým prvním programem pro projekt GNU bude mnohojazyčný a multiplatformní překladač (kompilátor).
Doufal jsem, že se vyhnu tomu, abych vytvářel celý překladač sám. Získal jsem zdrojový kód Pastelu, multiplatformního překladače rozvíjeného v Lawrence Livermore Lab. Byl napsán v rozšířené verzi Pascalu a podporoval ji, byla navržena jako systémový programovací jazyk. Přidal jsem Céčkový front end a začal s portováním na počítač Motorola 68000. Musel jsem se však nakonec vzdát, když jsem přišel na to, že tento překladač potřebuje megabajty volného prostoru, a dostupný Unixový systém 68000 umožňoval použít pouze 64 kilobajtů.
Poté jsem si uvědomil, že překladač Pastel fungoval na principu analýzy celého vstupního souboru do syntaxového stromu, přeměnil celý syntaxový strom v řetězec „instrukcí“ a potom generoval celý výstupní soubor. Dokonce bez uvolňování paměti. Tehdy mi došlo, že bych měl napsat nový překladač. Tento nový překladač je nyní znám jako GCC; není v něm využit ani jeden z překladačů Pastel, ale podařilo se mi přizpůsobit a použít front end C, který jsem již měl hotov. To ovšem bylo o několik let později; nejdříve jsem pracoval na GNU Emacsu.
GNU Emacs
Na GNU Emacs jsem začal pracovat v září 1984 a na počátku roku 1985 již začal být použitelným. To mi umožnilo začít používat na editaci unixové systémy; protože jsem neměl zájem učit se pracovat s vi nebo ed, musel jsem do té doby provádět editaci na jiných strojích.
Lidé začali mít o používání GNU Emacsu zájem a tak vyvstala otázka, jak ho šířit. Samozřejmě jsem ho umístil na anonymní ftp server na počítač MIT, jež jsem používal. (Tento počítač, prep.ai.mit.edu, se tak stal hlavním FTP distribučním stanovištěm pro GNU; o několik let později jsme ho přemístili na náš nový FTP server.) V té době ovšem mnoho lidí, kteří se o to zajímali, nebylo připojeno k Internetu a nemohlo získat přes ftp. Otázka tedy zněla: „Co jim mám říct?“
Mohl jsem říct: „Najděte si kamaráda, který na síti je, a ten vám udělá kopii.“ Také jsem mohl udělat to, co jsem udělal s původním PDP-10 Emacs: říct jim: „Pošlete mi pásku a obálku se známkou (SASE) a já vám ji pošlu zpátky s nahraným Emacsem.“ Neměl jsem však práci a hledal jsem způsob, jak si svobodným softwarem vydělat. Oznámil jsem tedy, že pásku pošlu každému za poplatek $150. Takto jsem začal s obchodním šířením svobodného software a byl jsem předchůdcem společností, které nyní distribuují GNU systémy založené na Linuxu.
Je program svobodný pro každého uživatele?
Jestliže je program v době, kdy opouští ruce svého autora, svobodným softwarem, nemusí to nutně znamenat, že pro každého vlastníka kopie tohoto programu to bude rovněž svobodný software. Například public domain software (software, který není chráněn autorským právem) je svobodným software; ale kdokoliv si může vytvořit vlastní nesvobodnou upravenou verzi. Podobně je tomu v případě mnoha svobodných programů: jsou chráněny autorským právem, ale šířeny pod jednoduchými licencemi, které umožňují vytvářet proprietární modifikované verze.
Příkladem tohoto problému je X Window systém vyvinutý na MIT a vydaný jako svobodný software s velmi volnou licencí. Brzy byl převzat různými počítačovými firmami. Ty přidaly X ke svým proprietárním unixovým systémům pouze v binární podobě a s týmž non-disclosure agreement. Tyto kopie X nebyly svobodným software o nic víc než Unix.
Vývojáři X Window System to nepovažovali za problém – věděli , že k tomu dojde. Jejich cílem nebyla svoboda, jen úspěch definovaný slovy „mít hodně uživatelů“. Nestarali se o to, zda mají jejich uživatelé svobodu, šlo jim jen o to, aby jich bylo co nejvíc.
To vedlo k paradoxní situaci, kde dva rozdílné pohledy na míru svobody poskytovaly odlišné odpovědi na otázku: „Je tento program svobodný?“ Pokud byste tento problém posuzovali na základě svobod poskytovaných distribučními podmínkami té verze z MIT, řekli byste, že X jsou svobodný software. Jestliže byste ovšem prověřovali svobodu průměrného uživatele X, museli byste říct, že se jedná o proprietární software. Většina uživatelů X používala proprietární verze, které dostali s unixovými systémy, ne svobodnou verzi.
Copyleft a GNU GPL
Cílem GNU je poskytnout uživatelům svobodu, ne být populární. Potřebovali jsme takové distribuční podmínky, abychom zabránili proměně GNU softwaru v software proprietární. Metoda, kterou používáme, se nazývá „copyleft“.(1)
Copyleft používá autorského práva (copyrightu), ale „převrací“ jej tak, aby sloužilo k opačným účelům než obvykle: namísto prostředku ke spoutání software, se stává prostředkem k udržení software svobodným.
Hlavní myšlenkou copyleftu je dát každému práva ke spouštění, kopírování, modifikaci programu a šíření modifikovaných verzí – ne však povolení přidávat k nim vlastní omezení. Takto jsou rozhodující svobody, které definují „svobodný software“ zaručeny pro každého, kdo má kopii; stávají se nezcizitelnými právy.
Aby byl copyleft efektivní, musí být modifikované verze rovněž svobodné. To zajišťuje, že naše práce je, pokud je zveřejněna, dostupná naší komunitě. Co se týče programátorů, kteří pracují jako dobrovolníci na zlepšování GNU software, je to právě copyleft, jež nedovoluje jejich zaměstnavatelům říkat: „Nesmíte sdílet tyto změny, protože je použijeme k vytvoření naší proprietární verze programu.“
Požadavek, že veškeré změny musí být „svobodné“ je nezbytný, pakliže chceme zajistit svobodu každému uživateli programu. Společnosti, jež učinili X Window systém proprietárním, většinou provedly několik změn, aby jej přizpůsobily jejich systémům a hardware. Tyto změny byly v porovnání s rozšířením X malé, ale nikoli bezvýznamné. Jestliže by vytváření změn bylo výmluvou k odepření svobody uživatelům, bylo by pro kohokoli velmi snadné z této výmluvy těžit.
Související problém se týká kombinování svobodného programu s nesvobodným kódem. Takováto kombinace by pak nevyhnutelně byla nesvobodná; jakékoliv svobody chybějící nesvobodné části by pak chyběly i celku. Povolení takových kombinací by bylo zkázonosné. Z toho důvodu je rozhodujícím požadavkem pro copyleft „ucpat tuto díru“: jakýkoliv program, který je přidaný či kombinovaný s copyleftovaným programem, musí být takový, aby další kombinovaná verze byla rovněž svobodná a copyleftovaná.
Specifická implementace copyleftu, kterou používáme ve většině GNU softwaru, je GNU General Public License, zkráceně GNU GPL. Máme ovšem i jiné druhy copyleftů, používané za zvláštních okolností. Příručky GNU jsou rovněž copyleftovány, ale používají mnohem jednodušší druh copyleftu, protože pro ně není třeba složitosti GNU GPL. (2)
(1) V roce 1984 nebo 1985 mi poslal dopis Don Hopkins (nápady sršící člověk). Na obálku napsal pár vtipných poznámek, včetně této: „Copyleft – všechna práva vyhrazena“. Používal jsem výraz „copyleft“ k označení konceptu distribuce, který jsem v té době vyvíjel.
(2) Pro dokumentaci teď používáme GNU Free Documentation License.
Nadace pro svobodný software
Jak vzrůstal zájem o používání Emacsu, do projektu GNU se začali zapojovat další lidé, a tak jsme se rozhodli, že je čas znovu se poohlédnout po nějakých financích. Proto jsme v roce 1985 vytvořili Nadaci pro svobodný software; organizaci pro rozvoj svobodného software, osvobozenou od platby daní. Nadace pro svobodný software rovněž převzala kontrolu nad prodejem pásek s Emacsem; později se obchod rozšířil díky tomu, že jsme na pásku přidali další svobodný software (jak GNU, tak ne-GNU) a také jsme začali prodávat manuály.
Nadace pro svobodný software přijímá sponzorské dary, ale většina jejích příjmů vždy pocházela z prodeje kopií svobodného software a jiných služeb s tím spojených. Nyní prodává CD-ROMy se zdrojovými kódy, CD-ROMy s binárkami, přehledně tištěné příručky (vše se svobodou redistribuce a modifikace), a zajišťuje distribuce Deluxe (v nichž dodáváme celou sbírku software dle vašeho výběru platformy). FSF dodnes prodává manuály a další věci, ale hlavní část příjmů tvoří členské příspěvky. K FSF se můžete připojit na fsf.org.
Zaměstnanci Nadace pro svobodný software napsali a udržovali mnoho balíčků GNU. Dva významné jsou knihovny pro C a shell. GNU C knihovna je tím, co každý program běžící na GNU/Linux systému používá ke komunikaci s Linuxem. Vyvinul ji člen Nadace pro svobodný software, Roland McGrath. Na většině GNU/Linux systémů je používaným shellem BASH – Bourne Again Shell(1), vyvinutý zaměstnancem FSF, Brianem Foxem.
Financovali jsme vývoj těchto programů, protože GNU projekt nebyl pouze o nástrojích či vývojovém prostředí. Naším cílem byl kompletní operační systém a tyto programy jsme pro dosažení cíle potřebovali.
(1) „Bourne again Shell“ je parodií na jméno „Bourne Shell“, což byl shell obvykle používaný v Unixu.
Podpora svobodného software
Filosofie svobodného software odmítá určitou rozšířenou obchodní praxi, ale nestaví se proti komerci jako takové. Pokud obchod respektuje svobody uživatele, přejeme mu úspěch.
Prodej kopií Emacsu ukazuje jeden druh obchodu se svobodným softwarem. Když Nadace pro svobodný software převzala tento obchod, potřeboval jsem najít jiný způsob vydělávání. Nalezl jsem jej v prodeji služeb spojených se svobodným software, který jsem vyvíjel. To zahrnovalo vyučování předmětů jako například jak programovat GNU Emacs a jak si přizpůsobit GCC, a vývoj softwaru, převážně portování GCC na nové platformy.
V dnešní době provozuje každý z těchto typů obchodu se svobodným software řada korporací. Některé distribuují kolekce svobodného softwaru na CD-ROM; jiné nabízejí podporu uživatelů na různých úrovních: od zodpovídání uživatelských otázek přes opravy chyb až k přidávání nových funkcionalit. Dokonce se začínají objevovat firmy založené na vydávání nových svobodných softwarových produktů.
Přesto však pozor – řada firem, které se samy zaštiťují termínem „open source“ ve skutečnosti zakládá svůj byznys na nesvobodném softwaru, který pracuje spolu se svobodným softwarem. Nejsou to firmy svobodného softwaru, jedná se o firmy proprietárního softwaru, o firmy, jež se pomocí svých produktů snaží odlákat uživatele od svobody. Nazývají je „přidanými hodnotami“, na které chtějí, abychom si zvykli: jedná se o volbu mezi výhodností a svobodou. Ceníme-li si svobody více, měli bychom je nazývat „produkty zbavené svobody“.
Technické cíle
Hlavním cílem GNU je, aby bylo svobodným softwarem. Dokonce ani kdyby GNU nebylo technicky vyspělejší než Unix, bylo by společenským přínosem, neboť by dovolovalo uživatelům spolupracovat, a etickým přínosem, neboť by respektovalo jejich svobody.
Bylo ovšem přirozené při práci aplikovat známé standardy a dobré praktiky – například dynamickou alokaci datových struktur, abychom se vyhnuli jakýmkoli fixním limitům nebo používat veškeré možné osmibitové kódy všude tam, kde to mělo smysl.
Navíc jsme se rozhodli odmítnout zaměření Unixu na malé velikosti paměti a to tak, že jsme se rozhodli nepodporovat 16-bitové počítače (bylo zřejmé, že v době, kdy bude GNU systém dokončen, budou normou 32-bitové stroje), a nesnažit se o snížení využití paměti, pokud nepřekročilo jeden megabyte. U programů, pro něž nebyly velmi rozsáhlé soubory rozhodující, jsme povzbuzovali programátory, aby načetli celé vstupní soubory do jádra a poté procházeli jejich obsah bez obav o I/O operace.
Tato rozhodnutí umožnila mnoha GNU programům předčit jejich unixové protějšky ve spolehlivosti a rychlosti.
Darované počítače
Jak vzrůstala reputace projektu GNU, lidé nám začali nabízet stroje používající Unix. Bylo to velmi užitečné, protože nejsnazší cesta k rozvoji komponent GNU spočívala v nahrazování komponent jednoho systému komponenty druhého systému. Bohužel to však vyvolalo etický problém: jestli je vůbec správné mít kopii Unixu.
Unix byl (a je) proprietární software a filozofie projektu GNU říká, že bychom proprietární software neměli používat. Když jsem však aplikoval táž odůvodnění, která vedla k závěru, že násilí v sebeobraně je ospravedlnitelné, došel jsem k tomu, že je etické používat proprietární software tam, kde je důležitým pro vývoj svobodných náhrad, které by pomohly ostatním přestat používat proprietární software.
Ačkoliv se jednalo o ospravedlnitelnou špatnost, stále to byla špatnost. Nyní již nemáme žádné další kopie Unixu, protože jsme je nahradili svobodnými operačními systémy. Pokud bychom na nějakém počítači nemohli nahradit stávající počítačový systém systémem svobodným, nahradili bychom raději počítač.
Seznam úloh GNU
Jak projekt GNU pokračoval a přibývalo systémových komponent, rozhodli jsme se vytvořit seznam chybějících částí. Nabírali jsme vývojáře, aby napsali chybějící komponenty. Tento seznam se stal známý jako seznam úloh GNU. Kromě chybějících unixových komponent jsme přidali i jiný užitečný software a dokumentaci, kterou by podle nás měl opravdu kompletní systém mít.
Nyní (1) jsou na seznamu úloh GNU stěží nějaké komponenty Unixu – všechno již bylo vytvořeno, kromě několika nepříliš důležitých. Seznam je však plný projektů, které by někteří mohli označit jako „aplikace“. Jakýkoliv program, jež se zamlouvá více lidem než úzké skupině uživatelů, by bylo užitečné přidat k operačnímu systému.
Dokonce i hry jsou a již od počátku byly na seznamu úloh. Unix hry zahrnoval, a proto je mělo GNU přirozeně zahrnovat také. Ovšem kompatibilita nebyla pro hry důležitá, a tak jsme se neřídili seznamem her, které měl Unix. Namísto toho jsme sepsali řadu her různých typů, které by se uživatelům mohly zamlouvat.
(1) Byl sepsán v roce 1998. Od roku 2009 už seznam úkolů neudržujeme. Komunita vyvíjí svobodný software tak rychle, že už ani nestíháme všechno sledovat. Místo toho máme Seznam vysoce důležitých projektů – mnohem kratší seznam programů, u kterých výrazně podporujeme, aby je lidé napsali.
GNU knihovní GPL (LGPL)
GNU knihovna pro C používá zvláštní druh copyleftu nazvaný GNU Library General Public License (1). Tento copyleft umožňuje spojit proprietární software s knihovnami. Proč jsme udělali tuto výjimku?
Není to otázka principu; neexistuje princip, který by tvrdil, že produkty proprietárního software mají oprávnění zahrnovat náš kód. (Proč přispívat projektu založeném na tom, že s námi odmítne cokoliv sdílet?) Používání LGPL pro C knihovnu, či pro jakoukoliv knihovnu, je otázkou strategie.
C knihovna má obecnou úlohu; každý proprietární systém nebo překladač má C knihovnu. Z toho důvodu by vytvoření naší C knihovny dostupné pouze svobodnému softwaru nemělo pro svobodný software žádné výhody – jen by odrazovalo od jejího používání.
Jeden systém je ovšem výjimkou: v GNU systému (a ten zahrnuje GNU/Linux), je GNU C knihovna jedinou C knihovnou. Distribuční podmínky GNU C knihovny určují, zda je možné kompilovat proprietární program pro GNU systém. Neexistuje žádný morální důvod, který by povoloval proprietární aplikace na GNU systému, ale ze strategického hlediska to vypadá, že jejich zamítnutí by spíše odrazovalo od používání GNU systému než povzbuzovalo rozvoj svobodných aplikací.
Proto je používání licence LGPL dobrou strategií pro knihovnu C. U ostatních knihoven se tyto strategické otázky rozhodují případ od případu. Jestliže se díky knihovně dají psát zvláštní typy programů, potom je její vydání pod GPL a omezení pouze na svobodné programy způsobem, jak pomoci ostatním vývojářům svobodného software, tím, že budou zvýhodněni oproti proprietárnímu software.
Povšimněte si například GNU Readline, knihovny, která byla vyvinuta, aby poskytla editační příkazovou řádku pro BASH. Readline je vydáno pod obyčejnou GNU GPL, ne pod knihovní LGPL. To má pravděpodobně za následek snížení množství užití Readline, ale to pro nás není ztráta. Mezitím se přinejmenším jedna užitečná aplikace stala svobodnou, aby mohla používat Readline, a to je pro komunitu velkou výhrou.
Vývojáři proprietárního softwaru mají výhody, které jim poskytují peníze; vývojáři svobodného software potřebují vytvářet výhody pro sebe navzájem. Doufám, že jednou budeme mít rozsáhlou sbírku knihoven krytých GPL, k nimž nebude mít proprietární software přístup a nebudeme mu tak poskytovat užitečné moduly sloužící jako stavební kameny nového svobodného software a získáme tak další výhodu pro jeho rozvoj.
(1) Abychom předešli pocitu, že by pod ní měly být vydávány všechny knihovny, nazýváme teď tuto licenci GNU Lesser General Public License. Pro více informací se podívejte na: Proč byste neměli použít Lesser GPL pro vaši příští knihovnu.
Řešení problému?
Eric Raymond říká: „každý dobrý program je psán tak, aby vyřešil problém svého tvůrce“. Možná je to občas pravdou, ale mnoho důležitých součástí GNU software bylo rozvíjeno kvůli tomu, abychom měli kompletní svobodný operační systém. Byly vytvořeny na základě určité vize a plánu, ne z impulzu.
Například jsme vyvíjeli GNU C knihovnu, protože systém podobný Unixu ji potřebuje, Bourne-Again Shell (bash), protože systém podobný Unixu potřebuje shell, a GNU tar, z toho samého důvodu jako tyto dvě předchozí. Totéž platí i pro mé vlastní programy – GNU C překladač, GNU Emacs, GDB a GNU Make.
Některé GNU programy byly vyvíjeny, aby se utkaly s určitými překážkami kladenými vůči svobodě. Vyvíjeli jsme gzip, abychom nahradili program Compress, jež naše komunita ztratila kvůli LZW patentům. Našli jsme lidi, aby vyvinuli LessTif a později začali pracovat na GNOME a Harmony, zaměřené na potíže způsobené jistými proprietárními knihovnami (viz níže). Vyvíjíme GNU Privacy Guard, abychom nahradili populární nesvobodný šifrovací software, protože by si uživatelé neměli být nuceni vybírat mezi soukromím a svobodou.
Samozřejmě mnoho lidí, kteří psali tyto programy, práce zaujala, a řadu součástí přidali lidé, kvůli svým potřebám a zájmům. To ale není důvod proč tyto programy existují.
Neočekávaný vývoj
Na počátku projektu GNU jsem si představoval, že vyvineme celý GNU systém a poté ho jako celek vydáme. To se však nestalo.
Od té doby, kdy byly všechny části systému GNU implementovány na systému Unix, mohly být spouštěny na unixových systémech, což bylo dlouho předtím než existoval kompletní GNU systém. Některé z těchto programů si získaly oblibu, a uživatelé je začali šířit a portovat – na různé nekompatibilní verze Unixu a někdy též do jiných systémů.
Programy se postupně staly daleko výkonnějšími a přitahovaly jak peněžní zdroje, tak přispěvatele, k projektu GNU. Pravděpodobně to však zpozdilo zkompletování projektu GNU o několik let, neboť vývojáři GNU vložili svůj čas do údržby portů a přidávání funkcionalit k existujícím součástem, raději než aby pokračovali v psaní chybějících částí, jedné po druhé.
GNU Hurd
V roce 1990 byl již GNU systém téměř hotov; jedinou větší chybějící komponentou bylo jádro (kernel). Rozhodli jsme se implementovat ho jako soubor serverových procesů nad Machem. Mach je mikrokernel vyvinutý na univerzitě Carnegie Mellon a univerzitě v Utahu; GNU HURD je sbírkou serverů (tj. „stádo pakoňů“ – „herd of GNUs“), který běží nad Machem, a vykonává různé činnosti unixového jádra. Zahájení vývoje se zpozdilo kvůli tomu, že jsme čekali, až uvolní Mach coby svobodný software, jak nám bylo slíbeno.
Jedním z důvodů, proč jsme si vybrali tuto architekturu, bylo vyvarovat se nejobtížnější části práce: ladění (debuggování) kernelového programu bez debuggeru na úrovni zdrojového kódu. Tato práce byla již hotova, v Machu, a zamýšleli jsme ladit HURD servery jako uživatelské programy, s GDB. Trvalo to však velmi dlouho a ukázalo se, že je velmi obtížné odladit více-procesové servery, které si navzájem posílají zprávy. Trvalo mnoho let než HURD začal spolehlivě fungovat.
Alix
Nepředpokládali jsme, že se kernel bude jmenovat HURD. Jeho původní název byl Alix – podle jména mé tehdejší přítelkyně, systémové administrátorky, která poukázala na to, že by se její jméno hodilo do našeho systému pojmenovávání verzí unixových systémů; vtipkovala před svými přáteli, že by měl někdo pojmenovat kernel po ní. Nic jsem neříkal, ale rozhodl jsem se ji překvapit kernelem s názvem Alix.
Nakonec to tak nezůstalo. Michael Bushnell (nyní Thomas), hlavní vývojář kernelu, upřednostňoval název HURD a z Alix udělal odkaz k určité části kernelu – konkrétně k té, co zachycuje systémová volání a posílá zprávy HURD serverům.
Později jsme se s Alix rozešli a změnila si jméno; nezávisle na tom byl změněn design HURDu tak, aby C knihovna posílala zprávy přímo serverům, a díky tomu součást Alix zmizela z návrhu.
Ještě předtím než se tohle všechno událo, se Alix setkala se svými přáteli a ti jí řekli o názvu Alix ve zdrojovém kódu HURDu, takže jméno odvedlo svou práci.
Linux a GNU/Linux
GNU Hurd není připravený pro produkční využití a ani nevíme, jestli někdy bude. Z flexibility návrhu pramení určité problémy a zatím není zřejmé, jak je vyřešit.
Naštěstí je dostupné jiné jádro. V roce 1991 začal Linus Torvalds s vývojem jádra kompatibilního s Unixem a nazval ho Linux. Toto jádro bylo zpočátku proprietární, ale v roce 1992 z něj Linus udělal svobodný software. Zkompletováním Linuxu s ne zcela hotovým GNU systémem vznikl úplný svobodný operační systém. (Jejich zkombinování bylo samozřejmě samo o sobě podstatným úkolem.) Vlastně můžeme spouštět verze GNU systému díky Linuxu.
Tento systém nazýváme GNU/Linux, abychom vyjádřili, že vznikl spojením systému GNU a Linuxu jakožto jádra. Prosíme, abyste nepropadali zlozvyku nazývat celý systém slovem “Linux”, protože tím byste přisuzovali zásluhy za naši práci někomu jinému. Přiznejte nám prosím zásluhy rovným dílem.
Výzvy v naší budoucnosti
Prokázali jsme naši schopnost vyvinout široké spektrum svobodného softwaru. To neznamená, že jsme neporazitelní a nezastavitelní. Díky několika obtížím je budoucnost svobodného softwaru nejistá; střet s nimi bude vyžadovat velké úsilí a vytrvalost, možná trvající roky. Bude vyžadovat takové odhodlání, v němž lidé dají najevo, že si své svobody váží a nenechají si ji od nikoho vzít.
Následující čtyři oddíly popisují tyto výzvy.
Tajemný hardware
Výrobci hardwaru mají stále vzrůstající tendence udržovat hardwarové specifikace v tajnosti. Díky tomu je obtížné psát svobodné ovladače, aby Linux a XFree86 mohly podporovat nový hardware. Nyní máme kompletní svobodné systémy, ale nebudeme je mít později, pakliže nebudou schopny podporovat budoucí počítače.
Existují dvě možnosti jak zvládnout tento problém. Programátoři se mohou použít tzv. zpětné inženýrství, aby vyzkoumali jak podporovat daný hardware. Zbylí z nás si mohou vybrat hardware, který je podporovaný svobodným softwarem; jak náš počet poroste, utajování specifikací se stane taktikou porážející sebe sama.
Zpětné inženýrství je velký kus práce; budeme mít programátory s dostatečným odhodláním pustit se do toho? Ano – pokud budou lidé přesvědčeni, že svobodný software je otázkou principu a nesvobodné ovladače nemohou být tolerovány. A utratí mnoho z nás peníze navíc, či dokonce obětuje trochu víc času, abychom mohli používat svobodné ovladače? Ano, jestliže odhodlání mít svobodu bude rozšířené.
(Poznámka z roku 2008: tato záležitost se týká i BIOSu. Máme k dispozici jeho svobodnou náhradu LibreBoot, svobodnou distribuci corebootu, ale je tu problém se získáváním specifikací hardwaru, aby ho LibreBoot mohl podporovat i bez proprietárních „blobů“.)
Nesvobodné knihovny
Nesvobodné knihovny používané na svobodných operačních systémech jsou jakousi pastí na vývojáře svobodného softwaru. Lákavé rysy knihovny jsou návnady; pokud použijete tuto knihovnu, spadnete do pasti, protože váš program nebude moci být užitečnou částí svobodného operačního systému. (Stručně řečeno, můžeme zahrnout váš program, ale nebude fungovat bez dané knihovny.) Ještě hůře, pokud se program využívající proprietární knihovnu stane populární, může nalákat jiné nic netušící programátory do pasti.
První ukázkou tohoto problému byla v osmdesátých letech sada nástrojů Motif. Přestože zde ještě nebyly svobodné operační systémy, bylo zřejmé, jakým problémem pro ně později Motif bude. GNU projekt na to reagoval dvěma způsoby: požádal jednotlivé projekty svobodného softwaru, aby podporovaly svobodné ovládací prvky X Toolkitu stejně jako ty z Motifu a požádal také, aby někdo napsal svobodnou náhradu za Motif. Trvalo to velmi dlouho; LessTif, vyvíjený skupinou Hungry Programmers („Hladoví programátoři“), se stal dostatečně výkonným aby podporoval většinu aplikací Motifu až v roce 1997.
V letech 1996 až 1998 se používala jiná nesvobodná GUI knihovna nazvaná Qt v důležité kolekci svobodného softwaru, desktopovém prostředí KDE.
Svobodné GNU/Linux systémy nemohly použít KDE, protože jsme nemohli používat danou knihovnu (Qt). Avšak někteří komerční distributoři systémů GNU/Linux, ti kteří striktně nelpěli na svobodném softwaru, přidávali ke svým systémům KDE – vytvářeli tak schopnější systém, který byl však ošizen co se svobody týče. Skupina KDE aktivně povzbuzovala programátory, aby používali Qt, a milióny nových „linuxových uživatelů“ nebyly nikdy seznámeny s tím, že je s tím něco v nepořádku. Situace vypadala hrozivě.
Komunita svobodného softwaru odpověděla na problém dvěma způsoby: GNOME a Harmony.
GNOME, GNU Network Object Model Environment, je desktopovým projektem GNU. Zahájil ho Miguel de Icaza v roce 1997 a vyvíjel ho s podporou Red Hat Software. GNOME chtěl poskytnout podobná desktopová zázemí, které by však používalo pouze svobodný software. Měl rovněž technické výhody, jako například podporu mnoha jazyků, nikoliv jen C++. Hlavním důvodem však byla svoboda: aby nebylo třeba používat jakýkoliv nesvobodný software.
Harmony je kompatibilní náhrada knihovny, navržená tak, aby umožňovala spustit KDE software bez použití Qt.
V listopadu 1998 ohlásili vývojáři Qt změnu licence. Z Qt se tak měl stát svobodný software. Nejsem si zcela jistý, ale domnívám se, že se tak stalo zčásti kvůli neústupné reakci komunity na problém způsobený nesvobodností Qt. (Nová licence je nevýhodná a nespravedlivá, takže je stále žádoucí vyvarovat se použití Qt.)
[Dodatečná poznámka: v září 2000 bylo Qt vydáno pod licencí GNU GPL, což tento problém vyřešilo]
Jak zareagujeme na další lákavou nesvobodnou knihovnu? Porozumí celá komunita tomu, že je třeba nespadnout do pasti? Nebo se mnozí z nás vzdají svobody ve prospěch pohodlí a vznikne velký problém? Naše budoucnost závisí na naší filozofii.
Softwarové patenty
Největší hrozba, které čelíme, jsou softwarové patenty, které mohou odstranit algoritmy a hlavní části programu z dosahu svobodného softwaru až na dvacet let. Patenty na LZW kompresní algoritmy byly zavedeny v roce 1983 a stále nesmíme vydávat svobodný software, který by vytvářel řádně komprimované GIFy. [V roce 2009 tento patent vypršel.] V roce 1998 byl stažen z prodeje svobodný program na vytváření komprimovaných MP3 souborů pod hrozbou soudního procesu. [patenty na MP3 vypršely v roce 2017 – zde je vidět, jak dlouho jsme museli čekat]
Jsou různé způsoby jak si poradit s patenty: můžeme hledat důkaz, že patent je neplatný, anebo se můžeme hledat alternativní řešení, abychom mohli splnit požadovanou úlohu. Každá z těchto metod je však účinná pouze v některých případech; pokud obě dvě selžou, patent může přinutit všechen svobodný software, aby se vzdal některých částí, které uživatelé vyžadují. Po dlouhém čekání, patenty vyprší, ale co budeme dělat do té doby?
Ti, kteří si cení svobodný software díky svobodě, kterou poskytuje, u něho zůstanou. Pokusíme se dělat naši práci bez patentovaných součástí. Ti, kteří si svobodného software cení kvůli předpokladům, že bude technicky vyspělejším, nazvou pravděpodobně zbrzdění kvůli patentu selháním. Ačkoli je tedy užitečné hovořit o praktické účinnosti vývojového modelu zvaného „tržiště“ a spolehlivosti a výkonnosti svobodného softwaru, nesmíme se v tomto bodě zastavit. Musíme hovořit o svobodě a principu.
Svobodná dokumentace
Největší nedostatek našich svobodných operačních systémů nespočívá v softwaru – je to nedostatek dobrých svobodných manuálů, které můžeme zahrnout do našich systémů. Dokumentace je nezbytnou součástí každého softwarového balíku; když sadě programů důležitého svobodného softwaru chybí dobrá svobodná příručka, je to velká mezera. V dnešní době máme mnoho takových mezer.
Svobodná dokumentace, jako svobodný software, se vztahuje ke svobodě, nikoliv k ceně. Kritéria, která musí splňovat svobodná příručka, jsou prakticky totožná s kritérii pro svobodný software: jedná se o poskytnutí určitých svobod všem uživatelům. Musí být povolena redistribuce (včetně komerčního prodeje), a to jak v on-line, tak v tištěné podobě, aby manuál mohl doprovázet každou kopii programu.
Právo k úpravám je rovněž zásadní. Nevěřím ale tomu, že je pro lidi nezbytné mít povolení k modifikaci všech druhů článků a knih. Myslím si například, že vy nebo já smíme omezovat modifikaci článků jako je tento, kde se popisují naše činy a názory.
Je zde ovšem zvláštní důvod, proč je svoboda modifikace rozhodující pro dokumentaci svobodného softwaru. Pokud lidé uplatní svá práva modifikovat software a přidávat nebo měnit jeho části, jsou-li svědomití, změní také příručku – aby poskytli přesnou a použitelnou dokumentaci spolu s upraveným programem. Příručka, která programátorům nedovoluje svědomitě dokončit práci, nesplňuje potřeby komunity.
Některá omezení modifikací jsou stanovena tak, aby nezpůsobovala potíže. Například požadavky na zachování poznámky o původním autorovi a copyrightu, distribučních podmínek nebo seznamu autorů jsou v pořádku. Není problémem požadovat, aby upravené verze v sobě zahrnovaly poznámku o své modifikaci, včetně označení částí, které byly smazány či změněny, dokud tyto oddíly pojednávají o netechnických tématech. Tato omezení nepředstavují žádnou potíž, protože neznemožňují svědomitému programátorovi přizpůsobení příručky tak, aby se hodila k modifikovanému programu. Jinými slovy, neznemožňují komunitě svobodného software plně využívat manuál.
Nicméně musí být možné upravovat veškerý technický obsah manuálu a posléze redistribuovat výsledky přes běžná média, přes všechny běžné kanály; jinak jsou totiž omezení komunitě na obtíž, manuál není svobodný a je potřeba vytvořit jiný.
Budou vývojáři svobodného softwaru odhodlaní vytvářet kompletní škálu svobodných příruček? Opět, naše budoucnost závisí na naší filozofii.
Musíme mluvit o svobodě
V dnešní době je přibližně deset miliónů uživatelů na systémech GNU/Linux jako například Debian GNU/Linux a Red Hat Linux. Svobodný software vyvinul několik praktických výhod, takže k němu uživatelé přecházejí již i z čistě praktických důvodů.
Dobré následky jsou zřejmé: větší zájem o rozvoj svobodného softwaru, více zákazníků pro obchod se svobodným softwarem a větší schopnosti povzbuzovat společnosti, aby namísto proprietárních produktů vyvíjely komerční svobodný software.
Zájem o software však narůstá rychleji než povědomí o filosofii, na níž je postaven, a to způsobuje potíže. Naše schopnost čelit výše popsaným výzvám a nebezpečím závisí na vůli pevně hájit svobodu. Abychom se ujistili, že naše komunita tuto vůli má, musíme předávat naše myšlenky a nápady všem nově příchozím členům v naší komunitě.
Bohužel však v tomto selháváme: úsilí přilákat do naší komunity nové uživatele dalece předstihuje úsilí naučit je chování naší komunity. Potřebujeme dělat obojí a udržet tato úsilí v rovnováze. [Proto také vznikl tento překlad. Zmiňte se o českém překladu stránek projektu GNU kamarádům a kolegům, ať se také dozví o naší komunitě – poznámka původního korektora]
„Open Source“
Učení nových uživatelů svobodě se ztížilo v roce 1998, kdy se část komunity rozhodla přestat používat termín „svobodný software“ a namísto toho užívat termín „open source software“.
Někteří z těch, co upřednostňovali tento výraz, si kladli za cíl, aby nedocházelo k záměně slov „svobodný“ se slovem „zdarma“ [1] – správný záměr. Jiní se naopak distancovali od ducha principu, jež motivoval hnutí svobodného software a uživatele GNU projektu, a aby se zalíbili vedoucím pracovníkům a firemním uživatelům, mnoho z nich následovalo ideologii, která staví zisk nad svobodu, nad komunitu, nad principy. Rétorika „open source“ se zaměřuje na možnost vytvářet vysoce kvalitní, silný software, ale vyhýbá se myšlenkám svobody, komunity a principu.
Jasným příkladem tohoto jsou „linuxové“ magazíny – jsou plné inzerátů na proprietární software, který pracuje pod GNU/Linuxem. Až se objeví příští Motif či Qt, budou tyto magazíny před nimi programátory varovat, nebo na ně naopak otiskovat inzeráty?
Podpora byznysu může být pro komunitu v mnoha ohledech přínosná; za jinak stejných okolností, je to užitečné. Ovšem získání jejich podpory tím, že budeme mluvit ještě méně o svobodě a principu, může být katastrofální; předchozí nevyváženost mezi rozsahem uživatelů a vzděláním se tak ještě zhoršuje.
„Svobodný software“ a „open source“ popisují víceméně tutéž kategorii softwaru, ale říkají odlišné věci o softwaru a o hodnotách. GNU projekt pokračuje v užívání pojmu „svobodný software“, aby dal najevo, že nejen technologie, ale hlavně svoboda je důležitá.
Pokus se!
Yodův aforismus („Neexistuje ‚pokus‘“) zní hezky, ale pro mě je neplatná. Většinu své práce jsem dělal s úzkostí, zda na ní mám a v nejistotě, zda dosáhnu cíle, který jsem si vytyčil. Přesto jsem se pokusil, protože mezi mým městem a nepřítelem nebyl nikdo jiný než já. Ke svému překvapení jsem občas uspěl.
Občas jsem neuspěl; některé z mých měst padly. Poté jsem našel další ohrožené město a připravil se na bitvu. Po čase jsem se naučil vyhledávat hrozby a stavět se mezi ně a mé město, vyzývaje ostatní hackery, aby přišli a připojili se ke mně.
Nyní již často nejsem sám. Je to pro mě úleva a radost, když vidím zástupy hackerů, kteří se pouštějí do téhož, aby pokračovali, a uvědomuji si, že by toto město mohlo přežít – prozatím. Nebezpečí jsou však rok od roku větší a nyní se Microsoft explicitně zaměřil na naši komunitu. Nemůžeme pokládat budoucnost svobody za samozřejmou. Neberte to jako samozřejmost! Jestliže si chcete udržet svoji svobodu, musíte být připraveni ji bránit.
Poznámky překladatele
- Narážíme tu na rozdíl mezi angličtinou a češtinou. Zatímco angličtina má jedno slovo: „free“, v češtině tento problém řešit nemusíme – dokážeme oba významy jasně rozlišit, protože používáme dvě různá slova: „zdarma“ a „svobodný“. Proto se také někdy v angličtině používá slovo „libre“ (přejaté ze Španělštiny nebo Francouzštiny), pomocí nějž můžeme v anglických textech akcentovat právě význam svobody a není zaměnitelné se „zdarma“ (pro něj naopak můžeme použít „gratis“).