Vaba kui vabadus eesti keeles: Peatükk 1. Saatuse printer
Free as in Freedom vene keeles: Peatükk 2. 2001: Häkkerite odüsseia
Free as in Freedom eesti keeles: Peatükk 3. Häkkeri portree nooruses
Free as in Freedom eesti keeles: Peatükk 4. Loo jumalat
Free as in Freedom eesti keeles: Peatükk 5. Vabaduse oja
Vaba nagu vabadus eesti keeles: Peatükk 6. Emacsi komuniteet
Aafrika absoluutse moraali dilemmas
27. septembril 1983 kell 12:30 öösel ilmus Usenet-grupis net.unix-wizards ebatavaline sõnum, mille autoriks oli rms@mit-oz. Sõnum oli lühike ja äärmiselt köitev: "Uus UNIX’i teostus". Kuid valmis Unix’i uue versiooni asemel leidis lugeja üleskutse:
Selle Thankgiving'i päeval alustan ma uue, täiesti Unix’iga ühilduva operatsioonisüsteemi kirjutamist, mille nimeks saab GNU (GNU ei ole Unix). Ma jagan seda vabalt kõigile soovijatele. Mul on väga vaja teie aega, raha, koodi, varustust – igasugune abi on teretulnud.
Kogen kogen Unix-arendaja silmis näis sõnum seguna idealismist ja üleolekust. Autor ei tahtnud mitte ainult nullist kogu arenenud ja võimsa operatsioonisüsteemi taasluua, vaid ka seda täiustada. GNU süsteem pidi sisaldama kõiki vajalikke komponente, nagu tekstiredaktor, käsurealiides, kompilaator ja "mitmed teised asjad". Lubati ka äärmiselt atraktiivseid võimalusi, mida olemasolevad Unix-süsteemid ei pakkunud: graafiline liides Lisp programmeerimiskeeles, tõrkele vastupidav failisüsteem ja MTI võrguarhitektuuril põhinevad võrgu protokollid.
„GNU suudab käitada Unix-rakendusi, kuid ei ole identne Unix süsteemiga,” kirjutas autor, „me teeme kõik vajalikud täiustused, mis on aastatepikkuse töö jooksul erinevates operatsioonisüsteemides küpsenud."
Kardades skeptilist reaktsiooni oma sõnumile, lisas autor sellele lühikese autobiograafilise kõrvalepõike pealkirjaga: „Kes ma olen?”:
Mina olen Richard Stallman, originaalse EMACSi toimetaja looja, mille kloonidega olete ilmselt kokku puutunud. Töödan Massachusettsi Tehnoloogiainstituudi AI Laboratooriumis. Mul on suur kogemus kompilaatorite, toimetajate, silurite, käsurea tõlgendajate, ITS-i ja Lisp Masinate operatsioonisüsteemide arendamisel. Olen rakendanud terminalidest sõltumatut ekraanituge ITS-is ning loonud vea suhtes vastupidava failisüsteemi ja kaks aknasüsteemi Lisp-masinate jaoks.
Kuid siiski juhtus nii, et Stallmani keeruline projekt ei alustatud eeldataval Tänupäeval. Alles 1984. aasta jaanuaris pühendus Richard täielikult Unix-stiilis tarkvara arendamisele. Sysadmini ITS vaatenurgast oli see sama, nagu minna mauri paleede ehitamiselt äärelinna kaubanduskeskuste rajamisele. Siiski avas Unix-süsteemi arendamine ka oma eelised. ITS-l, vaatamata oma võimsusele, oli nõrk koht – see töötas ainult DEC-i PDP-10 arvutitel. 1980. aastate alguses loobus labor PDP-10-st, ja ITS, mida häkkerid võrdsustasid elava linnaga, muutus kummitavaks linnaks. Unix seevastu oli algselt välja töötatud nii, et see oleks ülekantav ühest arvutiarhitektuurist teise, mistõttu sellised probleemid ei puudutanud seda. AT&T nooremate teadlastena välja töötatud Unix libises mööda ettevõtte radarite ja leidis rahuliku sadama teaduslike keskuste mittekasumlikus maailmas. Omades vähem ressursse kui nende MIT-i häkkeri kolleegid, kohandasid Unix-i arendajad oma süsteemi töötamiseks mitmesugustel seadmetel. Peamiselt 16-bitise PDP-11-l, mille labori häkkerid pidasid tõsiste ülesannete jaoks kõlbmatuks, kuid ka 32-bitistel peamisteenustel nagu VAX 11/780. 1983. aastaks olid sellised ettevõtted nagu Sun Microsystems loonud suhteliselt kompaktseid lauaarvuteid – "töötamisjaamu", mis olid võimelt võrreldavad vana PDP-10 peamisteenusega. Neid töötamisjaamu asustas samuti kõikjal viibiv Unix.
Unix'i ülekantavus tagati täiendava abstraktsioonikihi abil rakenduste ja riistvara vahel. Selle asemel, et kirjutada programme konkreetse arvuti masinkoodides, nagu tegid Labori häkkerid, arendades ITS-i rakendusi PDP-10-l, kasutasid Unix'i arendajad kõrgetasemelist programmeerimiskeelt C, mis ei olnud seotud konkreetse riistvaraplatformiga. Arendajad keskendusid liideste standardiseerimisele, mille kaudu operatsioonisüsteemi osad omavahel suhtlesid. Tulemuseks oli süsteem, kus mingeid komponente sai ümber ehitada, mõjutamata teisi komponente ega katkestades nende tööd. Ja et süsteemi ühest arhitektuurist teise üle kanda, piisab ainult ühe komponendi ümbertegemisest, mitte kogu süsteemi ümber kirjutamisest. Spetsialistid hindasid seda fantastilist paindlikkuse ja mugavuse taset, mistõttu Unix levis kiiresti arvutimaailmas.
Stallman otsustas luua GNU süsteemi, kuna tema kõige armastatum laps, AI Labori ITS, suri. ITS-i surm oli nende jaoks, sealhulgas Richardi jaoks, šokk. Kui lugu Xerox'i laserprinterist avas tema silmad omandi litsentside ebaõiglusele, siis ITS-i surm tõukaski teda suletud tarkvara tagajärgedest aktiivsesse vastupanusse.
ITS-i hukka põhjused, nagu ka tema kood, ulatusid kaugele minevikku. 1980. aastaks töötas enamik AI Labori häkkeritest juba Lisp-masina ja selle operatsioonisüsteemi kallal.
Lisp – elegantne programmeerimiskeel, mis sobib suurepäraselt andmete töötlemiseks, mille struktuur on eelnevalt teadmata. Selle lõi tehisintellekti uurimise pioneer ja termini "tehisintellekt" loojaks olnud John McCarthy, kes töötas MIT-is 1950. aastate teisel poolel. Keela nimi on lühend "LISt Processing" ehk "loendite töötlemine". Pärast seda, kui McCarthy lahkus MIT-ist Stanfordi, muutsid Labori häkkerid Lisp-i veidi, luues selle kohandatud murde MACLISP, kus esimesed 3 tähte tähistavad projekti MAC, mille toel asutati III Labor MIT-is. Süsteemi arhitekti Richard Greenblatt'i juhendamisel töötasid Labori häkkerid välja Lisp-masina – spetsiaalse arvuti Lisp keeles kirjutatud programmide täitmiseks ning ka selle arvuti jaoks operatsioonisüsteemi – samuti, muidugi, Lisp-is kirjutatud.
1980. aastate alguses asutasid konkurentsivõimelised häkkerigruppide kaks ettevõtet, mis tegelesid Lisp-masinate tootmise ja müügiga. Greenblatti ettevõte kandis nime Lisp Machines Incorporated ehk LMI. Ta lootis vältida välist investeeringut ja luua puhtalt "häkkerite ettevõtte". Kuid enamus häkkeritest liitus Symbolicsiga, tavapärase kaubandusliku idufirmaga. 1982. aastaks olid nad juba täielikult lahkunud MIT-st.
Need, kes jäid, mahtusid ühe käe sõrmedele, mistõttu programme ja masinad parandati järjest kauem või mitte üldse. Ja mis veel hullem, nagu ütles Stallman – Laboratooriumis algasid „demograafilised muutused”. Häkkerid, kes olid varemgi vähemuses, kadusid peaaegu täielikult, jättes Laboratooriumi õpetajate ja üliõpilaste täielikku valda, kelle suhtumine PDP-10-sse oli avatud vastumeelsusega.
1982. aastal sai tehisintellekti laboratoorium oma 12 aastat vana PDP-10 asenduse – DECSYSTEM 20. PDP-10 jaoks kirjutatud rakendused töötasid uuel arvutil muredeta, kuna DECSYSTEM 20 oli põhimõtteliselt uuendatud PDP-10, kuid varasem operatsioonisüsteem ei sobinud üldse – ITS tuli uuele arvutile portida, mis tähendab, et see tuli peaaegu täielikult ümber kirjutada. Ja just sel ajal olid laborist lahkunud peaaegu kõik häkkerid, kes oleksid sellega tegeleda saanud. Seetõttu kehtestis uuel arvutil kiiresti kommertslik operatsioonisüsteem Twenex. Ainult mõned häkkerid, kes MIT-s veel olid, said sellega leppida.
Ilma häkkeriteta, kes tooks esile operatsioonisüsteemi loomise ja hooldamise, oleme hukule määratud, ütlesid osakonna töötajad ja üliõpilased – me vajame kommertssüsteemi, mida toetab mõni ettevõte, et nad saaksid selle süsteemiga seotud probleemid ise lahendada. Stallman meenutab, et see аргumend osutus julmaks eksituseks, kuid sel hetkel kõlas see veenvalt.
Alguses nägid häkkerid Twenexis ainult veel üht näidet autoritaarsest korporatiivsusest, mille nad soovisid purustada. Juba nimi peegeldas häkkerite vastumeelsust – tegelikult kutsuti süsteemi TOPS-20, mis viitas järjepidevusele TOPS-10-ga, samuti DEC-i kommertssüsteemiga PDP-10 jaoks. Kuid arhitektuuri poolest ei olnud TOPS-20-l TOPS-10-ga midagi ühist. See loodi Tenexi süsteemi põhjal, mille Bolt, Beranek ja Newman arendasid PDP-10 jaoks. Nime „Twenex” hakkas kasutama Stallman, et mitte nimetada seda TOPS-20-ks. „Süsteem oli kaugel tipplahendustest, nii et ametlikku nime oli mul raske suule viia,” meenutab Stallman, „seega panin 'Tenex' sisse tähe 'w', et oleks 'Twenex'.“ (See nimi mängib sõnaga „twenty“, st „kakskümmend“)
Arvutit, mille peal Twenex/TOPS-20 töötas, kutsuti irooniaga „Oziks“. Tegelikult nõudis DECSYSTEM 20 väikesearvutit PDP-11 töö terminalsüsteemiks. Üks häkker, nähes esmakordselt PDP-11 ühendust selle arvutiga, võrdles seda võimsa Esmeralda ilmumisega. „Mina olen suur ja hirmsa Oz!” kuulutas ta. „Ainult ärge vaadake sellist tillukest, kes selle kallal töötab!”
Kuid uue arvuti operatsioonisüsteemis polnud enam midagi naljakat. Turvalisus ja juurdepääsukontroll olid Twenexis sisseehitatud algtasemel, ning selle utiliidid koos rakendustega olid samuti turvalisust silmas pidades välja töötatud. Ükskõiksed naljad Laboratooriumi turvasüsteemide üle muutusid tõsiseks lahinguks arvuti juhtimise pärast. Administratoorid väitsid, et ilma turvasüsteemideta on Twenex ebausaldusväärne ja vigadele vastuvõtlik. Häkkerid kinnitasid, et stabiilsust ja usaldusväärsust on palju kiiremini võimalik saavutada süsteemi lähtekoodi redigeerimise teel. Kuid Laboratooriumis oli neid juba nii vähe, et keegi ei kuulnud nende sõnu.
Häkkerid arvasid, et turvapiiranguid on võimalik ringrada, andes kõigile kasutajatele "juhtprivilegeerimise" – kõrgemad õigused, mis võimaldavad teha palju asju, mida tavakasutajatele on keelatud. Kuid sellisel juhul sai iga kasutaja võtta "juhtprivilegeerimise" kelleltki teiselt, ja too ei saanud neid endale tagasi võtta, kuna tal ei olnud juurdepääsuõigusi. Seetõttu otsustasid häkkerid saada süsteemi üle kontrolli, võttes "juhtprivilegeerimise" kõigilt välja arvatud endalt.
Paroolide näppimine ja siluri käivitamine süsteemi käivitamise ajal ei andnud tulemusi. Pärast ebaõnnestumist "riigipöörde", saatis Stallman sõnumi kõigile Labori töötajatele.
«Kuni praeguni olid aadlikud alistatud, – kirjutas ta, – aga nüüd on nad võidukad ja jõupingutused võimu haaramiseks ei toonud tulemusi.» Richard allkirjastas sõnumi: «Radio Free OZ», et keegi ei arvaks, et see on tema. Suurepärane maskeerimine, arvestades, et kõik Laboratooriumis teadsid Stallmani suhet turvasüsteemide ja tema naljadega paroolide üle. Richardi vastumeelsus paroolide suhtes oli teada kaugel väljaspool MITi. Laboratooriumi arvutitesse Stallmani kontoga sisenes peaaegu kogu ARPAnet – interneti eelkäija toona. Näiteks oli selline «turist» Don Hopkins, California programmeerija, kes kuulis häkkerite kaudu, et kuulsasse ITS-süsteemi MITis saab sisse logida lihtsalt, sisestades Stallmani initsiaalide kolm tähte nii kasutajanime kui paroolina.
«Olen MITile lõputult tänulik, et mina ja paljud teised inimesed saime vabalt kasutada nende arvuteid, – ütleb Hopkins, – see tähendas meie jaoks kõike.»
See «turistiv» poliitika kestis aastaid, kuni ITS süsteem töötas, ja MTI juhtkond vaatas sellele möödaminnes. Kuid kui Oz'i masin sai peamiseks sillaks Laboratooriumist ARPAnet'i, muutus kõik. Stallman andis endiselt juurdepääsu oma kontole tuntud kasutajanime ja parooliga, kuid administraatorid nõudsid, et ta muudaks parooli ja ei annaks seda enam kellelegi. Richard, uskudes oma eetikat, keeldus üldse Oz'i masinaga töötamast.
«Kui paroolid hakkasid ilmuma Laboratooriumi IA arvutites, otsustasin järgida oma veendumust, et paroolid ei peaks eksisteerima," ütles hiljem Stallman, "ja kuna ma arvasin, et arvutitele ei ole turvasüsteeme vaja, ei pidanud ma toetama nende rakendamise meetmeid."
Stallmani keeldumine Oz'i suure ja õudse masina ees kummardamisest näitas, et häkkerite ja Laboratooriumi juhtkonna vahel kasvas pinged. Kuid see pingetunne oli vaid kahvatu vari sellest konfliktist, mis toimus häkkerite kogukonnas, mis oli jagunenud kaheks rindejooneks: LMI (Lisp Machines Incorporated) ja Symbolics.
Symbolics sai palju investeeringuid väljastpoolt, mis tõi ligi paljusid labori häkkereid. Nad töötasid Lisp-masina süsteemi kallal nii MIT-is kui ka väljaspool seda. 1980. aasta lõpuks palkas ettevõte 14 labori töötajat konsultantidena, et arendada välja oma versioon Lisp-masinast. Teised häkkerid, välja arvatud Stallman, töötasid LMI-s. Richard otsustas mitte kedagi toetada ja oli harjumusest nagu ikka üksi.
Esialgu jätkasid Symbolics'i palgatud häkkerid töötamist ka MIT-is, täiustades Lisp-masina süsteemi. Nad, nagu ka LMI häkkerid, kasutasid oma koodi jaoks MIT litsentsi. See nõudis muudatuste tagastamist MIT-ile, kuid ei nõudnud MIT-lt nende muudatuste levitamist. Sellegipoolest järgnesid häkkerid 1981. aastal härrasmeeste kokkuleppele, mille kohaselt sisestati kõik nende täiustused MIT-i Lisp-masina ja levitati kõigi nende masinate kasutajate vahel. Selline olukord säilitas veel mingisuguse stabiilsuse häkkerite rühmas.
Kuid 16. märtsil 1982, mil Stallman seda päeva hästi mäletab, sest see oli tema sünnipäev, lõppes härrasmeeste kokkulepe. See juhtus Symbolicsi juhtkonna tahtel, kes soovinud seeläbi oma konkurenti, LMI-d, hammustada; ettevõttesse töötas palju vähem häkkereid. Symbolicsi juhid arvasid, et kui LMI-l on oluliselt vähem töötajaid, siis on üldine töö Lisp-masina kallal just neile kasulik ja kui lõpetada see koostöö, siis LMI hävitatakse. Selle eesmärgi saavutamiseks otsustasid nad litsentsitingimusi kuritarvitada. Selle asemel, et teha muudatusi MTI versioonis süsteemist, mis sobis LMI-le, hakkasid nad VARUSTAMA MTI-le Symbolicsi versiooni süsteemist, mida nad saaksid muuta kuidas iganes soovivad. Tuli välja, et iga testimine ja Lisp-masina koodi redigeerimine MTIs käis ainult Symbolicsi kasuks.
Laboratoorile Lisp-masina hooldamise eest vastutava inimesena (esimese paarikuu jooksul koos Grinblattiga) reageeris Stallman ägedalt. Symbolics'i häkkerid esitasid koodi, kus oli sadu muudatusi, mis põhjustasid vigu. Tõlgendades seda ultimaatumina, katkestas Stallman Laboratori side Symbolics'iga, vannus, et ei hakka kunagi enam töötama selle ettevõtte masinates, ja kuulutas, et liitub MTI Lisp-masina arendamisega LMI toe nimel. "Minu silmis oli Laboratoorium neutraalne riik, nagu Belgia Teise maailmasõja ajal," räägib Stallman, "ja kui Saksamaa tungib Belgiasse, kuulutab see Saksamaale sõja ja liitub Suurbritannia ja Prantsusmaaga."
Kui Symbolics'i juhid märkasid, et nende viimased uuendused ilmuvad endiselt ka MIT versiooni Lisp-masinasse, said nad vihaseks ja hakkasid süüdistama Laboratooriumi häkkerite koodi varguses. Kuid Stallman ei rikkunud autoriõigusi. Ta uuris Symbolics'i esitatud koodi ja tegi loogilisi järeldusi tulevaste paranduste ja täiustuste kohta, mida ta hakkas nullist rakendama MIT Lisp-masinasse. Symbolics'i juhid ei uskunud seda. Nad paigaldasid kaaperdamisprogrammi Stallmani terminalile, mis salvestas kõik, mida Richard tegi. Nii lootsid nad koguda tõendeid koodi varguse kohta ja näidata neid MIT administratsioonile, kuid isegi 1983. aasta alguseks ei olnud peaaegu midagi näidata. Kõik, mis neil oli, oli mingi tosin kohta, kus kahe süsteemi kood näis veidi sarnane.
Kui Laboratooriumi administraatorid näitasid tõendeid Symbolics'ile Stallmanile, lükkas ta need ümber, öeldes, et kood oli sarnane, kuid mitte identne. Ta pööras Symbolics'i juhtimise loogika nende enda vastu: kui need sarnased kooditükid on kõik, mida nad suudavad leida, siis tõestab see vaid, et Stallman polnud koodi tegelikult varastanud. Seda oli piisavalt, et Laboratooriumi juhid kiidaksid Stallmani töö heaks, ja ta jätkas seda kuni 1983. aasta lõpuni.
Kuid Stallman muutis oma lähenemist. Et maksimaalselt end ja projekti Symbolics'e nõuete eest kaitsta, lõpetas ta täielikult nende lähtekoodide vaatamise. Ta hakkas koodi kirjutama ainult dokumentatsiooni järgi. Suurimad uuendused, mida Richard ootas, ei tulnud Symbolics'ilt, vaid ta tegi need ise, lisades hiljem ainult liideseid, et tagada ühilduvus Symbolics'i rakendustega, toetudes nende dokumentatsioonile. Ta luges ka Symbolics'i koodi muudatusi, et mõista, milliseid vigu nad parandasid, ja lahendas need vead ise, muude meetoditega.
Toimuv on tugevdanud Stallmani otsust. Uute Symbolicsi funktsioonide analoogide loomisega suunas ta labori töötajad LMI versiooni Lisp-masinasse, mis tagas hea testi- ja veaotsingu taseme. LMI versioon oli täiesti avatud LMI jaoks. „Soovisin iga hinnaga Symbolicsit karistada,“ räägib Stallman. See väide näitab mitte ainult seda, et Richardi iseloom on kaugel pacifismist, vaid ka seda, et konflikt Lisp-masina ümber mõjutas teda sügavalt.
Stollmani meelekindluse saab aru, kui arvestada, kuidas kõik tema jaoks välja nägi – nagu tema "kodude" purustamine, st häkkerite kogukonna ja AI Laboratooriumi kultuuri. Hiljem küsis Levy Stollmanilt e-kirjas intervjuud, kus Richard võrdsustas end Ishi'ga – viimase tuntud esindajaga Yahi indiaanlastest, keda hävitati 1860ndatel ja 70ndatel indiaanlasete sõdades. See analoogia annab jutustatud sündmustele epilise, peaaegu mütoloogilise mõõtme. Häkkerid, kes töötasid Symbolicsis, nägid seda pisut teises valguses: nende ettevõte ei purustanud ega hävitanud, vaid tegi lihtsalt seda, mida oli ammu vaja teha. Kolides Lisp-masina kaubandusse, muutis Symbolics lähenemist programmide projekti - häkkerite jäikade standardite asemel hakati kasutama pehmemaid ja inimlikumaid juhtimiste põhimõtteid. Ja Stollmanit nad ei pidanud enam õiguse eest seisvaks vastaseks, vaid aegunud mõtlemise kandjaks.
Tulekahjule lisas õli isiklikud erimeelsused. Enne Symbolicsi ilmumist hoidis paljusid häkkereid Stallmanist eemale, kuid nüüd on olukord dramaatiliselt halvenenud. „Mind ei kutsutud enam reisidele Chinatowni, – meenutab Richard, – Greenblatt andis alguse traditsioonile: kui sa soovid lõunatada, lähed sa kolleegide juurde ja kutsud nad endaga kaasa või saadad neile sõnumi. Kusagil 1980-1981. aastal ei kutsutud mind enam. Nad mitte ainult ei kutsunud mind, vaid nagu üks inimene hiljem tunnistas, avaldasid nad survet teistele, et keegi ei räägiks mulle kavandatud lõunareisidest.“
Allikas: linux.org.ru

