Vrij zoals in Vrijheid in het Russisch: Hoofdstuk 7. Het dilemma van absolute moraliteit


Vrij zoals in Vrijheid in het Russisch: Hoofdstuk 7. Het dilemma van absolute moraliteit

Vrij zoals in Vrijheid in het Russisch: Hoofdstuk 1. De fatale printer


Vrij zoals in Vrijheid in het Russisch: Hoofdstuk 2. 2001: A Hacker Odyssey


Vrij zoals in Vrijheid in het Russisch: Hoofdstuk 3. Portret van een hacker in zijn jeugd


Vrij zoals in Vrijheid in het Russisch: Hoofdstuk 4. Ontkracht God


Vrij zoals in Vrijheid in het Russisch: Hoofdstuk 5. Een straaltje vrijheid


Vrij zoals in Vrijheid in het Russisch: Hoofdstuk 6. Emacs Commune

Het dilemma van de absolute moraliteit

Om half twaalf in de nacht van 27 september 1983 verscheen er een ongebruikelijk bericht in de Usenet-groep net.unix-wizards, ondertekend rms@mit-oz. De titel van het bericht was kort en uiterst verleidelijk: “Een nieuwe implementatie van UNIX.” Maar in plaats van een kant-en-klare nieuwe versie van Unix vond de lezer een oproep:

Deze Thanksgiving begin ik met het schrijven van een nieuw, volledig Unix-compatibel besturingssysteem genaamd GNU (GNU's Not Unix). Ik zal het vrijelijk onder iedereen verspreiden. Ik heb echt je tijd, geld, code, uitrusting nodig - alle hulp.

Voor een ervaren Unix-ontwikkelaar was de boodschap een mengeling van idealisme en ego. De auteur beloofde niet alleen een volledig besturingssysteem, zeer geavanceerd en krachtig, opnieuw te creëren, maar ook om het te verbeteren. Het GNU-systeem zou alle noodzakelijke componenten bevatten, zoals een teksteditor, een opdrachtshell, een compiler en “een aantal andere dingen”. Ze beloofden ook buitengewoon aantrekkelijke functies die niet beschikbaar waren in bestaande Unix-systemen: een grafische interface in de programmeertaal Lisp, een fouttolerant bestandssysteem, netwerkprotocollen gebaseerd op de MIT-netwerkarchitectuur.

“GNU zal Unix-programma’s kunnen draaien, maar zal niet identiek zijn aan het Unix-systeem”, schreef de auteur. “We zullen alle noodzakelijke verbeteringen aanbrengen die door de jaren heen van werken op verschillende besturingssystemen volwassen zijn geworden.”

Anticiperend op een sceptische reactie op zijn boodschap, vulde de auteur deze aan met een korte autobiografische uitweiding onder de kop: “Wie ben ik?”:

Ik ben Richard Stallman, maker van de originele EMACS-editor, een van de klonen waarvan je waarschijnlijk wel eens bent tegengekomen. Ik werk bij het MIT AI Lab. Ik heb uitgebreide ervaring met het ontwikkelen van compilers, editors, debuggers, opdrachtinterpreters, ITS- en Lisp Machine-besturingssystemen. Implementeerde terminal-onafhankelijke schermondersteuning in ITS, evenals een fouttolerant bestandssysteem en twee venstersystemen voor Lisp-machines.

Toevallig begon het ingewikkelde project van Stallman niet op Thanksgiving Day, zoals beloofd. Pas in januari 1984 stortte Richard zich halsoverkop in de Unix-achtige softwareontwikkeling. Vanuit het perspectief van een ITS-systeemarchitect was het alsof je van het bouwen van Moorse paleizen naar het bouwen van winkelcentra in voorsteden ging. De ontwikkeling van het Unix-systeem bood echter ook voordelen. ITS had, ondanks al zijn kracht, een zwak punt: het werkte alleen op een PDP-10-computer uit DEC. Begin jaren tachtig verliet het laboratorium de PDP-80 en werd ITS, dat door hackers werd vergeleken met een drukke stad, een spookstad. Unix daarentegen werd oorspronkelijk ontworpen met het oog op overdraagbaarheid van de ene computerarchitectuur naar de andere, dus dergelijke problemen vormden geen bedreiging voor het systeem. Ontwikkeld door jonge onderzoekers bij AT&T, verdween Unix onder de bedrijfsradar en vond het een rustig thuis in de non-profitwereld van denktanks. Met minder middelen dan hun hackerbroeders bij MIT, pasten de Unix-ontwikkelaars hun systeem aan zodat het op een dierentuin van uiteenlopende hardware kon draaien. Voornamelijk op de 10-bit PDP-16, die Lab-hackers ongeschikt achtten voor serieuze taken, maar ook op 11-bit mainframes zoals de VAX 32/11. In 780 hadden bedrijven als Sun Microsystems relatief compacte desktopcomputers (‘werkstations’) gemaakt die qua vermogen vergelijkbaar waren met het oude PDP-1983-mainframe. De alomtegenwoordige Unix vestigde zich ook op deze werkstations.

Unix-portabiliteit werd mogelijk gemaakt door een extra abstractielaag tussen applicaties en hardware. In plaats van programma's in de machinecode van een specifieke computer te schrijven, zoals de Lab-hackers deden bij het ontwikkelen van programma's voor ITS op de PDP-10, gebruikten Unix-ontwikkelaars de programmeertaal C op hoog niveau, die niet gebonden was aan een specifiek hardwareplatform. Tegelijkertijd concentreerden de ontwikkelaars zich op het standaardiseren van de interfaces waarmee delen van het besturingssysteem met elkaar communiceerden. Het resultaat was een systeem waarbij elk onderdeel opnieuw kon worden ontworpen zonder alle andere onderdelen te beïnvloeden en zonder de werking ervan te verstoren. En om een ​​systeem van de ene hardwarearchitectuur naar de andere over te brengen, was het ook voldoende om slechts één deel van het systeem opnieuw te maken, en niet om het volledig te herschrijven. Deskundigen waardeerden dit fantastische niveau van flexibiliteit en gemak, waardoor Unix zich snel over de computerwereld verspreidde.

Stallman besloot het GNU-systeem te creëren vanwege de teloorgang van ITS, het favoriete geesteskind van AI Lab-hackers. De dood van ITS was een klap voor hen, ook voor Richard. Terwijl het verhaal over de Xerox-laserprinter hem de ogen opende voor de onrechtvaardigheid van propriëtaire licenties, dan duwde de dood van ITS hem van afkeer tegen gesloten software naar actieve oppositie ertegen.

De redenen voor de dood van ITS gaan, net als de code, ver terug in het verleden. In 1980 werkten de meeste hackers van het Lab al aan een Lisp-machine en een besturingssysteem daarvoor.

Lisp is een elegante programmeertaal die perfect is voor het werken met gegevens waarvan de structuur vooraf onbekend is. Het werd gecreëerd door de pionier op het gebied van onderzoek naar kunstmatige intelligentie en de bedenker van de term ‘kunstmatige intelligentie’ John McCarthy, die in de tweede helft van de jaren vijftig bij MIT werkte. De naam van de taal is een afkorting voor “LIST Processing” of “list processing”. Nadat McCarthy MIT had verlaten voor Stanford, veranderden de hackers van het Lab Lisp enigszins, waardoor het lokale dialect MACLISP ontstond, waarbij de eerste drie letters stonden voor het MAC-project, waardoor in feite het AI-laboratorium van MIT verscheen. Onder leiding van systeemarchitect Richard Greenblatt ontwikkelden de hackers van het Lab een Lisp-machine - een speciale computer voor het uitvoeren van programma's in Lisp, evenals een besturingssysteem voor deze computer - uiteraard ook geschreven in Lisp.

Begin jaren tachtig hadden concurrerende groepen hackers twee bedrijven opgericht die Lisp-machines produceerden en verkochten. Het bedrijf van Greenblatt heette Lisp Machines Incorporated, of kortweg LMI. Hij hoopte het zonder investeringen van buitenaf te kunnen doen en een puur ‘hackerbedrijf’ te creëren. Maar de meeste hackers sloten zich aan bij Symbolics, een typische commerciële startup. In 80 verlieten ze MIT volledig.

Degenen die overbleven waren op de vingers van één hand te tellen, waardoor het steeds langer duurde om programma's en machines te repareren, of helemaal niet gerepareerd. En het ergste van alles was dat volgens Stallman de ‘demografische veranderingen’ in het laboratorium begonnen. Hackers, die voorheen in de minderheid waren, verdwenen bijna, waardoor het Laboratorium volledig ter beschikking stond van docenten en studenten, wier houding ten opzichte van de PDP-10 openlijk vijandig was.

In 1982 ontving het AI Lab een vervanger voor zijn 12 jaar oude PDP-10: de DECSYSTEM 20. Applicaties geschreven voor de PDP-10 draaiden zonder problemen op de nieuwe computer, omdat de DECSYSTEM 20 in wezen een bijgewerkte PDP was. -10, maar het oude besturingssysteem was helemaal niet geschikt - ITS moest worden geport naar een nieuwe computer, wat betekent dat het bijna volledig herschreven is. En dit is in een tijd waarin bijna alle hackers die dit konden doen het Laboratorium hebben verlaten. Het commerciële Twenex-besturingssysteem nam dus snel de nieuwe computer over. De weinige hackers die bij MIT bleven, konden dit alleen maar accepteren.

“Zonder hackers die het besturingssysteem maken en onderhouden, zijn we gedoemd”, zeggen faculteitsleden en studenten. “We hebben een commercieel systeem nodig dat door een bedrijf wordt ondersteund, zodat het de problemen met dit systeem zelf kan oplossen.” Stallman herinnert zich dat dit argument een wrede vergissing bleek te zijn, maar destijds klonk het overtuigend.

Aanvankelijk zagen hackers Twenex als de zoveelste incarnatie van een autoritaire corporatocratie die ze wilden doorbreken. Zelfs de naam weerspiegelde de vijandigheid van hackers - sterker nog, het systeem heette TOPS-20, wat duidt op continuïteit met TOPS-10, ook een commercieel DEC-systeem voor de PDP-10. Maar architectonisch gezien had TOPS-20 niets gemeen met TOPS-10. Het is gemaakt op basis van het Tenex-systeem, dat Bolt, Beranek en Newman ontwikkelden voor de PDP-10. . Stallman begon het systeem ‘Twenex’ te noemen, alleen maar om het niet TOPS-20 te noemen. “Het systeem was verre van hoogwaardige oplossingen, dus ik durfde het niet bij de officiële naam te noemen,” herinnert Stallman zich, “dus plaatste ik de letter ‘w’ in ‘Tenex’ om er ‘Twenex’ van te maken.” (Deze naam speelt op het woord “twintig”, d.w.z. “twintig”)

De computer waarop de Twenex/TOPS-20 draaide, heette ironisch genoeg "Oz." Feit is dat DECSYSTEM 20 een kleine PDP-11-machine nodig had om de terminal te bedienen. Toen een hacker de PDP-11 voor het eerst op deze computer zag aansluiten, vergeleek hij deze met een pretentieuze uitvoering van de Tovenaar van Oz. 'Ik ben de grote en verschrikkelijke Oz! – reciteerde hij. ‘Kijk maar niet naar de kleine jongen waar ik mee bezig ben.’

Maar er was niets grappigs in het besturingssysteem van de nieuwe computer. Beveiliging en toegangscontrole zijn op een basisniveau in Twenex ingebouwd en ook de applicatiehulpprogramma's zijn ontworpen met het oog op beveiliging. Neerbuigende grappen over de beveiligingssystemen van het Lab zijn uitgegroeid tot een serieuze strijd om computercontrole. Beheerders voerden aan dat Twenex zonder beveiligingssystemen instabiel en foutgevoelig zou zijn. Hackers verzekerden dat stabiliteit en betrouwbaarheid veel sneller konden worden bereikt door de broncode van het systeem te bewerken. Maar er waren er al zo weinig in het Laboratorium dat niemand naar hen luisterde.

De hackers dachten dat ze de beveiligingsbeperkingen konden omzeilen door alle gebruikers ‘stuurrechten’ te geven: verhoogde rechten die hen de mogelijkheid geven om veel dingen te doen die de gemiddelde gebruiker niet mag doen. Maar in dit geval zou elke gebruiker de “stuurrechten” van een andere gebruiker kunnen wegnemen, en hij zou deze niet aan zichzelf kunnen teruggeven vanwege een gebrek aan toegangsrechten. Daarom besloten de hackers controle over het systeem te krijgen door iedereen behalve zichzelf de ‘stuurrechten’ te ontnemen.

Het raden van wachtwoorden en het uitvoeren van de debugger terwijl het systeem opstartte, leverde niets op. Na gefaald te hebben in "staatsgreep", Stallman stuurde een bericht naar alle Laboratoriummedewerkers.

‘Tot nu toe waren de aristocraten verslagen’, schreef hij, ‘maar nu hebben ze de overhand gekregen en is de poging om de macht te grijpen mislukt.’ Richard ondertekende het bericht: “Radio Free OZ” zodat niemand zou raden dat hij het was. Een uitstekende vermomming, aangezien iedereen in het Laboratorium op de hoogte was van Stallmans houding ten opzichte van beveiligingssystemen en zijn bespotting van wachtwoorden. Richards afkeer van wachtwoorden was echter tot ver buiten MIT bekend. Vrijwel het hele ARPAnet, het toenmalige prototype van het internet, had via Stallmans account toegang tot de computers van het Laboratorium. Zo’n ‘toerist’ was bijvoorbeeld Don Hopkins, een programmeur uit Californië, die via mond-tot-mondreclame van hackers vernam dat je het beroemde ITS-systeem van MIT kon betreden door simpelweg 3 letters van Stallmans initialen als login en wachtwoord in te voeren.

“Ik ben eeuwig dankbaar dat MIT mij en zoveel andere mensen de vrijheid heeft gegeven om hun computers te gebruiken”, zegt Hopkins. “Het betekende veel voor ons allemaal.”

Dit "toeristenbeleid" duurde vele jaren terwijl het ITS-systeem leefde, en het management van MIT keek er neerbuigend naar. . Maar toen de machine van Oz de belangrijkste brug werd tussen het laboratorium en het ARPAnet, veranderde alles. Stallman bood nog steeds toegang tot zijn account met een bekende login en wachtwoord, maar beheerders eisten dat hij het wachtwoord zou wijzigen en het aan niemand anders zou geven. Richard weigerde, onder verwijzing naar zijn ethiek, überhaupt aan de machine van Oz te werken.

“Toen wachtwoorden op AI Lab-computers begonnen te verschijnen, besloot ik mijn overtuiging te volgen dat er geen wachtwoorden zouden mogen zijn,” zei Stallman later, “en aangezien ik geloofde dat computers geen beveiligingssystemen nodig hadden, had ik deze maatregelen niet moeten steunen om te implementeren hen."

Stallmans weigering om te knielen voor de grote en verschrikkelijke Oz-machine toonde aan dat de spanningen tussen de hackers en de superieuren van het Lab toenamen. Maar deze spanning was slechts een vage schaduw van het conflict dat woedde binnen de hackergemeenschap zelf, die verdeeld was in twee kampen: LMI (Lisp Machines Incorporated) en Symbolics.

Symbolics ontving veel investeringen van buitenaf, wat veel hackers van het Lab aantrok. Ze werkten aan het Lisp-machinesysteem, zowel bij MIT als daarbuiten. Eind 1980 huurde het bedrijf 14 laboratoriummedewerkers in als adviseurs om een ​​eigen versie van de Lisp-machine te ontwikkelen. De rest van de hackers, Stallman niet meegerekend, werkte voor LMI. Richard besloot geen partij te kiezen en stond er uit gewoonte alleen voor.

Aanvankelijk bleven door Symbolics ingehuurde hackers bij MIT werken om het Lisp-machinesysteem te verbeteren. Zij gebruikten, net als de LMI-hackers, de MIT-licentie voor hun code. Het vereiste dat de wijzigingen moesten worden teruggestuurd naar MIT, maar vereiste niet dat MIT de wijzigingen verspreidde. In 1981 hielden hackers zich echter aan een herenovereenkomst waarin al hun verbeteringen in de Lisp-machine van MIT werden geschreven en onder alle gebruikers van die machines werden gedistribueerd. Deze stand van zaken zorgde nog steeds voor enige stabiliteit van het hackerscollectief.

Maar op 16 maart 1982 – Stallman herinnert zich deze dag nog goed omdat het zijn verjaardag was – kwam er een einde aan het herenakkoord. Dit gebeurde in opdracht van de directie van Symbolics; zij wilden daarmee hun concurrent, het bedrijf LMI, waar veel minder hackers voor werkten, wurgen. De leiders van de Symboliek redeneerden als volgt: als LMI vele malen minder werknemers heeft, dan blijkt dat het totale werk aan de Lisp-machine gunstig voor haar is, en als deze uitwisseling van ontwikkelingen wordt gestopt, zal LMI worden vernietigd. Daartoe besloten ze misbruik te maken van de letter van de licentie. In plaats van wijzigingen aan te brengen in de MIT-versie van het systeem, die LMI kon gebruiken, begonnen ze MIT te voorzien van de Symbolics-versie van het systeem, die ze konden bewerken zoals ze wilden. Het bleek dat het testen en bewerken van de Lisp-machinecode bij MIT alleen in het voordeel van de Symboliek was.

Als man die verantwoordelijk was voor het onderhoud van de Lisp-machine van het laboratorium (met de hulp van Greenblatt gedurende de eerste paar maanden) was Stallman woedend. Symbolische hackers voorzagen code van honderden wijzigingen die fouten veroorzaakten. Omdat dit een ultimatum was, verbrak Stallman de communicatie van het laboratorium met Symbolics, beloofde nooit meer aan de machines van dat bedrijf te werken en kondigde aan dat hij zou meedoen aan de werkzaamheden aan de MIT Lisp-machine om LMI te ondersteunen. “In mijn ogen was het Lab een neutraal land, zoals België in de Tweede Wereldoorlog”, zegt Stallman, “en als Duitsland België binnenviel, verklaarde België de oorlog aan Duitsland en sloot zich aan bij Groot-Brittannië en Frankrijk.”

Toen leidinggevenden van Symbolics merkten dat hun nieuwste innovaties nog steeds op de MIT-versie van de Lisp-machine verschenen, werden ze boos en begonnen de hackers van het Lab te beschuldigen van het stelen van code. Maar Stallman heeft de auteursrechtwetgeving helemaal niet overtreden. Hij bestudeerde de code van Symbolics en deed logische gissingen over toekomstige oplossingen en verbeteringen, die hij helemaal opnieuw begon te implementeren voor de Lisp-machine van MIT. Bestuurders van de symboliek geloofden het niet. Ze installeerden spyware op de terminal van Stallman, die alles registreerde wat Richard deed. Ze hoopten dus bewijsmateriaal van codediefstal te verzamelen en dit aan de MIT-administratie te laten zien, maar zelfs begin 1983 was er bijna niets te zien. Het enige wat ze hadden waren een tiental plaatsen waar de code van de twee systemen een beetje op elkaar leek.

Toen Lab-beheerders het bewijsmateriaal van Symbolics aan Stallman lieten zien, weerlegde hij het en zei dat de code vergelijkbaar was, maar niet hetzelfde. En hij keerde de logica van het Symbolics-management tegen hem: als deze korrels van soortgelijke code het enige zijn wat ze over hem konden opgraven, dan bewijst dit alleen maar dat Stallman de code niet daadwerkelijk heeft gestolen. Dit was genoeg voor de managers van het laboratorium om het werk van Stallman goed te keuren, en hij zette het voort tot eind 1983. .

Maar Stallman veranderde zijn aanpak. Om zichzelf en het project zoveel mogelijk te beschermen tegen de claims van Symbolics, stopte hij volledig met het kijken naar hun broncodes. Hij begon code te schrijven die uitsluitend op documentatie was gebaseerd. Richard verwachtte niet de grootste innovaties van Symbolics, maar implementeerde ze zelf en voegde vervolgens alleen interfaces toe voor compatibiliteit met de Symbolics-implementatie, vertrouwend op hun documentatie. Hij las ook de Symbolics code changelog om te zien welke bugs ze repareerden, en hij repareerde die bugs zelf op andere manieren.

Wat er gebeurde versterkte Stallmans vastberadenheid. Nadat hij analogen van de nieuwe Symbolics-functies had gemaakt, overtuigde hij het laboratoriumpersoneel om de MIT-versie van de Lisp-machine te gebruiken, die een goed testniveau en foutdetectie garandeerde. En de MIT-versie stond volledig open voor LMI. “Ik wilde de Symboliek koste wat het kost straffen”, zegt Stallman. Uit deze uitspraak blijkt niet alleen dat Richards karakter verre van pacifistisch is, maar ook dat het conflict over de Lisp-machine hem diep raakte.

De wanhopige vastberadenheid van Stallman kan worden begrepen als je bedenkt hoe het er voor hem uitzag: de "vernietiging" van zijn "thuis", dat wil zeggen de hackergemeenschap en de cultuur van het AI Lab. Levy interviewde Stallman later via e-mail, en Richard vergeleek zichzelf met Ishi, het laatst bekende lid van het Yahi-indianenvolk, dat werd uitgeroeid in de Indiase oorlogen van de jaren 1860 en 1870. Deze analogie geeft de beschreven gebeurtenissen een epische, bijna mythologische reikwijdte. De hackers die voor Symbolics werkten zagen dit in een iets ander licht: hun bedrijf vernietigde of roeide niet uit, maar deed alleen wat al lang geleden had moeten gebeuren. Nadat ze de Lisp-machine naar het commerciële veld hadden verplaatst, veranderde Symbolics haar benadering van programmaontwerp - in plaats van ze te knippen volgens de hardnekkige patronen van hackers, begonnen ze zachtere en meer humane normen van managers te gebruiken. En ze beschouwden Stallman niet als een tegenstander die een rechtvaardige zaak verdedigde, maar als drager van achterhaald denken.

Ook persoonlijke conflicten gooiden olie op het vuur. Zelfs vóór de komst van de Symboliek vermeden veel hackers Stallman, en nu is de situatie vele malen verslechterd. “Ik werd niet langer uitgenodigd voor uitstapjes naar Chinatown”, herinnert Richard zich. “Greenblatt begon met de gewoonte: als je wilt lunchen, ga je langs je collega's en nodig je ze uit, of stuur je ze een bericht. Ergens in 1980-1981 belden ze mij niet meer. Niet alleen nodigden ze mij niet uit, maar, zoals één persoon later toegaf, oefenden ze druk uit op de anderen, zodat niemand mij zou vertellen over de geplande treinen voor de lunch.”

Bron: linux.org.ru

Voeg een reactie