Linuxové historky

31.05.2001



Jak Linusovi padaly Xka, jak psal domácí úkoly, jak hrál Dooma a další veselé historky vyprávěl Lars Wirzenius na Linux Expo 98. S jeho svolením jsem je přeložil a doufám, že vás pobaví stejně jako účastníky zmíněné konference - věřte, že čas jim rozhodně na zábavnosti neubral.


Resumé

Toto je série anekdot o linuxové historii pohledem dlouholetého uživatele. Ostýchá se technických detailů a je proložena osobními vzpomínkami.

Předneseno na Linux Expo v roce 1998.


Kdo jsem a proč jsem zde

Vypadá to, že jsem získal v linuxové komunitě jisté jméno, a to nehledě na svou snahu zůstat v ústraní, abych nedostával příliš mnoho dotazů od začátečníků.

Pověst o mně mimo jiné tvrdí, že znám Linux fakt dobře, což má svůj původ v dobách, kdy jsme s Linusem Torvaldsem (předpokládám, že víte, o kom mluvím) sdíleli jednu kancelář na Helsinské univerzitě. Ve skutečnosti až tak dobře Linux neznám. Kupříkladu se mi jednou při úpravách jádra povedlo vytvořit chybu, kterou vystopovat a opravit trvalo tři roky a musel to udělat nějaký borec přes OS/2. Mám na mysli funkci sprintf v jádře.

Napsal jsem sprintf v létě 1991. Linus potřeboval nějak jednoduše vypisovat zprávy jádra a nevěděl, jak používat mechanismus stdarg pro proměnný seznam funkčních argumentů. Vidím některé z vás potřásat hlavami. Ano, je to tak. Byly doby, kdy ani Linus nevěděl všechno. Vážně. Věřte mi. Byl jsem tam.

No a tak jsem pro Linuse jednoduché sprintf napsal, abych mu ukázal, jak se to dělá a on to v kernelu po nějakých úpravách použil. Chyba se týkala zpracování hvězdičky jakožto proměnné délky výstupního pole. Zapomněl jsem za ní zvýšit ukazatel a tak zde nebyla žádná možnost, aby to fungovalo. Vůbec žádná možnost. Bylo to zřejmé komukoli, kdo to zkusil. Já to samozřejmě neudělal, což znamená, že bych patrně nemohl být zaměstnán jako programátor. V roce 1994, o tři roky později, si jistý Friedemann Baitinger chyby všiml a poslal mi patch (opravu). Používal totiž mé sprintf během ladění nějakého ovladače pro OS/2.

Nicméně zpět k tomu, kdo jsem. Byl jsem Linusův kamarád ještě předtím, než Linux vůbec existoval. Potkali jsme se jakožto studenti v prváku v roce 1988. Když začal psát Linux, sledoval jsem to přirozeně se zájmem a jistou závistí. Kromě zmíněného sprintf jsem se na něm vlastně nepodílel, protože jsem jen rádoby guru. Když Linux a jeho komunita rostli, účastnil jsem se různých nezbytných netechnických úkolů. Například jsem pomáhal vytvořit Linux Documentation Project a spolumoderoval comp.os.linux.announce (známo též jako cola).

Mé moderování coly je důvodem, proč jsem tu. Když jsem to dělal již pět let, to jest do tohoto prosince, rozhodl jsem se odejít a najít nástupce. V dopise na rozloučenou jsem tam v žertu napsal, že bych nic neměl proti tripu (výletu) kolem světa, kdyby mi někdo nějaký poslal. To už je tak, že jsou lidé, kteří nerozumí vtipům, a Marc Ewing je asi jedním z nich. Sdělil mi, že bych mohl přijít sem a promluvit a že odpověď ne se nepřijímá. Pokud vás tedy už nudím, tak víte, na kom to visí.

Bůh Linus

Vy všichni znáte Linuse, alespoň z doslechu. Podivuhodné dítě. Programátor kouzelník. Hackerký bůh. Nu, vždy tomu tak nebylo. Co se chystám říct možná šokuje ty nejoddanější Linuxáky z vás, ale je to všechno pravda. Tohle je svobodná země, přesto mi ale slíbili policejní ochranu.

Už jsem vám říkal, že Linus nevěděl vždycky všechno. Já neříkám, že teď není vševědoucí. Konec konců, teď může být bohem a já se blesku neubráním. Takže budu mluvit pouze o starých časech a on mi určitě promine.

Netoliko na tom, že Linus nevěděl vše o céčku, on také nevěděl všechno o PC. Když jsem ho potkal poprvé, ani žádné neměl. Když si své první PC koupil, ani se v něm nezačal hned šťourat. Místo toho pařil hry, zvláště jednu, která se jmenovala nějak jako Prince of Persia. Tohle jsem na něm nikdy nepochopil. Mám na mysli, co je to za počítačovou hru, když nesimuluje hrací karty? Kdepak, když už si mám hrát s počítačem, dejte mi Solitaire.

Dokonce i o pár let později, v dobách, kdy Linux už byl úspěšný, Linuse stále fascinovaly praštěné počítačové hry jako Doom a Quake. To už byl natolik společensky zdatný, aby věděl, že zálibu v počítačových hrách nepřiznává nikdo po dvanáctce. A tak když pařil Dooma, obvykle tvrdil, že ladí a provádí zátěžové testy správce paměti a X serveru.

Když se Linus rozhodl, že se něco naučí, opravdu to udělal a obvykle rychle. Proto je možné, že teď už je vševědoucí. Vzpomínám si, že jednou se po nás chtěl nějaký domácí úkol z matiky. Já shodou okolností věděl, že Linus jej neudělal, ale on směle oznámil, že jej má. I stalo se, že ho učitel vyvolal, aby ukázal třídě své řešení. Na cestě k tabuli si Linus problém přečetl, postavil se na sekundu dvě před ní a předvedl řešení, které ten učitel nepochopil. Linus umí být takhle otravný.

Jednou, když byl Linus v cizině na nějaké konferenci nebo čem, upravil moje shellové login skripty tak, že když jsem se přihlásil, tak to vypadalo, že jsem v MS-DOSu. Byla to pochopitelně sranda, ale volala po pomstě. To se stalo, když jsme byli spolu v jedné kanceláři na univerzitě. Linus si vyběhl pro něco k pití nebo tak. Vytvořil jsem mu alias na startx, který nejdřív spustil skutečné startx a pak vypsal chybovou hlášku kernelu 'Oops'. Když to Linus viděl poprvé, trochu ho to znervóznilo, ale odhlásil se a smazal si to příliš rychle, takže to nepřečetl. Podruhé už ho to začalo opravdu trápit. Byla to chybová hláška zkopírovaná z linuxového kernelu a samozřejmě se do Linusova systému nehodila. Dostal se až tak daleko, že tu zprávu dekódoval ručně a mumlal si něco jako "Proč to tady padá? To nemůže padat tady!". To už jsem vybuchl smíchy a řekl mu, co jsem provedl. Docela se mu ulevilo a už na mně tyhle žertíky nikdy nezkusil.

Pokračování příště.

Staženo z http://liw.iki.fi/liw/texts/linux-anecdotes.html. S autorovým laskavým svolením v květnu 2001 do češtiny přeložil Vláďa Macek.