For want of a printer

What is the main driver for Richard Stallman

When Stallman noticed the jamming tendency in the Xerox laser
printer, he thought of applying the old fix or "hack" to this printer.


In the course of looking up the Xerox laser-printer software, however,
Stallman  made  a  troubling  discovery.   The  printer  didn't  have  any
software, at least nothing Stallman or a fellow programmer could read.


Until then, most companies had made it a form of courtesy to publish
source-code  files--readable  text  files  that  documented  the  individual
software commands that told a machine what to do.  Xerox,  in this
instance, had provided software files only in compiled, or binary, form.

From the "For want of a printer" chapter in Free as in Freedom

 






Free as in Freedom (2002)/Chapter 1

De nieuwe printer was opnieuw vastgelopen.

Richard M. Stallman, programmeur van stafsoftware bij het kunstmatige laboratorium van de Massachusetts Institute of Technology (AI Lab), ontdekte de storing op de harde manier. Een uur na het verzenden van een bestand van 50 pagina's naar de laserprinter op kantoor, stopte Stallman, 27, een productieve werksessie om zijn documenten op te halen. Bij aankomst vond hij slechts vier pagina's in de lade van de printer. Om de zaken nog frustrerender te maken, waren de vier pagina's van een andere gebruiker, wat betekent dat de afdruktaak van Stallman en het onafgemaakte deel van de afdruktaak van iemand anders nog steeds gevangen zaten binnen het elektrische leidingwerk van het computernetwerk van het laboratorium.

Wachten op machines is een beroepsrisico als je een softwareprogrammeur bent, dus Stallman nam zijn frustratie met een korreltje zout. Toch is het verschil tussen wachten op een machine en wachten op een machine aanzienlijk. Het was niet de eerste keer dat hij gedwongen was over de printer te gaan staan en pagina's één voor één te zien afdrukken. Als een persoon die het grootste deel van zijn dagen en nachten besteedde aan het verbeteren van de efficiëntie van machines en de softwareprogramma's die ze bestuurden, voelde Stallman een natuurlijke drang om de machine open te stellen, naar het lef te kijken en de oorzaak van het probleem te achterhalen.

Helaas strekte Stallman's vaardigheden als computerprogrammeur zich niet uit tot het domein van de machinebouw. Terwijl nieuw geprinte documenten uit de machine werden gegoten, kreeg Stallman de kans om na te denken over andere manieren om het probleem met de vastgelopen afdruk te omzeilen.

Hoe lang geleden was het al dat de medewerkers van het AI Lab de nieuwe printer met open armen hadden verwelkomd? Vroeg Stallman zich af. Het apparaat was een gift van de Xerox Corporation geweest. Een hypermodern prototype, het was een aangepaste versie van het populaire Xerox-kopieerapparaat. Alleen in plaats van kopieën te maken, vertrouwde het op softwaregegevens die werden ingevoerd via een computernetwerk om die gegevens om te zetten in professioneel ogende documenten. Gemaakt door ingenieurs van de wereldberoemde Xerox Palo Alto onderzoeksfaciliteit, was het eenvoudig een voorproefje van de revolutie op het gebied van desktop printing die de rest van de computerindustrie tegen het einde van het decennium zou grijpen.

Gedreven door een instinctieve drang om met de beste nieuwe apparatuur te spelen, integreerden programmeurs van het AI Lab de nieuwe machine onmiddellijk in de geavanceerde computerinfrastructuur van het lab. De resultaten waren meteen aangenaam. In tegenstelling tot de oude laserprinter van het laboratorium was het nieuwe Xerox-apparaat snel. Pagina's vlogen weg met een snelheid van één per seconde, waardoor een afdruktaak van 20 minuten een afdruktaak van 2 minuten werd. De nieuwe machine was ook preciezer. Cirkels kwamen eruit als cirkels, niet als ovalen. Rechte lijnen kwamen eruit als rechte lijnen, niet als sinusgolven met lage amplitude.

Het was voor alle doeleinden een geschenk dat te mooi was om te weigeren.

Het was pas een paar weken na zijn aankomst dat de gebreken van de machine naar boven kwamen. Belangrijkste nadeel was de inherente gevoeligheid van de machine voor papierstoringen. Engineering-minded programmeurs begrepen snel de reden achter de fout. Als fotokopieerapparaat vereiste de machine in het algemeen direct toezicht van een menselijke operator. In de veronderstelling dat deze menselijke operators altijd bij de hand zouden zijn om een ​​papierstoring te verhelpen, hadden de ingenieurs van Xerox hun tijd en energie gestoken in het oplossen van andere vervelende problemen. In engineeringtermen was gebruikersinspanning in het systeem ingebouwd.

Bij het aanpassen van het apparaat voor printergebruik hadden de technici van Xerox de relatie tussen gebruiker en apparaat op een subtiele maar diepgaande manier veranderd. In plaats van de machine ondergeschikt te maken aan een individuele menselijke operator, maakten ze hem ondergeschikt aan een hele netwerkpopulatie van menselijke operators. In plaats van direct boven de machine te staan, stuurde een menselijke gebruiker aan het ene uiteinde van het netwerk zijn printopdracht door een uitgebreide bucket-brigade van machines, in de verwachting dat de gewenste inhoud de juiste bestemming en in de juiste vorm zou bereiken. Pas toen hij eindelijk ging kijken naar de uiteindelijke output, realiseerde hij zich hoe weinig van de gewenste inhoud het had gehaald.

Stallman was een van de eersten om het probleem te identificeren en een oplossing voor te stellen. Jaren eerder, toen het lab nog steeds zijn oude printer gebruikte, had Stallman een soortgelijk probleem opgelost door het softwareprogramma te openen dat de printer regelde op de PDP-11-machine van het lab. Stallman kon geen papierstoringen verhelpen, maar hij kon wel een softwareopdracht invoeren die de PDP-11 opdracht gaf om de printer periodiek te controleren en terug te rapporteren aan de PDP-10, de centrale computer van het laboratorium. Om ervoor te zorgen dat de nalatigheid van een gebruiker geen hele reeks afdruktaken vastliep, heeft Stallman ook een softwareopdracht ingevoerd die de PDP-10 opdracht gaf om elke gebruiker met een wachtende afdruktaak te informeren dat de printer was vastgelopen. Het bericht was eenvoudig, zoiets als "De printer is vastgelopen, repareer het alstublieft", en omdat het naar de mensen ging met de meest dringende behoefte om het probleem op te lossen, was de kans groter dat het probleem op tijd werd opgelost .

Zoals opgelost, Stallman's was schuin maar elegant. Het loste de mechanische kant van het probleem niet op, maar deed het een na beste ding door de informatielus tussen gebruiker en machine te sluiten. Dankzij een paar extra regels softwarecode konden AI Lab-medewerkers de verspilde 10 of 15 minuten van het heen en weer rennen om de printer te controleren, elimineren. Qua programmering profiteerde Stallman's oplossing van de versterkte intelligentie van het totale netwerk.

"Als je dat bericht zou krijgen, zou je er niet van kunnen uitgaan dat iemand het zou herstellen", zegt Stallman, terwijl hij de logica in herinnering brengt. "Je moest naar de printer. Een minuut of twee nadat de printer in de problemen kwam, komen de twee of drie mensen die berichten hebben gekregen om de machine te repareren. Van die twee of drie mensen, een van hen, tenminste, meestal weet hoe je het probleem kunt oplossen. " Dergelijke slimme oplossingen waren een handelsmerk van het AI Lab en de inheemse populatie van programmeurs. Inderdaad, de beste programmeurs van het AI Lab minachtten de term programmeur en verkozen in plaats daarvan de meer slangige beroepstitel van hacker. De functietitel omvatte een groot aantal activiteiten - alles van het maken van creatieve dingen tot het verbeteren van bestaande software en computersystemen. Impliciet in de titel was echter het ouderwetse idee van Yankee-vindingrijkheid. Om een ​​hacker te zijn, moest men de filosofie accepteren dat het schrijven van een softwareprogramma slechts het begin was. Het verbeteren van een programma was de ware test voor de vaardigheden van een hacker.

Een dergelijke filosofie was een belangrijke reden waarom bedrijven als Xerox een beleid maakten om hun machines en softwareprogramma's te doneren aan plaatsen waar hackers doorgaans samenkwamen. Als hackers de software zouden verbeteren, zouden bedrijven de verbeteringen kunnen teruglenen en deze in updateversies voor de commerciële markt opnemen. Op bedrijfsniveau waren hackers een hefboomeffect voor de gemeenschap, een ondersteunende afdeling voor onderzoek en ontwikkeling die tegen minimale kosten beschikbaar was.

Het was vanwege deze geven-en-nemen-filosofie dat toen Stallman het print-jam-defect in de Xerox-laserprinter zag, hij niet in paniek raakte. Hij zocht eenvoudigweg een manier om de oude fix of "hack" voor het nieuwe systeem bij te werken. Tijdens het opzoeken van de Xerox-laserprintersoftware deed Stallman echter een verontrustende ontdekking. De printer had geen software, althans niets wat Stallman of een collega-programmeur kon lezen. Tot die tijd hadden de meeste bedrijven er een vorm van hoffelijkheid van gemaakt om broncode-bestanden te publiceren - leesbare tekstbestanden die de individuele softwareopdrachten documenteerden die een machine vertelden wat te doen. Xerox had in dit geval softwarebestanden in voorgecompileerde of binaire vorm verstrekt. Programmeurs mochten de bestanden openen als ze dat wilden, maar tenzij ze een expert waren in het ontcijferen van een eindeloze stroom van enen en nullen, was de resulterende tekst puur gebrabbel.

Hoewel Stallman veel van computers wist, was hij geen expert in het vertalen van binaire bestanden. Als hacker had hij echter andere middelen tot zijn beschikking. Het idee van informatie-uitwisseling was zo centraal in de hackercultuur dat Stallman wist dat het slechts een kwestie van tijd was voordat een hacker in een universitair laboratorium of computerlokaal van de onderneming een versie van de broncode van de laserprinter aanbood met de gewenste broncodebestanden .

Na de eerste paar printerstoringen troostte Stallman zichzelf met de herinnering aan een soortgelijke situatie jaren eerder. Het laboratorium had een netwerkoverschrijdend programma nodig om de PDP-11 te helpen efficiënter te werken met de PDP-10. De hackers van het lab waren meer dan voldoende, maar Stallman, een Harvard-alumnus, herinnerde zich een soortgelijk programma dat door programmeurs van de computerwetenschap van Harvard was geschreven. Het computerlab van Harvard gebruikte dezelfde modelcomputer, de PDP-10, zij het met een ander besturingssysteem. Het computerlab van Harvard had ook een beleid dat vereiste dat alle programma's die op de PDP-10 waren geïnstalleerd, met gepubliceerde broncodebestanden moesten komen.

Profiterend van zijn toegang tot het computerlab van Harvard, kwam Stallman langs, maakte een kopie van de netwerkoverschrijdende broncode en bracht deze terug naar het AI Lab. Vervolgens herschreef hij de broncode om deze meer geschikt te maken voor het besturingssysteem van het AI Lab. Zonder gedoe en weinig gedoe, heeft het AI Lab een groot gat in zijn software-infrastructuur opgevuld. Stallman heeft zelfs een paar functies toegevoegd die niet in het originele Harvard-programma te vinden waren, waardoor het programma nog nuttiger werd. "We gebruikten het jarenlang", zegt Stallman.

Vanuit het perspectief van een programmeur uit de jaren zeventig was de transactie het software-equivalent van een buurman die langs kwam om een ​​elektrisch gereedschap of een kopje suiker van een buurman te lenen. Het enige verschil was dat Stallman bij het lenen van een kopie van de software voor het AI Lab niets had gedaan om Harvard-hackers het gebruik van hun oorspronkelijke programma te ontzeggen. Harvard-hackers wonnen in het proces, omdat Stallman zijn eigen extra functies aan het programma had geïntroduceerd, functies die hackers bij Harvard perfect leenden in ruil daarvoor. Hoewel niemand bij Harvard ooit is gekomen om het programma terug te lenen, herinnert Stallman zich een programmeur bij het particuliere ingenieursbureau Bolt, Beranek & Newman, die het programma leende en een paar extra functies toevoegt, die Stallman uiteindelijk opnieuw in de eigen bron van het AI Lab heeft geïntegreerd -code archief.

"Een programma zou de ontwikkeling van een stad ontwikkelen", zegt Stallman, herinnerend aan de software-infrastructuur van het AI Lab. "Onderdelen zouden worden vervangen en opnieuw worden opgebouwd. Nieuwe dingen zouden worden toegevoegd. Maar je kon altijd naar een bepaald deel kijken en zeggen:" Hmm, door de stijl, ik zie dat dit deel in de vroege jaren 60 werd geschreven en dit deel werd geschreven in het midden van de jaren zeventig. ''

Door dit eenvoudige systeem van intellectuele groei hebben hackers van het AI Lab en andere plaatsen robuuste creaties opgebouwd. Aan de westkust hadden computerwetenschappers van UC Berkeley, in samenwerking met een paar low-level engineers van AT&T, een volledig besturingssysteem met dit systeem opgebouwd. Met de naam Unix, een spel op een ouder, meer academisch respectabel besturingssysteem genaamd Multics, was het softwaresysteem beschikbaar voor elke programmeur die bereid was de kosten te betalen voor het kopiëren van het programma naar een nieuwe magneetband en het verzenden ervan. Niet elke programmeur die aan deze cultuur deelnam, beschreef zichzelf als een hacker, maar de meeste deelden de gevoelens van Richard M. Stallman. Als een programma- of softwarefix goed genoeg was om uw problemen op te lossen, was het goed genoeg om de problemen van iemand anders op te lossen. Waarom deel je het niet vanuit een eenvoudig verlangen naar goed karma?

Het feit dat Xerox zijn broncodebestanden niet wilde delen leek in eerste instantie een kleine ergernis. Bij het opsporen van een kopie van de broncodebestanden zei Stallman dat hij niet eens de moeite nam om contact op te nemen met Xerox. "Ze hadden ons de laserprinter al gegeven", zegt Stallman. "Waarom zou ik ze voor meer lastigvallen?"

Toen de gewenste bestanden echter niet aan de oppervlakte kwamen, begon Stallman verdacht te worden. Het jaar daarvoor had Stallman een ontploffing gehad met een promovendus aan de Carnegie Mellon University. De student, Brian Reid, was de auteur van een nuttig tekstopmaakprogramma genaamd Scribe. Een van de eerste programma's die een gebruiker de mogelijkheid gaf om lettertypen en letterstijlen te definiëren bij het verzenden van een document via een computernetwerk, het programma was een vroege voorbode van HTML, de lingua franca van het World Wide Web. In 1979 nam Reid de beslissing om Scribe te verkopen aan een softwarebedrijf in Pittsburgh, genaamd Unilogic. Zijn carrière als afgestudeerde student eindigt, zegt Reid, hij was gewoon op zoek naar een manier om het programma te ontladen bij een aantal ontwikkelaars die moeite zouden doen om ervoor te zorgen dat het niet in het publieke domein terechtkwam. Om de deal te verfraaien, stemde Reid er ook mee in om een ​​set van tijdafhankelijke functies - "tijdbommen" in het softwareprogramma-programma in te voegen - waarmee vrij gekopieerde versies van het programma na een vervaldatum van 90 dagen werden gedeactiveerd. Om deactivering te voorkomen, betaalden gebruikers het softwarebedrijf, dat vervolgens een code uitvaardigde die de interne tijdbomfunctie onschadelijk maakte.

Voor Reid was de deal een win-win. Scribe viel niet in het publieke domein en Unilogic verdiende zijn investering terug. Voor Stallman was het een verraad aan het ethos van de programmeur, puur en simpel. In plaats van het idee van share-and-share te respecteren, had Reid een manier toegevoegd voor bedrijven om programmeurs te dwingen te betalen voor toegang tot informatie.

Toen de weken verstreken en zijn pogingen om de broncode van de Xerox-laserprinter op te sporen, tegen een bakstenen muur troffen, begon Stallman een soortgelijk geld-voor-code-scenario op het werk te voelen. Voordat Stallman er iets aan kon doen of zeggen, kwam er echter goed nieuws binnen via de programmeur grapevine. Het verhaal ging dat een wetenschapper op de computerwetenschappelijke afdeling van de Carnegie Mellon University net een baan bij het Xerox Palo Alto Research Center had verlaten. Niet alleen had de wetenschapper aan de laserprinter in kwestie gewerkt, maar volgens geruchten werkte hij er nog steeds aan als onderdeel van zijn onderzoekstaken bij Carnegie Mellon.

Terwijl hij zijn aanvankelijke vermoeden opzij zette, besloot Stallman de persoon in kwestie bij zijn volgende bezoek aan de Carnegie Mellon-campus op te zoeken.

Hij hoefde niet lang te wachten. Carnegie Mellon had ook een laboratorium dat gespecialiseerd was in onderzoek naar kunstmatige intelligentie, en binnen een paar maanden had Stallman een zakelijke reden om de Carnegie Mellon-campus te bezoeken. Tijdens dat bezoek zorgde hij ervoor dat hij langsliep bij de afdeling informatica. Afdelingmedewerkers stuurden hem naar het kantoor van het faculteitslid dat het Xerox-project leidde. Toen Stallman het kantoor bereikte, vond hij de professor die daar werkte.

Op ware ingenieur-tot-ingenieur-manier was het gesprek hartelijk maar bot. Nadat hij zichzelf kort als bezoeker van MIT had voorgesteld, vroeg Stallman om een ​​kopie van de broncode van de laserprinter, zodat hij deze kon overdragen naar de PDP-11. Tot zijn verbazing weigerde de professor zijn verzoek in te willigen.

"Hij vertelde me dat hij had beloofd me geen kopie te geven", zegt Stallman.

Geheugen is een grappig ding. Twintig jaar na dato is Stallmans mentale geschiedenisband notoir leeg op sommige plaatsen. Hij herinnert zich niet alleen de motiverende reden voor de reis of zelfs de tijd van het jaar waarin hij de reis maakte, hij heeft ook geen herinnering aan de professor of promovendus aan de andere kant van het gesprek. Volgens Reid is Robert Sproull, een voormalig onderzoeker van Xerox PARC en huidig ​​directeur van Sun Laboratories, een onderzoeksafdeling van het computertechnologiegroep Sun Microsystems, het meest waarschijnlijke verzoek van Stallman. In de jaren zeventig was Sproull de primaire ontwikkelaar van de laserprintersoftware in kwestie bij Xerox PARC. Rond 1980 nam Sproull een facultaire onderzoeksfunctie in Carnegie Mellon waar hij zijn laserprinterswerk voortzette te midden van andere projecten.

"De code waar Stallman om vroeg was de meest geavanceerde, ultramoderne code die Sproull in het jaar of zo had geschreven voordat hij naar Carnegie Mellon ging", herinnert Reid zich. "Ik vermoed dat Sproull minder dan een maand voordat dit verzoek binnenkwam bij Carnegie Mellon was geweest."

Wanneer er echter rechtstreeks naar het verzoek wordt gevraagd, tekent Sproull een spatie. "Ik kan geen feitelijke opmerking maken", schrijft Sproull via e-mail. "Ik heb absoluut geen herinnering aan het incident."

Met beide deelnemers aan het korte gesprek die worstelen om belangrijke details terug te halen - inclusief of het gesprek zelfs plaatsvond - is het moeilijk om de botheid van Sproull's weigering in te schatten, tenminste zoals herinnerd door Stallman. In een gesprek met het publiek heeft Stallman herhaaldelijk naar het incident verwezen en opgemerkt dat Sproull's onwil om de broncode te overhandigen voortkwam uit een geheimhoudingsovereenkomst, een contractuele overeenkomst tussen Sproull en de Xerox Corporation die Sproull of andere ondertekenaars toegang tot software broncode in ruil voor een belofte van geheimhouding. Nu was een standaardonderdeel in de software-industrie, de geheimhoudingsovereenkomst of NDA destijds een nieuwe ontwikkeling, een weerspiegeling van zowel de commerciële waarde van de laserprinter voor Xerox als de informatie die nodig was om deze te gebruiken. "Xerox probeerde destijds een commercieel product van de laserprinter te maken", herinnert Reid zich. "Ze zouden krankzinnig zijn geweest om de broncode weg te geven."

Voor Stallman was de NDA echter iets heel anders. Het was een weigering van de kant van Xerox en Sproull, of degene die die dag zijn broncodeverzoek had afgewezen, om deel te nemen aan een systeem dat tot dan toe softwareprogrammeurs had aangemoedigd om programma's als gemeenschappelijke middelen te beschouwen. Als een boer wiens eeuwenoude irrigatiesloot plotseling droog was geworden, had Stallman de sloot naar zijn bron gevolgd om alleen een gloednieuwe hydro-elektrische dam met het Xerox-logo te vinden.

Voor Stallman duurde het besef dat Xerox een collega-programmeur had gedwongen om deel te nemen aan dit nieuwe systeem van gedwongen geheimhouding. In het begin kon hij zich alleen concentreren op de persoonlijke aard van de weigering. Als een persoon die zich ongemakkelijk en niet synchroon voelde in de meeste face-to-face ontmoetingen, was de poging van Stallman om onaangekondigd bij een collega-programmeur langs te komen bedoeld als een demonstratie van buren. Nu het verzoek was afgewezen, voelde het als een grote blunder. "Ik was zo boos dat ik geen manier kon bedenken om het uit te drukken. Dus ik draaide me gewoon om en liep weg zonder nog een woord," herinnert Stallman zich. 'Ik heb misschien de deur dichtgeslagen. Wie weet? Ik herinner me alleen maar dat ik daar weg wilde.'

Twintig jaar na het feit blijft de woede nog steeds hangen, zozeer zelfs dat Stallman het evenement tot een belangrijk keerpunt heeft verheven. Binnen een paar maanden zou Stallman en de hackersgemeenschap van AI Lab een aantal gebeurtenissen overkomen, waardoor 30 seconden spanning in een afgelegen Carnegie Mellon-kantoor ter vergelijking onbeduidend lijkt. Niettemin, wanneer het tijd is om de gebeurtenissen te regelen die Stallman zouden transformeren van een eenzame hacker, instinctief achterdochtig van gecentraliseerde autoriteit, naar een kruistochtende activist die traditionele noties van vrijheid, gelijkheid en broederschap toepast in de wereld van softwareontwikkeling, kiest Stallman de ontmoeting met Carnegie Mellon voor speciale aandacht.

"Het moedigde me aan om aan iets te denken waar ik al aan heb gedacht", zegt Stallman. "Ik had al een idee dat software moest worden gedeeld, maar ik wist niet goed hoe ik daarover moest nadenken. Mijn gedachten waren niet duidelijk en georganiseerd tot op het punt dat ik ze beknopt kon uitdrukken naar de rest van de wereld." ."

Hoewel eerdere gebeurtenissen Stallman's woede hadden opgewekt, zegt hij dat het pas bij zijn ontmoeting met Carnegie Mellon was dat hij zich realiseerde dat de gebeurtenissen begonnen in te dringen in een cultuur die hij lang als heilig had beschouwd. Als elite-programmeur bij een van 's werelds elite-instellingen was Stallman perfect bereid om de compromissen en koopjes van zijn collega-programmeurs te negeren, zolang ze zich maar niet met zijn eigen werk bemoeiden. Tot de komst van de Xerox-laserprinter was Stallman tevreden met het kijken naar de machines en programma's die andere computergebruikers grimmig verdragen. Bij de zeldzame gelegenheid dat een dergelijk programma de muren van het AI Lab doorbrak - toen het lab zijn eerbiedwaardige Incompatibele Time Sharing besturingssysteem verving door een commerciële variant, bijvoorbeeld, was de TOPS 20 - Stallman en zijn hackercollega's vrij geweest om te herschrijven, hervormen, en hernoem de software volgens persoonlijke smaak.

Nu de laserprinter zich had ingebed in het netwerk van het AI Lab, was er echter iets veranderd. De machine werkte prima, afgezien van incidentele papierstoringen, maar het vermogen om te wijzigen volgens persoonlijke smaak was verdwenen. Vanuit het oogpunt van de gehele software-industrie was de printer een wake-up call. Software was zo'n waardevol bezit geworden dat bedrijven niet langer de behoefte voelden om broncode te publiceren, vooral wanneer publicatie betekende dat potentiële concurrenten de kans kregen om goedkoop iets te dupliceren. Vanuit het oogpunt van Stallman was de printer een Trojaans paard. Na een decennium van mislukking had software in particulier bezit - toekomstige hackers zouden de term "proprietary" software gebruiken - via de meest geavanceerde methoden voet aan de grond gekregen in het AI Lab. Het was vermomd als een geschenk.

Dat Xerox sommige programmeurs toegang bood tot extra geschenken in ruil voor geheimhouding, was ook vervelend, maar Stallman doet er alles aan om op te merken dat hij, als hij op jonge leeftijd zo'n quid pro quo-koopje krijgt aangeboden, misschien gewoon de Xerox Corporation heeft overgenomen zijn aanbod. De onhandigheid van de ontmoeting met Carnegie Mellon had echter een verstevigend effect op Stallmans eigen morele moeheid. Het gaf hem niet alleen de nodige woede om alle toekomstige smeekbeden met argwaan te bekijken, het dwong hem ook om de ongemakkelijke vraag te stellen: wat als een collega-hacker op een dag het kantoor van Stallman zou binnenvallen en het plotseling de taak van Stallman werd om het verzoek van de hacker om bron te weigeren code?

"Het was mijn eerste kennismaking met een geheimhoudingsovereenkomst en het leerde me onmiddellijk dat geheimhoudingsovereenkomsten slachtoffers hebben", zegt Stallman resoluut. "In dit geval was ik het slachtoffer. [Mijn lab en ik] waren slachtoffers."

Het was een les die Stallman met zich mee zou brengen in de tumultueuze jaren van de jaren tachtig, een decennium waarin veel van zijn MIT-collega's het AI Lab zouden verlaten en zelf geheimhoudingsovereenkomsten zouden ondertekenen. Omdat de meeste geheimhoudingsovereenkomsten (NDA's) vervaldata hadden, zagen weinig hackers die ze wel ondertekenen behoefte aan persoonlijke introspectie. Vroeg of laat, redeneerden ze, zou de software publieke kennis worden. In de tussentijd maakte de belofte om de software geheim te houden tijdens de vroegste ontwikkelingsfasen deel uit van de compromisdeal waardoor hackers aan de beste projecten konden werken. Voor Stallman was dit echter de eerste stap een glibberige helling af.

"Toen iemand me uitnodigde om al mijn collega's op die manier te verraden, herinnerde ik me hoe boos ik was toen iemand anders mij en mijn hele laboratorium dat had aangedaan," zegt Stallman. "Dus ik zei:" Heel erg bedankt voor het aanbieden van dit leuke softwarepakket, maar ik kan het niet accepteren onder de voorwaarden waar je om vraagt, dus ik ga het zonder doen. "

Zoals Stallman snel zou leren, betekende het weigeren van dergelijke verzoeken meer dan een persoonlijke opoffering. Het betrof het scheiden van zichzelf van collega-hackers die, hoewel ze een vergelijkbare afkeer van geheimhouding deelden, de neiging hadden die afkeer op een meer moreel flexibele manier te uiten. Het duurde niet lang voordat Stallman, in toenemende mate een outcast zelfs binnen het AI Lab, zichzelf begon te factureren als "de laatste echte hacker", zich steeds verder isolerend van een markt gedomineerd door propriëtaire software. Stallman weigerde het verzoek van een ander om broncode, was niet alleen een verraad aan de wetenschappelijke missie die sinds het einde van de Tweede Wereldoorlog de ontwikkeling van software had gestimuleerd, het was een schending van de Gouden Regel, de morele norm die anderen moet aandoen als je zou willen dat ze je aandoen.

Vandaar het belang van de laserprinter en de daaruit voortvloeiende ontmoeting. Zonder dat, zegt Stallman, zou zijn leven misschien een meer gewoon pad hebben gevolgd, waarbij de rijkdom van een commerciële programmeur in evenwicht is gebracht met de ultieme frustratie van een leven dat is besteed aan het schrijven van onzichtbare softwarecode. Er zou geen duidelijkheid zijn geweest, geen urgentie om een ​​probleem aan te pakken dat anderen niet aan de orde hadden gesteld. Het belangrijkste is dat er geen rechtvaardige woede zou zijn geweest, een emotie die, zoals we snel zullen zien, de carrière van Stallman net zo zeker heeft voortgestuwd als een politieke ideologie of ethisch geloof.

"Vanaf die dag besloot ik dat dit iets was waaraan ik nooit kon deelnemen", zegt Stallman, verwijzend naar de praktijk van het verhandelen van persoonlijke vrijheid voor het gemak - Stallman's beschrijving van het NDA-koopje - evenals de algehele cultuur die aanmoedigde dergelijke ethisch verdachte transacties maken in de eerste plaats. "Ik besloot nooit andere slachtoffers te maken, net zoals ik slachtoffer was geweest."

  1. For more on the term "hacker," see Appendix B.



Free as in Freedom (2002)/Chapter 1

https://www.gnu.org/philosophy/rms-nyu-2001-summary.txt

https://static.fsf.org/nosvn/faif-2.0.pdf

https://www.gnu.org/philosophy/stallman-mec-india.html

You are designing circuits or cars or chemicals, you have to face the fact that these physical substances will do what they do, not what they are supposed to do. We in software don't have that problem, and that makes it tremendously easier. We are designing a collection of idealized mathematical parts which have definitions. They do exactly what they are defined to do.

And so there are many problems we don't have. For instance, if we put an if statement inside of a while statement, we don't have to worry about whether the if statement can get enough power to run at the speed it's going to run. We don't have to worry about whether it will run at a speed that generates radio frequency interference and induces wrong values in some other parts of the data. We don't have to worry about whether it will loop at a speed that causes a resonance and eventually the if statement will vibrate against the while statement and one of them will crack.  We don't have to worry that chemicals in the environment will get into the boundary between the if statement and the while statement and corrode them, and cause a bad connection. We don't have to worry that other chemicals will get on them and cause a short-circuit. We don't have to worry about whether the heat can be dissipated from this if statement through the surrounding while statement. We don't have to worry about whether the while statement would cause so much voltage drop that the if statement won't function correctly. When you look at the value of a variable you don't have to worry about whether you've referenced that variable so many times that you exceed the fan-out limit. You don't have to worry about how much capacitance there is in a certain variable and how much time it will take to store the value in it.

All these things are defined a way, the system is defined to function in a certain way, and it always does. The physical computer might malfunction, but that's not the program's fault. So, because of all these problems we don't have to deal with, our field is tremendously easier.

If we assume that the intelligence of programmers is the same as the intelligence of mechanical engineers, and electrical engineers and chemical engineers and so on, what's going to happen? Those of us with the easiest field, fundamentally, are going to push it further. We make bigger and bigger things and eventually it becomes hard again. That's why we can develop much bigger systems than the people in the other fields. They just have these hard problems to deal with all the time. In the other fields, it may be necessary to develop an idea. You may have the idea, but then you may have to try out lots of different ways to get it to work at all. In software it's not like that, you have the idea and what you go and do is you write a program which uses this idea, and then the users may like it or not. And if they don't like it, probably you can just fix some details and get it to work.

There is another problem that we don't have to worry about: manufacturing of copies. When we put this if statement inside the while statement, we don't have to worry about how the if statement is going to be inserted into the while statement as a copy is being built. We don't have to worry either about making sure we have access to remove and replace this if statement if it should burn out. So all we have to do is type “copy” and it's an all-purpose copy-anything facility. People making physical equipment and physical products, they can't do that, these things have to be built piece by piece each time.

Al deze dingen zijn gedefinieerd als een manier, het systeem is gedefinieerd om op een bepaalde manier te functioneren, en dat doet het altijd. De fysieke computer kan defect raken, maar dat is niet de fout van het programma. Dus vanwege al deze problemen waar we niet mee te maken hebben, is ons vakgebied veel eenvoudiger.

Als we aannemen dat de intelligentie van programmeurs dezelfde is als de intelligentie van werktuigbouwkundigen en elektrotechnici en chemische ingenieurs enzovoort, wat gebeurt er dan? Degenen onder ons met het gemakkelijkste veld gaan dit in wezen verder pushen. We maken steeds grotere dingen en uiteindelijk wordt het weer moeilijk. Daarom kunnen we veel grotere systemen ontwikkelen dan de mensen op de andere gebieden. Ze hebben gewoon deze moeilijke problemen om altijd mee om te gaan. Op de andere gebieden kan het nodig zijn om een ​​idee te ontwikkelen. Misschien heb je het idee, maar dan moet je misschien veel verschillende manieren uitproberen om het überhaupt te laten werken. In software is het niet zo, je hebt het idee en wat je gaat doen is een programma schrijven dat dit idee gebruikt, en dan kunnen de gebruikers het leuk vinden of niet. En als ze het niet leuk vinden, kun je waarschijnlijk gewoon een paar details repareren en aan de praat krijgen.


"It encouraged me to think about something that I'd already been thinking about," says Stallman. "I already had an idea that software should be shared, but I wasn't sure how to think about that. My thoughts weren't clear and organized to the point where I could express them in a concise fashion to the rest of the world."

"Het moedigde me aan om aan iets te denken waar ik al aan heb gedacht", zegt Stallman. "Ik had al een idee dat software moest worden gedeeld, maar ik wist niet goed hoe ik daarover moest nadenken. Mijn gedachten waren niet duidelijk en georganiseerd tot op het punt dat ik ze beknopt kon uitdrukken naar de rest van de wereld." ."


 
trace my internet presence