Svobodní jako ve Svobodě v ruštině: Kapitola 7. Dilema absolutní morálky


Svobodní jako ve Svobodě v ruštině: Kapitola 7. Dilema absolutní morálky

Zdarma jako ve Freedom in Russian: Chapter 1. The Fatal Printer


Zdarma jako ve Freedom in Russian: Chapter 2. 2001: A Hacker Odyssey


Free as in Freedom in Russian: Chapter 3. Portrét hackera v mládí


Free as in Freedom in Russian: Chapter 4. Debunk God


Free as in Freedom in Russian: Kapitola 5. Stream of Freedom


Zdarma jako ve Freedom in Russian: Kapitola 6. Komuna Emacs

Dilema absolutní morálky

V půl dvanácté v noci 27. září 1983 se ve skupině Usenet net.unix-wizards objevila neobvyklá zpráva s podpisem rms@mit-oz. Název zprávy byl krátký a mimořádně lákavý: „Nová implementace UNIXu“. Ale místo nějaké připravené nové verze Unixu čtenář našel volání:

Na Den díkůvzdání začínám psát nový, plně Unix kompatibilní operační systém s názvem GNU (GNU's Not Unix). Budu ho volně distribuovat všem. Opravdu potřebuji váš čas, peníze, kód, vybavení - jakoukoli pomoc.

Pro zkušeného unixového vývojáře byla zpráva směsí idealismu a ega. Autor se nejen zavázal znovu vytvořit od nuly celý operační systém, velmi pokročilý a výkonný, ale také jej vylepšit. Systém GNU měl obsahovat všechny potřebné komponenty, jako je textový editor, příkazový shell, kompilátor a také „řadu dalších věcí“. Slibovali také extrémně atraktivní funkce, které nebyly dostupné ve stávajících unixových systémech: grafické rozhraní v programovacím jazyce Lisp, souborový systém odolný proti chybám, síťové protokoly založené na síťové architektuře MIT.

„GNU bude moci spouštět unixové programy, ale nebude identická s unixovým systémem,“ napsal autor, „provedeme všechna nezbytná vylepšení, která dozrála během let práce na různých operačních systémech.“

Autor očekával skeptickou reakci na jeho zprávu a doplnil ji krátkou autobiografickou odbočkou pod nadpisem: „Kdo jsem?“:

Jsem Richard Stallman, tvůrce původního editoru EMACS, jednoho z klonů, na které jste pravděpodobně narazili. Pracuji v MIT AI Lab. Mám bohaté zkušenosti s vývojem kompilátorů, editorů, debuggerů, interpreterů příkazů, operačních systémů ITS a Lisp Machine. Implementována podpora obrazovky nezávislá na terminálu v ITS, stejně jako souborový systém odolný proti chybám a dva okenní systémy pro stroje Lisp.

Stalo se tak, že Stallmanův složitý projekt nezačal na Den díkůvzdání, jak bylo slíbeno. Až v lednu 1984 se Richard po hlavě vrhl do vývoje softwaru ve stylu Unixu. Z pohledu architekta systémů ITS to bylo jako přejít od stavby maurských paláců k výstavbě předměstských nákupních center. Vývoj unixového systému však nabízel i výhody. ITS měl přes všechnu svou sílu slabé místo – fungovalo to pouze na počítači PDP-10 od DEC. Na začátku 80. let Laboratoř opustila PDP-10 a ITS, které hackeři přirovnávali k rušnému městu, se stalo městem duchů. Na druhou stranu Unix byl původně navržen s ohledem na přenositelnost z jedné počítačové architektury na druhou, takže mu takové potíže nehrozily. Unix, vyvinutý mladšími výzkumníky z AT&T, proklouzl pod korporátní radar a našel tichý domov v neziskovém světě think-tanků. S méně zdroji než jejich hackerští bratři na MIT, unixoví vývojáři přizpůsobili svůj systém tak, aby běžel na zoo různorodého hardwaru. Především na 16bitovém PDP-11, který hackeři Lab považovali za nevhodný pro vážné úkoly, ale také na 32bitových sálových počítačích, jako je VAX 11/780. Do roku 1983 vytvořily společnosti jako Sun Microsystems relativně kompaktní stolní počítače – „pracovní stanice“ – výkonově srovnatelné se starým sálovým počítačem PDP-10. Na těchto pracovních stanicích se usadil i všudypřítomný Unix.

Unixová přenositelnost byla zajištěna další vrstvou abstrakce mezi aplikacemi a hardwarem. Místo psaní programů ve strojovém kódu konkrétního počítače, jak to dělali hackeři Lab při vývoji programů pro ITS na PDP-10, použili unixoví vývojáři programovací jazyk C na vysoké úrovni, který nebyl vázán na konkrétní hardwarovou platformu. Vývojáři se zároveň zaměřili na standardizaci rozhraní, přes která spolu části operačního systému interagovaly. Výsledkem byl systém, kde bylo možné přepracovat jakoukoli část, aniž by to ovlivnilo všechny ostatní části a bez narušení jejich provozu. A aby bylo možné přenést systém z jedné hardwarové architektury na druhou, stačilo také předělat pouze jednu část systému a nepřepisovat ji celou. Odborníci ocenili tuto fantastickou úroveň flexibility a pohodlí, takže se Unix rychle rozšířil do celého světa počítačů.

Stallman se rozhodl vytvořit systém GNU kvůli zániku ITS, oblíbeného duchovního dítěte hackerů AI Lab. Smrt ITS byla pro ně, včetně Richarda, ranou. Pokud mu příběh s laserovou tiskárnou Xerox otevřel oči pro nespravedlnost proprietárních licencí, pak ho smrt ITS posunula od averze k uzavřenému softwaru k aktivní opozici vůči němu.

Důvody smrti ITS, stejně jako jeho kód, sahají daleko do minulosti. V roce 1980 už většina hackerů laboratoře pracovala na stroji Lisp a operačním systému pro něj.

Lisp je elegantní programovací jazyk, který je perfektní pro práci s daty, jejichž struktura je předem neznámá. Vytvořil ji průkopník výzkumu umělé inteligence a tvůrce pojmu „umělá inteligence“ John McCarthy, který působil na MIT v druhé polovině 50. let. Název jazyka je zkratkou pro „Zpracování seznamu“ nebo „Zpracování seznamu“. Poté, co McCarthy odešel z MIT do Stanfordu, hackeři Lab poněkud změnili Lisp a vytvořili jeho místní dialekt MACLISP, kde první 3 písmena znamenala projekt MAC, díky kterému se ve skutečnosti objevila AI ​​Laboratory na MIT. Pod vedením systémového architekta Richarda Greenblatta vyvinuli hackeři Labe stroj Lisp – speciální počítač pro spouštění programů v Lispu a také operační systém pro tento počítač – samozřejmě také napsaný v Lisp.

Na začátku 80. let založily konkurenční skupiny hackerů dvě společnosti vyrábějící a prodávající stroje Lisp. Greenblattova společnost se jmenovala Lisp Machines Incorporated, nebo jednoduše LMI. Doufal, že se obejde bez vnějších investic a vytvoří čistě „hackerskou společnost“. Většina hackerů se ale přidala k Symbolics, typickému komerčnímu startupu. V roce 1982 zcela opustili MIT.

Ti, co zůstali, by se dali spočítat na prstech jedné ruky, takže oprava programů a strojů trvala déle a déle, nebo nebyly opraveny vůbec. A co je nejhorší, podle Stallmana začaly „demografické změny“ v laboratoři. Hackeři, kteří byli dříve v menšině, téměř zmizeli a nechali Laboratoř zcela k dispozici učitelům a studentům, jejichž postoj k PDP-10 byl otevřeně nepřátelský.

V roce 1982 obdržela AI ​​Lab náhradu za svůj 12 let starý PDP-10 - DECSYSTEM 20. Aplikace napsané pro PDP-10 běžely na novém počítači bez problémů, protože DECSYSTEM 20 byl v podstatě aktualizovaný PDP -10, ale ten starý operační systém vůbec nevyhovoval - ITS bylo nutné přenést na nový počítač, tedy téměř kompletně přepsat. A to je v době, kdy téměř všichni hackeři, kteří to mohli udělat, opustili laboratoř. Nový počítač tedy rychle převzal komerční operační systém Twenex. Těch pár hackerů, kteří zůstali na MIT, to mohlo jen přijmout.

„Bez hackerů, kteří by vytvořili a udržovali operační systém, jsme odsouzeni k záhubě," řekli členové fakulty a studenti. „Potřebujeme komerční systém podporovaný nějakou společností, aby mohl řešit problémy s tímto systémem sám." Stallman vzpomíná, že tento argument se ukázal jako krutý omyl, ale ve své době zněl přesvědčivě.

Zpočátku hackeři viděli Twenex jako další inkarnaci autoritářské korporatokracie, kterou chtěli rozbít. I název odrážel nepřátelství hackerů – ve skutečnosti se systém jmenoval TOPS-20, což naznačovalo kontinuitu s TOPS-10, rovněž komerčním systémem DEC pro PDP-10. Ale architektonicky neměl TOPS-20 s TOPS-10 nic společného. Byl vyroben na základě systému Tenex, který Bolt, Beranek a Newman vyvinuli pro PDP-10. . Stallman začal nazývat systém „Twenex“, jen aby se vyhnul tomu, aby mu říkal TOPS-20. „Systém byl daleko od špičkových řešení, takže jsem se nemohl odvážit nazvat jej oficiálním názvem,“ vzpomíná Stallman, „a tak jsem do ‚Tenex‘ vložil písmeno ‚w‘, aby to bylo ‚Twenex‘. (Tento název si hraje na slovo „dvacet“, tedy „dvacet“)

Počítač, který provozoval Twenex/TOPS-20, se ironicky jmenoval „Oz“. Faktem je, že DECSYSTEM 20 vyžadoval pro obsluhu terminálu malý stroj PDP-11. Když jeden hacker poprvé uviděl PDP-11 připojený k tomuto počítači, přirovnal to k okázalému výkonu Čaroděje ze země Oz. „Jsem velký a hrozný Oz! – recitoval. "Jen se nedívej na malý potěr, na kterém pracuji."

V operačním systému nového počítače ale nebylo nic vtipného. Zabezpečení a řízení přístupu byly zabudovány do Twenexu na základní úrovni a jeho aplikační nástroje byly také navrženy s ohledem na bezpečnost. Shovívavé vtipy o bezpečnostních systémech laboratoře se změnily ve vážný boj o ovládání počítače. Správci tvrdili, že bez bezpečnostních systémů by byl Twenex nestabilní a náchylný k chybám. Hackeři ujistili, že stability a spolehlivosti lze dosáhnout mnohem rychleji úpravou zdrojového kódu systému. Ale v Laboratoři už jich bylo tak málo, že je nikdo neposlouchal.

Hackeři si mysleli, že by mohli obejít bezpečnostní omezení tím, že všem uživatelům udělí „řídící privilegia“ – zvýšená práva, která jim dávají možnost dělat mnoho věcí, které má průměrný uživatel zakázáno. V tomto případě by však kterýkoli uživatel mohl odebrat „práva řízení“ jakémukoli jinému uživateli a nemohl je vrátit sobě kvůli nedostatku přístupových práv. Hackeři se proto rozhodli získat kontrolu nad systémem tím, že všem kromě nich samotných odeberou „řídící privilegia“.

Hádání hesel a spuštění ladicího programu při spouštění systému nic neudělalo. Po selhání v "státní převrat“, poslal Stallman zprávu všem zaměstnancům Laboratoře.

"Aristokrati byli až doteď poraženi," napsal, "ale nyní získali převahu a pokus o převzetí moci selhal." Richard podepsal zprávu: „Radio Free OZ“, aby nikdo nehádal, že je to on. Vynikající převlek, vezmeme-li v úvahu, že každý v Laboratoři věděl o Stallmanově postoji k bezpečnostním systémům a jeho zesměšňování hesel. Richardova averze k heslům však byla známa daleko za hranicemi MIT. Téměř celý ARPAnet, prototyp internetu té doby, přistupoval k počítačům Laboratoře pod Stallmanovým účtem. Takovým „turistou“ byl například Don Hopkins, programátor z Kalifornie, který se hackerským ústním podáním dozvěděl, že do slavného ITS systému na MIT lze vstoupit jednoduše zadáním 3 písmen Stallmanových iniciál jako přihlašovacího jména a hesla.

„Jsem navždy vděčný, že MIT mně a mnoha dalším lidem dalo svobodu používat jejich počítače,“ říká Hopkins, „pro nás všechny to znamenalo hodně.“

Tato „turistická“ politika trvala mnoho let, dokud systém ITS žil, a vedení MIT se na ni dívalo povýšeně. . Ale když se Ozův stroj stal hlavním mostem z Laboratoře do ARPAnetu, vše se změnilo. Stallman stále poskytoval přístup ke svému účtu pomocí známého přihlašovacího jména a hesla, ale administrátoři požadovali, aby si heslo změnil a nedával je nikomu jinému. Richard s odkazem na svou etiku odmítl na Ozově stroji vůbec pracovat.

„Když se na počítačích s umělou inteligencí začala objevovat hesla, rozhodl jsem se řídit svým přesvědčením, že by žádná hesla neměla být,“ řekl později Stallman, „a protože jsem věřil, že počítače nepotřebují bezpečnostní systémy, neměl jsem podporovat tato opatření k implementaci. je."

Stallmanovo odmítnutí pokleknout před velkým a hrozným strojem Oz ukázalo, že mezi hackery a nadřízenými laboratoře roste napětí. Ale toto napětí bylo jen bledým stínem konfliktu, který zuřil uvnitř samotné hackerské komunity, která se rozdělila na 2 tábory: LMI (Lisp Machines Incorporated) a Symbolics.

Symbolics získal spoustu investic zvenčí, což přilákalo mnoho hackerů z laboratoře. Pracovali na strojovém systému Lisp jak na MIT, tak mimo něj. Do konce roku 1980 společnost najala 14 zaměstnanců Laboratoře jako konzultanty pro vývoj vlastní verze stroje Lisp. Zbytek hackerů, nepočítaje Stallmana, pracoval pro LMI. Richard se rozhodl nestranit a ze zvyku zůstal sám.

Zpočátku hackeři najatí Symbolics pokračovali v práci na MIT a vylepšovali strojový systém Lisp. Ti, stejně jako LMI hackeři, použili pro svůj kód licenci MIT. Vyžadovalo, aby byly změny vráceny MIT, ale nevyžadovalo, aby MIT změny distribuovalo. Během roku 1981 však hackeři dodržovali gentlemanskou dohodu, ve které byla všechna jejich vylepšení zapsána do stroje Lisp MIT a distribuována všem uživatelům těchto strojů. Tento stav věcí stále zachovával určitou stabilitu hackerského kolektivu.

Ale 16. března 1982 – Stallman si tento den dobře pamatuje, protože měl narozeniny – gentlemanská dohoda skončila. Stalo se tak na příkaz vedení Symbolics, které tak chtělo uškrtit svého konkurenta, společnost LMI, pro kterou pracovalo mnohem méně hackerů. Vedoucí představitelé Symbolics uvažovali takto: pokud má LMI mnohonásobně méně zaměstnanců, pak se ukazuje, že celková práce na stroji Lisp je pro něj výhodná, a pokud se tato výměna vývoje zastaví, pak bude LMI zničena. K tomu se rozhodli zneužít literu licence. Místo provádění změn ve verzi systému MIT, kterou by LMI mohla používat, začali MIT dodávat verzi systému Symbolics, kterou mohli upravovat, jak chtěli. Ukázalo se, že jakékoli testování a úpravy strojového kódu Lisp na MIT šly pouze ve prospěch Symbolics.

Jako muž zodpovědný za údržbu laboratorního stroje Lisp (s Greenblattovou pomocí prvních pár měsíců) Stallman zuřil. Hackeři společnosti Symbolics poskytli kód se stovkami změn, které způsobovaly chyby. Vzhledem k tomu, že to Stallman považoval za ultimátum, přerušil komunikaci Laboratoře se Symbolics, slíbil, že už nikdy nebude pracovat na strojích této společnosti, a oznámil, že se připojí k práci na stroji MIT Lisp na podporu LMI. "V mých očích byla laboratoř neutrální zemí, jako Belgie za druhé světové války," říká Stallman, "a pokud Německo napadlo Belgii, Belgie vyhlásila Německu válku a připojila se k Británii a Francii."

Když si vedoucí představitelé Symbolics všimli, že jejich nejnovější inovace se stále objevují na verzi stroje Lisp pro MIT, naštvali se a začali obviňovat hackery laboratoře z krádeže kódu. Stallman ale autorský zákon vůbec neporušil. Studoval kód poskytnutý Symbolics a dělal logické odhady o budoucích opravách a vylepšeních, které začal od nuly implementovat pro stroj Lisp na MIT. Vedoucí pracovníci společnosti Symbolics tomu nevěřili. Na Stallmanův terminál nainstalovali spyware, který zaznamenával vše, co Richard udělal. Doufali tedy, že shromáždí důkazy o krádeži kódu a ukážou je správě MIT, ale ani na začátku roku 1983 nebylo téměř co ukázat. Měli jen tucet míst, kde kód obou systémů vypadal trochu podobně.

Když správci laboratoře ukázali Stallmanovi důkazy Symbolics, ten to vyvrátil a řekl, že kód je podobný, ale ne stejný. A obrátil proti němu logiku vedení Symbolics: pokud jsou tato zrnka podobného kódu vše, co na něj mohli vykopat, pak to jen dokazuje, že Stallman kód ve skutečnosti neukradl. To stačilo, aby manažeři Laboratoře schválili Stallmanovu práci a pokračoval v ní až do konce roku 1983. .

Stallman ale změnil svůj přístup. Aby sebe a projekt co nejvíce ochránil před tvrzeními Symbolics, úplně přestal prohlížet jejich zdrojové kódy. Začal psát kód výhradně na základě dokumentace. Richard od Symbolics neočekával největší inovace, ale implementoval je sám, poté pouze přidal rozhraní pro kompatibilitu s implementací Symbolics, přičemž se spoléhal na jejich dokumentaci. Přečetl si také protokol změn kódu Symbolics, aby viděl, jaké chyby opravují, a sám tyto chyby opravil jinými způsoby.

To, co se stalo, posílilo Stallmanovo odhodlání. Vytvořil analogy nových funkcí Symbolics a přesvědčil pracovníky Laboratoře, aby použili verzi MIT stroje Lisp, která zajistila dobrou úroveň testování a detekci chyb. A verze MIT byla LMI zcela otevřená. "Chtěl jsem potrestat Symbolics za každou cenu," říká Stallman. Toto prohlášení ukazuje nejen to, že Richardova postava má k pacifismu daleko, ale také to, že se ho konflikt o stroj Lisp dotkl.

Stallmanovo zoufalé odhodlání lze pochopit, když uvážíte, jak to s ním vypadalo – „zničení“ jeho „domova“, tedy hackerské komunity a kultury AI ​​Lab. Levy později provedl rozhovor se Stallmanem prostřednictvím e-mailu a Richard se přirovnal k Ishi, poslednímu známému příslušníkovi indiánského národa Yahi, který byl vyhuben v indických válkách v 1860. a 1870. letech XNUMX. století. Tato analogie dává popisovaným událostem epický, téměř mytologický rozsah. Hackeři, kteří pro Symbolics pracovali, to viděli v trochu jiném světle: jejich společnost nezničila ani nevyhladila, ale pouze udělala to, co se mělo udělat už dávno. Po přesunutí stroje Lisp do komerční oblasti změnila Symbolics svůj přístup k navrhování programů – místo toho, aby je ořezávala podle zarytých vzorů hackerů, začala používat měkčí a humánnější standardy manažerů. A považovali Stallmana ne za nepřátelského bojovníka na obranu spravedlivé věci, ale za nositele zastaralého myšlení.

Olej do ohně přilévaly i osobní rozbroje. Ještě před příchodem Symbolics se mnoho hackerů Stallmanovi vyhýbalo a nyní se situace mnohonásobně zhoršila. „Už jsem nebyl zván na výlety do čínské čtvrti,“ vzpomíná Richard, „Greenblatt začal se zvykem: když chcete obědvat, obejdete své kolegy a pozvete je s sebou nebo jim pošlete zprávu. Někde v letech 1980-1981 mi přestali volat. Nejen, že mě nepozvali, ale jak se mi později jeden člověk přiznal, tlačili na ostatní, aby mi o plánovaných vlacích na oběd nikdo neřekl.“

Zdroj: linux.org.ru

Přidat komentář