Codice Libero/Una difficile scelta morale
Questo testo è completo. |
Richard Stallman e la crociata per il software libero (2002)
Traduzione dall'inglese di Bernardo Parrella (2002)
◄ | La comune dell'Emacs | Sant'Ignucius | ► |
Il 27 settembre 1983 i programmatori che seguivano il newsgroup net.unix-wizards su Usenet incontrarono un messaggio insolito. Inserito nelle ore piccole, per l’esattezza mezz’ora dopo mezzanotte e firmato da rms@mit-oz, appariva con un oggetto semplice ma accattivante: "Nuova implementazione di UNIX". Tuttavia il paragrafo d’apertura del messaggio, anziché presentare una nuova versione di Unix, sembrava una chiamata alle armi:
A partire dal prossimo giorno del Ringraziamento inizierò a scrivere un sistema pienamente compatibile con Unix chiamato GNU (Gnu’s Not Unix), distribuito gratuitamente a chiunque vorrà usarlo. Urgono contributi in tempo, denaro, programmi e attrezzature. 1
Agli occhi di un esperto programmatore Unix il messaggio appariva come un miscuglio tra idealismo e arroganza. Non soltanto l’autore voleva ricostruire da capo un sistema operativo già maturo, ma si proponeva perfino di migliorarlo. Il nuovo sistema GNU, si spiegava in quel testo, avrebbe incluso tutti i componenti di base – un elaboratore testi, un programma shell per far girare le applicazioni compatibili con Unix, un compilatore e "alcune altre cose." 2. Né sarebbero mancate diverse opzioni stimolanti, tuttora assenti in Unix: un’interfaccia grafica basata sul linguaggio di programmazione Lisp, un file system a prova di blocco e una serie di protocolli di rete basati sull’infrastruttura utilizzata al MIT.
"GNU potrà far girare programmi Unix, ma non sarà un suo duplicato", spiegava il messaggio. "Vi apporteremo tutti i miglioramenti ritenuti necessari, facendo tesoro delle esperienze avute con altri sistemi operativi."
A prevenire lo scetticismo di qualche lettore, l’annuncio sul nuovo sistema operativo era seguito da una breve biografia dell’autore, intitolata "Chi sono?":
Mi chiamo Richard Stallman, creatore dell’originale EMACS, un elaboratore testi assai imitato, e sono attualmente nello staff del laboratorio di intelligenza artificiale del MIT. Ho lavorato a lungo su compilatori, editor, debugger e interpreti di comandi, sull’Incompatible Time Sharing System e sul sistema operativo delle Lisp Machines. All’interno dell’ITS ho ideato il supporto per la visualizzazione indipendente dal terminale. Inoltre ho implementato un file system a prova di blocco e due sistemi a finestre per Lisp Machines3.
Per un gioco del destino, il progetto GNU così delineato mancò la data del lancio fissata per il giorno del Ringraziamento (fine novembre). Ma dal gennaio 1984 Stallman rispettò la promessa, immergendosi totalmente nell’ambiente di sviluppo Unix. Per un architetto del software cresciuto sull’ITS, era un po’ come progettare grandi magazzini di periferia anziché palazzi moreschi. Tuttavia anche la realizzazione di un sistema operativo analogo a Unix presentava dei vantaggi nascosti. L’ITS si era rivelato assai potente, ma aveva un tallone d’Achille: gli hacker del MIT l’avevano progettato in modo da trarre il massimo dal modello PDP. Quando quest’ultimo venne eliminato, all’inizio degli anni ’80, su decisione degli amministratori del laboratorio, quel sistema operativo, un tempo simile a una vibrante metropoli, diventò improvvisamente una città fantasma. Unix, d’altra parte, era stato ideato tenendo conto delle opzioni di mobilità e funzionalità a lungo termine. Sviluppato originariamente dai giovani ricercatori di AT&T, il programma era sfuggito al radar delle grandi corporation, trovando felice dimora nel mondo squattrinato dell’informatica accademica. Avendo a disposizione risorse inferiori a quelle dei colleghi al MIT, gli sviluppatori Unix si erano curati di personalizzarlo in modo da girare su un vasto assortimento di hardware: qualunque cosa compresa tra il PDP-11 a 16-bit – macchina adatta solo per piccole attività, secondo la maggioranza degli hacker nel laboratorio di intelligenza artificiale – e i mainframe a 32-bit come il VAX 11/780. A partire dal 1983 alcune aziende, prima fra tutte la Sun Microsystems, avevano iniziato a spingersi anche oltre, mettendo a punto una nuova generazione di microcomputer, definiti "workstation", per sfruttare la crescente trasferibilità di quel sistema operativo.
Per facilitare questo processo, gli sviluppatori responsabili delle maggiori versioni di Unix si assicurarono di mantenere un strato di astrazione in più tra il software e la macchina. Anziché tagliare su misura il sistema operativo per sfruttare una macchina specifica – come avevano fatto gli hacker del laboratorio di intelligenza artificiale con l’ITS e il PDP-10 – i programmatori Unix optarono per un approccio più generico e meno specializzato. Concentrandosi maggiormente sugli standard e le specifiche che tenevano insieme i numerosi sotto-componenti del sistema, anziché sui componenti veri e propri, riuscirono a creare un sistema che poteva essere modificato velocemente per adattarsi ai gusti di qualunque macchina. Se un utente si lamentava del funzionamento di una parte, l’adozione di questi standard rendeva possibile l’estrazione di singole sotto-componenti e la loro correzione o sostituzione con qualcosa di meglio. In sintesi, quel che mancava a Unix sotto l’aspetto dello stile o dell’estetica veniva più che ricompensato dalla flessibilità ed economicità, che ne garantirono la rapida adozione4.
La decisione di Stallman di avviare lo sviluppo del sistema GNU venne provocata dalla fine di quel sistema ITS che gli hacker del laboratorio avevano coltivato così a lungo. La sua scomparsa si rivelò un colpo traumatico per Stallman. Avvenuta sulla scia dell’episodio della stampante laser Xerox, tale scomparsa offrì un’ulteriore prova del fatto che la cultura hacker stesse perdendo la propria immunità nei confronti di quelle pratiche commerciali tipiche del mondo esterno.
Come per il codice del software su cui era basato, le radici che portarono all’estinzione dell’ITS andavano cercate nel recente passato. Negli anni successivi alla guerra del Vietnam i fondi a disposizione del Ministero della Difesa, da tempo maggior finanziatore della ricerca informatica, avevano subito drastiche riduzioni. Nella disperata ricerca di nuovi contributi, laboratori e università si erano così rivolti al settore privato. Per il laboratorio di intelligenza artificiale, ottenere il sostegno degli investitori privati si rivelò un gioco da ragazzi. Già sede di alcuni dei progetti più ambiziosi del dopoguerra, il laboratorio divenne rapidamente un’incubatrice di tecnologia. In realtà a partire dal 1980 la maggioranza dello staff interno, compresi numerosi hacker, divideva il proprio tempo tra il MIT e vari progetti commerciali.
Quel che inizialmente pareva un patto vincente per entrambi i fronti – gli hacker lavoravano su progetti d’avanguardia e in cambio potevano utilizzare le tecnologie più aggiornate – si rivelò presto una sorta di patto Faustiano. Più era il tempo dedicato a tali progetti commerciali, e meno ne rimaneva per il mantenimento della barocca infrastruttura del laboratorio. Le aziende iniziarono poi ad assumere direttamente gli hacker nel tentativo di monopolizzarne tempo e attenzione. Con la diminuzione degli hacker presenti, divenne sempre più difficile assicurare la corretta gestione di macchine e programmi. Ancor peggio, sostiene Stallman, il laboratorio iniziò a subire un "mutamento demografico". Gli hacker che una volta costituivano una rumorosa minoranza stavano perdendo aderenti mentre "quei professori e studenti a cui non piaceva granché [il PDP-10] erano numerosi come sempre"5. Il punto di rottura si manifestò nel 1982. Fu in quell’anno che l’amministrazione decise di procedere con l’aggiornamento del computer centrale, il PDP-10. La casa produttrice, Digital, aveva messo fuori commercio quel modello. Pur offrendo ancora un mainframe di alta potenza, denominato KL-10, questo richiedeva una drastica operazione di riscrittura dell’ITS, nel caso gli hacker volessero "portare" quel sistema operativo sulla nuova macchina. Temendo che il laboratorio avesse perso la massa critica di programmatori di talento, i membri di facoltà spinsero per Twenex, un sistema operativo commerciale realizzato da Digital. Rimasti in minoranza, agli hacker non rimase altra scelta che adeguarsi.
"Mancando gli hacker capaci di mantenere il sistema, [i membri di facoltà] dissero ’ci aspetta il disastro, meglio dotarci di un software commerciale’", così avrebbe ricordato Stallman dopo qualche anno. "Aggiungevano, ’in tal modo alla manutenzione ci penserà la casa produttrice.’ Purtroppo si sbagliavano di grosso, ma presero comunque quella decisione." 6
All’inizio gli hacker considerarono il sistema Twenex come un ulteriore simbolo autoritario che andava sovvertito. Il nome stesso suscitava un grido di protesta. Ufficialmente chiamato TOPS-20 dalla Digital, si trattava del successore del TOPS-10, il sistema operativo commercializzato per il PDP-10. La Bolt Beranek & Newman ne aveva messo a punto una versione migliorata, nota come Tenex. 7 Da qui derivò Twenex, termine coniato da Stallman per evitare di usare il nome originale TOPS-20. "Il sistema era ben lungi dall’essere uno dei migliori ("top"), per cui mi rifiutai di chiamarlo in quel modo." ricorda Stallman. "Decisi perciò di inserire una ’w’ nel nome e venne fuori Twenex."
Alla macchina su cui girava il Twenex/TOPS-20 venne affibbiato un diminuitivo altrettanto sarcastico: Oz. Secondo una leggenda hacker, il computer richiedeva un macchina più piccola, il PDP-11, per attivare il proprio terminale. Uno degli hacker, trovandosi davanti per la prima volta alle impostazioni del KL-10-PDP-11, li paragonò alla roboante introduzione de Il Mago di Oz. "Io sono il grande e potente Oz", intonò l’hacker. "Non prestate alcuna attenzione al PDP-11 nascosto dietro quella console."8 Tuttavia la risata con cui gli hacker accolsero il KL-10 svanì non appena ebbero dato un’occhiata a Twenex. Non soltanto il sistema vantava opzioni interne di sicurezza, ma queste facevano da sottofondo a ogni strumento e applicazione realizzati dagli ingegneri responsabili della progettazione. Quello che una volta sembrava un gioco tra gatto e topo sulle password nel sistema di sicurezza del laboratorio d’informatica, si era trasformato in una vera e propria battaglia sulla gestione del sistema. Secondo gli amministratori, una volta privato delle opzioni di sicurezza Oz sarebbe risultato più suscettibile a blocchi accidentali. Per gli hacker, invece, la migliore prevenzione di tali blocchi consisteva nel modificare il codice originale. Purtroppo il numero di hacker dotati di tempo e capacità per farlo si era ridotto a tal punto che fu la tesi degli amministratori a prevalere.
Scroccando le password altrui e provocando deliberatamente il blocco del sistema come prova dei problemi che ne derivavano, Stallman riuscì a frustrare i tentativi degli amministratori di esercitare pieno controllo sul sistema. Dopo un fallito "colpo di stato", Stallman diffuse un messaggio di allerta all’intero staff del laboratorio9:
"C’è stato un altro tentativo di conquistare il potere", si leggeva nel testo. "Per ora gli assalti dell’aristocrazia sono stati respinti." A tutela della propria identità, Stallman firmò il messaggio come "Radio Free OZ."
Un camuffamento piuttosto debole. Già dal 1982 la sua avversione per ogni password e segretezza era talmente nota che gli utenti esterni al laboratorio ne usavano l’account come ponte per raggiungere ARPAnet, la rete informatica per la ricerca cui si devono le fondamenta dell’odierna Internet. All’inizio degli anni ’80 tra questi "turisti" c’era anche Don Hopkins, programmatore californiano informato dal giro hacker che per accedere al mitico sistema ITS del MIT bastava inserire le iniziali RMS come login e lo stesso monogramma per la relativa password.
"Sarò eternamente grato al MIT per aver consentito al sottoscritto e a molta altra gente il libero accesso a quelle macchine", afferma Hopkins. "Per parecchi di noi ciò è stato davvero importante."
Questa politica riservata ai "turisti", apertamente tollerata dagli amministratori del MIT durante gli anni del sistema ITS10, subì un duro contraccolpo quando Oz divenne il collegamento primario tra il laboratorio e ARPAnet. Inizialmente Stallman continuò nella pratica di ripetere i medesimi login e password in modo che gli utenti esterni potessero imitarlo. Tuttavia, con l’andar del tempo la fragilità di Oz costrinse gli amministratori a impedire l’accesso agli estranei, i quali, sia per puro caso sia con intenti dolosi, potevano bloccare il sistema. Quando finalmente gli stessi amministratori imposero a Stallman di smetterla di diffondere la propria password, egli rifiutò di aderire sulla base dell’etica personale e smise completamente di usare Oz11.
"[Quando] le password fecero la loro comparsa al laboratorio di intelligenza artificiale del MIT [decisi] di seguire le mie convinzioni contrarie all’esistenza di password", avrebbe spiegato in seguito Stallman. "Poiché non credo sia auspicabile dotare un computer delle opzioni di sicurezza, non ho intenzione di avvallare l’esistenza di un siffatto regime." 12
Quel rifiuto di inchinarsi di fronte al grande e potente Oz simbolizzava la crescente tensione tra gli hacker e la direzione del laboratorio nei primi anni ’80. Una tensione che tuttavia impallidiva in raffronto al conflitto in corso all’interno della stessa comunità hacker. Con l’arrivo del KL-10, questa appariva già spaccata su due fronti contrapposti. Il primo ruotava intorno a un’azienda di software nota come Symbolics, Inc. Il secondo invece ne appoggiava il diretto rivale, Lisp Machines, Inc. (LMI). Entrambe le società erano in lotta per lanciare sul mercato la Lisp Machine, dispositivo costruito per sfruttare al meglio il linguaggio di programmazione Lisp.
Creato dal pioniere degli studi sull’intelligenza artificiale John McCarthy, ricercatore presso il MIT sul finire degli anni ’50, il Lisp è un linguaggio elegante e appropriato per programmi finalizzati a poderosi lavori di classificazione e smistamento. Il nome è la versione contratta di LISt Processing. Dopo il passaggio di McCarthy al laboratorio di intelligenza artificiale di Stanford, gli hacker del MIT lo perfezionarono in un dialetto locale soprannominato MACLISP. Il prefisso "MAC" si riferiva al progetto MAC finanziato dal DARPA, da cui nacquero poi il laboratorio di intelligenza artificiale e quello di computer science. Sotto la guida dell’abile hacker Richard Greenblatt, nel corso degli anni ’70 i programmatori del laboratorio di intelligenza artificiale misero a punto un intero sistema operativo basato su Lisp, chiamato in seguito sistema operativo Lisp Machine. Nel 1980, il progetto si era già diviso in due derivazioni commerciali: alla direzione della Symbolics c’era Russell Noftsker, già amministratore del laboratorio, mentre la Lisp Machines, Inc. (LMI) era guidata da Greenblatt.
Il software per la Lisp Machine era dovuto a quei primi hacker, ovvero la proprietà spettava al MIT pur rimanendo a disposizione di chiunque volesse copiarlo, nel pieno rispetto della tradizione hacker. Una pratica questa che limitava l’attività commerciale di qualunque impresa volesse ottenere la licenza di un programma del MIT per poi lanciarlo sul mercato come prodotto specifico. Per assicurarsi qualche vantaggio, ed esaltare gli aspetti del sistema operativo che potessero meglio attrarre i consumatori, le aziende ingaggiarono diversi hacker del laboratorio mettendoli all’opera su particolari componenti del sistema operativo per la Lisp Machine al di fuori degli auspici del laboratorio stesso.
La più aggressiva in tal senso si dimostrò la Symbolics. Entro la fine del 1980, questa aveva assunto 14 addetti del laboratorio come consulenti part-time per sviluppare la sua versione della Lisp Machine. Tranne Stallman, gli altri firmarono invece con la LMI13.
Inizialmente Stallman sembrò accettare i tentativi commerciali di entrambe le aziende, anche se ciò comportava una maggiore mole di lavoro per lui. Entrambe ottennero dal MIT la licenza per i sorgenti, ed era compito di Stallman aggiornare la Lisp Machine del laboratorio per tener dietro alle innovazioni più recenti. Nonostante la licenza ottenuta dalla Symbolics consentisse a Stallman il diritto di rivederne il codice, ma non di copiarlo, egli sostiene che un "gentleman’s agreement" tra la direzione della Symbolics e il laboratorio gli permetteva di prendere in prestito i frammenti più interessanti nel tipico stile hacker.
Il 16 marzo 1982, una data che Stallman rammenta bene perché era il suo compleanno, i dirigenti della Symbolics decisero di porre fine a quell’accordo tra gentiluomini. Si trattava di una manovra chiaramente strategica. La LMI, diretta concorrente per il mercato della Lisp Machine, sostanzialmente utilizzava la copia del sistema in dotazione al laboratorio di intelligenza artificiale. Anziché foraggiare la crescita del diretto concorrente, la Symbolics impose la stretta osservanza del testo della licenza. Se il laboratorio voleva tenere aggiornato il proprio sistema operativo con quello della Symbolics doveva utilizzare una macchina di quest’ultima e tagliare ogni rapporto con la LMI.
Stallman, responsabile del mantenimento della Lisp Machine del laboratorio, era furibondo. Considerando la decisione come un "ultimatum", replicò con la disconnessione del canale di comunicazione a microonde tra la Symbolics e il laboratorio stesso. Poi giurò a se stesso che non avrebbe mai lavorato su una macchina della Symbolics e si schierò apertamente a favore della LMI. "Dal mio punto di vista il laboratorio era un paese neutrale, come il Belgio durante la prima guerra mondiale", spiega Stallman. "Ma se la Germania invade il Belgio, allora questo dichiara guerra alla Germania e si allea con Francia e Inghilterra."
Le circostanze della cosiddetta "guerra della Symbolics" del 1982-1983 variano parecchio a seconda delle fonti interpellate. Quando i dirigenti dell’azienda si accorsero che le funzioni più recenti continuavano ad apparire nella Lisp Machine del laboratorio, per poi estendersi alla versione della LMI, decisero di installare un "programma-spia" nel computer di Stallman. Questi sostiene di aver riscritto ogni funzione da zero, approfittando della clausola relativa alla revisione del codice, ma avendo poi cura di riscriverlo in maniera differente per quanto possibile. I dirigenti della Symbolics la pensarono in maniera opposta e portarono il caso all’attenzione degli amministratori del MIT. Stando al libro The Brain Makers: Genius, Ego, and Greed, and the Quest for Machines That Think, scritto nel 1984 da Harvey Newquist, l’amministrazione rispose invitando Stallman a "tenersi alla larga" dal progetto della Lisp Machine14. Secondo Stallman, invece, gli amministratori del MIT gli diedero man forte. "Non subii alcuna pressione", sostiene. "Decisi però di apportare delle modifiche a quella pratica. Per essere ultra-sicuro, non leggevo più il loro codice. Usavo soltanto la documentazione e procedevo a partire da quella."
Comunque sia, la lite non fece altro che rafforzare la posizione di Stallman. Senza rivedere il codice, colmò ogni lacuna seguendo i gusti personali e coinvolse gli altri del laboratorio nella tempestiva segnalazione di eventuali problemi. Si assicurò, inoltre, che i programmatori della LMI avessero accesso diretto ai cambiamenti apportati. "Avevo deciso di punire la Symbolics, fosse stata l’ultima azione della mia vita", dice Stallman.
Si tratta di un’affermazione rivelatrice, non soltanto perché getta luce sull’indole non-pacifista di Stallman, ma anche perché riflette l’intenso livello emotivo suscitato dal conflitto. Secondo un altro articolo citato da Newquist, ad un certo punto Stallman sembrò talmente fuori di sé che diffuse una e-mail in cui minacciava di "imbottirsi di dinamite per poi entrare negli uffici della Symbolics." 15 Pur negando alcun ricordo di tale e-mail e descrivendone l’eventuale esistenza come una "voce maligna", Stallman riconosce tuttavia che un simile pensiero gli attraversò la mente. "Pensavo veramente di uccidermi e distruggere così la loro sede", ricorda. "Credevo che la mia vita fosse finita." 16
Un simile livello di disperazione è dovuto a quello che Stallman interpretava come la "distruzione della propria casa", ovvero la fine della cultura hacker tipica del laboratorio di intelligenza artificiale. In una successiva intervista via e-mail con Levy, Stallman si paragonò alla figura storica di Ishi, ultimo sopravvissuto della tribù Yahi, spazzata via dalle guerre contro gli indiani d’America in California nel periodo 1860-1870. L’analogia dipinge la posizione di Stallman in termini epici, quasi mitologici. In realtà tende però a mascherare la tensione tra lo stesso Stallman e gli altri hacker del laboratorio, una tensione preesistente allo scisma Symbolics-LMI. Anziché vedere la Symbolics come una potenza di sterminio, molti colleghi consideravano appropriata quell’iniziativa. Con il lancio sul mercato della Lisp Machine, l’azienda spinse i principi hacker sulla progettazione ingegneristica del software al di fuori della torre d’avorio del laboratorio, per raggiungere un mercato imprenditoriale in cui vigeva la progettazione manageriale. Lungi dal considerare Stallman un bastione etico, non pochi hacker lo giudicavano una figura inutile e anacronistica.
Stallman non contesta questa diversa spiegazione degli eventi. Aggiunge anzi un ulteriore motivo a spiegazione del clima di ostilità suscitato dall’"ultimatum" della Symbolics. Ancor prima che quest’ultima assumesse gran parte dello staff del laboratorio, secondo Stallman molti di loro avevano già iniziato ad emarginarlo. "Non venivo più invitato ad andare a Chinatown", ricorda. "Stando all’usanza lanciata da Greenblatt, prima di andare fuori a cena si chiedeva o si mandava un messaggio di invito a tutti nel laboratorio. A un certo punto verso il 1980-1981, la mia presenza non venne più richiesta. Non soltanto avevano smesso d’invitarmi, ma in seguito qualcuno mi confessò di aver ricevuto pressioni affinché mentisse pur di tenermi all’oscuro di tutto."
Nonostante l’ira di Stallman nei confronti degli hacker che avevano orchestrato questa forma di meschino ostracismo, la controversia con la Symbolics sembrò suscitargli una rabbia di tipo nuovo, quella di una persona prossima a vedersi privata del proprio tetto. Quando la Symbolics smise di inviare i cambiamenti apportati man mano al codice, per tutta risposta Stallman si rinchiuse in ufficio per riscrivere da capo ogni nuova funzione e strumento. Per quanto frustrante, ciò garantiva ai futuri utenti della Lisp Machine il pieno accesso alle medesime funzioni già disponibili a quanti seguivano la Symbolics.
Quel lavoro assicurava altresì il consolidamento della fama leggendaria guadagnata da Stallman all’interno della comunità hacker. Già assai nota per i contributi con l’Emacs, la sua abilità di tener testa all’intero gruppo di programmatori della Symbolics – tra i quali erano presenti non pochi hacker già leggendari – rimane tuttora uno dei maggiori successi umani dell’era dell’informazione, o di ogni altra epoca, per quel che possa valere. Definendolo "maestro dell’hacking" e "il John Henry virtuale del codice", lo scrittore Steven Levy fa notare come molti dei suoi rivali assunti dalla Symbolics non ebbero altra scelta che rendere omaggio al loro ex-collega idealista. Levy cita Bill Gosper, un hacker che alla fine andò a lavorare nell’ufficio della Symbolics a Palo Alto, il quale si dichiara colpito dalla qualità dell’operato di Stallman in quel frangente:
Dopo aver dato un’occhiata a qualcosa scritto da Stallman, potevo anche decidere che fosse scadente (probabilmente non lo era, ma diciamo che qualcuno mi avesse convinto del contrario), eppure non avrei fatto a meno di notare, ’Un momento, però, Stallman non ha nessuno che lo aiuta o con cui discutere per tutta la notte. Lavora completamente da solo! È incredibile che qualcuno possa fare tutto ciò in completa solitudine!" 17
Per Stallman, i mesi trascorsi a rincorrere la Symbolics evocano un misto tra orgoglio e profonda tristezza. In quanto persona di tendenze liberali il cui padre combatté nella seconda guerra mondiale, Stallman non può definirsi pacifista. Sotto molti aspetti, la guerra con la Symbolics va considerata un rito di passaggio verso il quale andava dirigendosi fin dal suo arrivo al laboratorio un decennio prima. Allo stesso tempo, tuttavia, l’episodio coincideva con la traumatica distruzione di quella cultura hacker in cui si era cullato fin dall’adolescenza. Un giorno, durante un pausa da quel lavoro, Stallman visse un’esperienza traumatica nella stanza che ospitava le macchine del laboratorio. Mentre si sgranchiva le gambe, finì per imbattersi nella massiccia struttura inutilizzata del PDP-10. Davanti a quelle spie ormai fuori uso, spie che una volta si accendevano e si spegnevano continuamente ad indicare lo stato del programma interno, Stallman subì un impatto emotivo analogo a quello che si prova di fronte al cadavere ben conservato di una persona cara.
"Sono scoppiato a piangere in quella stanza", ricorda. "Vedere lì quella macchina, morta, senza nessuno a prendersene cura, una scena che rifletteva la totale distruzione della mia comunità."
Stallman avrebbe avuto poco tempo per il rimpianto. La Lisp Machine, nonostante tutto il furore suscitato e il gran lavoro richiesto, non costituiva altro che un evento collaterale tra le grandi battaglie in corso nel mercato della tecnologia. Il ritmo frenetico della miniaturizzazione del computer stava dando vita a microprocessori rinnovati e più potenti che avrebbero presto incorporato le capacità hardware e software in un’unica macchina, al pari di una moderna metropoli che riesce ad inghiottire un antico villaggio del deserto.
Su tali microprocessori giravano centinaia, persino migliaia, di programmi commerciali, ciascuno protetto da un mosaico di licenze d’uso e di accordi di non divulgazione, che impedivano agli hacker l’accesso o la condivisione del codice sorgente. Le licenze erano grezze e inadeguate, ma dal 1983 erano diventate abbastanza precise da soddisfare i tribunali e spaventare possibili "malintenzionati". Il software, una volta considerato una sorta di decorazione aggiuntiva offerta dai produttori di hardware per rendere più appetitosi i loro costosi computer, stava diventando rapidamente il piatto forte. Sempre più alla ricerca di nuovi giochi e di nuove funzioni, gli utenti andavano dimenticando la tradizionale richiesta di poter dare un’occhiata alla ricetta, una volta concluso il pasto.
Lo scenario si evidenziava con maggior forza nel mondo del personal computer. Aziende come Apple Computer e Commodore stavano creando nuovi milionari vendendo macchine con sistema operativo incorporato. Ignorando la cultura hacker e il suo rifiuto per il software in solo formato binario, buona parte dell’utenza non vedeva alcun motivo per protestare quando tali aziende facevano a meno di allegare i file con il codice sorgente. Alcuni anarchici aderenti all’etica hacker tentarono di trovare un varco per quelle norme etiche all’interno del nuovo mercato in fieri, ma per lo più quest’ultimo ricompensava i programmatori abbastanza veloci da sfornare programmi sempre nuovi e sufficientemente scaltri da registrarli come opere d’ingegno posti sotto la tutela legale del copyright.
Uno dei più famosi tra questi programmatori era Bill Gates, il quale aveva abbandonato Harvard due anni dopo la laurea di Stallman. A quei tempi i due non si conoscevano, ma già sette anni prima che Stallman inviasse quel messaggio al newsgroup net.unix-wizards, Gates – giovane imprenditore e partner dell’azienda software Micro-Soft, successivamente divenuta Microsoft, con base ad Albuquerque, New Mexico – aveva fatto girare una lettera aperta nella comunità degli sviluppatori. Scritta in replica a quegli utenti di PC che copiavano i programmi della Micro-Soft, la "Lettera aperta agli hobbisti" mirava a colpire l’idea stessa dello sviluppo comunitario del software.
"Chi può permettersi di lavorare a livello professionale senza essere retribuito?", chiedeva Gates. "Quale hobbista è in grado di dedicare tre anni di lavoro per un programma, sistemarne ogni problema, documentarlo adeguatamente per poi distribuirlo gratuitamente?" 18
Anche se soltanto pochi hacker del laboratorio d’intelligenza artificiale notarono quel testo nel 1976, la lettera di Gates rappresentava il mutato atteggiamento verso il software sia tra le aziende sia tra gli sviluppatori di ambito commerciale. Perché considerare il software come un bene a costo zero quando il mercato stabiliva il contrario? Nel periodo a cavallo tra la fine degli anni ’70 e l’inizio del decennio successivo, la vendita di programmi informatici divenne ben più di un modo per recuperare le spese iniziali; si trattava di una dichiarazione politica. In un periodo in cui negli Stati Uniti l’amministrazione Reagan si affrettava ad allentare molte restrizioni federali nonché quei freni alla spesa pubblica imposti durante il mezzo secolo seguito alla Grande Depressione, parecchi programmatori consideravano l’etica hacker contraria alla competizione commerciale e, per estensione, anti-americana. Al massimo veniva considerata come il ritorno a posizioni anti-corporation tipiche di fine anni ’60 e primi ’70. Al pari di un banchiere di Wall Street che ritrovava una maglietta dai colori psichedelici tra camicie dal colletto inamidato e vestiti a doppio petto, parecchi programmatori trattavano l’etica hacker come un imbarazzante ricordo di un periodo idealista del passato.
Per qualcuno che aveva trascorso l’intero arco degli anni ’60 come un inquieto ritorno al decennio precedente, Stallman non sembrava affatto preoccupato di vivere al di fuori della cerchia dei colleghi. Da programmatore abituato a lavorare con le macchine e i software più aggiornati, tuttavia, si trovava di fronte quella che può essere definita soltanto come "una difficile scelta morale": lasciar perdere le obiezioni etiche contro il software "proprietario" – il termine usato da Stallman e dagli altri hacker per descrivere qualunque programma contenesse un copyright privato oppure una licenza d’uso che ne limitasse la copia e la modifica – oppure dedicare la propria esistenza alla costruzione di un sistema alternativo, non proprietario, per il software. Fu questa seconda ipotesi ad attirare maggiormente Stallman, visti anche i recenti mesi di traversie con la Symbolics. "Credo che a quel punto avrei potuto smettere definitivamente di occuparmi di computer", aggiunge. "Pur mancando di doti particolari, sono certo che avrei potuto fare il cameriere. Non in un ristorante di classe, probabilmente, ma un posto l’avrei trovato."
Fare il cameriere – o meglio, smettere di lavorare alla programmazione informatica – avrebbe significato abbandonare completamente un’attività che gli aveva dato soddisfazioni enormi. Ripensando alle sue giornate dopo l’arrivo a Cambridge, Stallman identificava senza problemi lunghi periodi in cui la programmazione aveva costituito l’unico suo piacere. Anziché mollare decise perciò d’insistere.
Da ateo convinto, Stallman rifiuta l’idea di destino, di dharma o di un richiamo divino nella vita. Ciò nonostante, considera una scelta naturale quella decisione di lottare contro il software proprietario e di realizzare un sistema operativo per spingere gli altri a seguire il suo esempio. Dopo tutto era stata la combinazione tra testardaggine, lungimiranza e virtuosismo nella programmazione a condurlo davanti a un bivio di cui molta gente non conosceva neppure l’esistenza. Nel descrivere la sua decisione in un capitolo contenuto nel volume del 1999 Open Sources, Stallman cita la spiritualità contenuta nelle parole del sapiente ebraico Hillel19:
Se non sono per me stesso, chi sarà per me?
E se sono solo per me stesso, che cosa sono?
E se non ora, quando?
Negli interventi pubblici preferisce però evitare ogni riferimento religioso e illustra quella svolta in termini pragmatici. "Mi son chiesto: cosa posso fare, in quanto sviluppatore di sistemi operativi, per migliorare la situazione? Dopo un’attenta valutazione, mi resi conto del fatto che per risolvere il problema occorreva proprio uno sviluppatore di sistemi operativi."
Una volta presa quella decisione, aggiunge Stallman, tutto il resto "andò a posto da solo." Si sarebbe astenuto dall’utilizzare programmi che lo costringevano a scendere a patti con le proprie scelte morali, mentre al contempo si sarebbe dedicato a facilitare le cose per chiunque avesse voluto seguirne l’esempio. Dopo aver giurato di voler costruire un sistema operativo libero e gratuito "oppure di morire provandoci – di vecchiaia, naturalmente", ironizza Stallman, rassegnò le proprie dimissioni dallo staff del MIT nel gennaio 1984 per dedicarsi interamente al progetto GNU.
Quel gesto portò alla fine della protezione legale del MIT per ogni lavoro di Stallman. Tuttavia egli aveva ancora abbastanza amici al laboratorio da poter mantenere un proprio ufficio senza dover pagare alcun affitto. Riuscì anche ad assicurarsi qualche giro di consulenze per finanziare l’avvio del progetto GNU. Tuttavia quelle dimissioni significavano anche, da parte sua, la negazione di qualsiasi discussione sul conflitto d’interessi sul software o sulla proprietà dello stesso da parte del MIT. Colui che da giovane era caduto sempre più profondamente nelle braccia del laboratorio d’intelligenza artificiale a causa del proprio isolamento sociale, stava ora erigendo un muro legale tra se stesso e quell’ambiente.
Nei mesi immediatamente successivi, Stallman operò in isolamento anche rispetto alla comunità Unix. Nonostante l’annuncio apparso sul newsgroup net.unix-wizards avesse provocato risposte di sostegno, in questa fase iniziale furono pochi i volontari che decisero di aggregarsi alla crociata.
"La reazione della comunità si rivelò alquanto uniforme", ricorda Rich Morin, allora leader di uno user-group dedicato a Unix. "La gente diceva: ’Oh, davvero un’ottima idea. Facci vedere il codice. Mostraci che si può fare.’"
Seguendo la tipica tradizione hacker, Stallman iniziò a cercare programmi e strumenti già esistenti da inserire all’interno di GNU. Uno dei primi fu un compilatore chiamato VUCK, che convertiva i programmi scritti nel diffuso linguaggio C in un codice comprensibile per la macchina. Tradotto dall’olandese, l’acronimo del nome stava per Free University Compiler Kit. Ottimista, Stallman chiese all’autore se il programma fosse libero. Quando questi lo informò che "Free University" era solo il riferimento alla Vrije Universiteit di Amsterdam, Stallman rimase deluso.
"Mi rispose in tono canzonatorio, dicendo che l’università era libera ma non il compilatore", rammenta Stallman. "Decisi allora che il mio primo programma per il progetto GNU sarebbe stato un compilatore valido per più linguaggi e piattaforme." 20
Alla fine Stallman trovò il compilatore Pastel21 scritto dagli sviluppatori del Lawrence Livermore National Lab. Per quanto ne sapesse a quel tempo, tale compilatore era liberamente copiabile e modificabile. Purtroppo aveva un difetto sostanziale: salvava ogni programma nella memoria di base, rubando così spazio prezioso per altre attività. Sui sistemi mainframe il difetto poteva essere perdonabile, ma rappresentava una barriera insormontabile su macchine Unix, troppo piccole per poter gestire i grossi file in tal modo generati. Inizialmente Stallman compì rapidi progressi, grazie alla costruzione di un supporto compatibile con il linguaggio C. Tuttavia con l’arrivo dell’estate fu costretto a concludere che avrebbe dovuto scrivere un nuovo compilatore partendo completamente da zero.
Nel settembre 1984, Stallman mise momentaneamente da parte lo sviluppo del compilatore e iniziò a cercare qualche frutto a portata di mano. Cominciò a sviluppare una versione GNU di Emacs, il programma che aveva curato per oltre un decennio. Si trattava di una decisione strategica. All’interno della comunità Unix, esistevano due elaboratori testi originali: vi, scritto dal cofondatore della Sun Microsystems Bill Joy, e ed, realizzato dal ricercatore dei Bell Labs (e co-autore di Unix) Ken Thompson. Entrambi erano utili e diffusi, ma nessuno dei due offriva la possibilità di espandersi all’infinito propria dell’Emacs. Riscrivendo quest’ultimo per l’utenza Unix, Stallman avrebbe avuto maggiori probabilità di evidenziare le proprie abilità. Sembrava inoltre ragionevole ritenere che gli utenti dell’Emacs fossero in sintonia con la mentalità di Stallman.
Ripensando a quella decisione, Stallman non ci vide nulla di strategico. "Volevo un Emacs, ed avevo un’ottima opportunità per curarne lo sviluppo."
Ancora una volta l’idea di dover reinventare la ruota fa a pugni con la sensibilità dell’hacker efficiente. Lavorando alla versione Unix dell’Emacs, Stallman si trovò presto a seguire le orme di James Gosling, laureando presso la Carnegie Mellon nonché autore di una versione in C chiamata Gosling Emacs o GOSMACS. Questa includeva un interprete basato su un derivato semplificato del linguaggio Lisp noto come MOCKLISP. Deciso ad usufruire di una struttura analoga, Stallman prese copiosamente in prestito le innovazioni di Gosling. Nonostante il GOSMACS fosse sotto copyright e l’autore ne avesse venduto i diritti alla UniPress, azienda privata di software, Stallman prese per buone le assicurazioni fornitegli da un collega che aveva partecipato alle prime lavorazioni di MOCKLISP. Secondo quest’ultimo, Gosling, all’epoca prossimo al dottorato presso la Carnegie Mellon, aveva assicurato i suoi collaboratori che il loro lavoro sarebbe rimasto liberamente accessibile all’esterno. Ma quando la UniPress venne a conoscenza del progetto di Stallman minacciò di imporre il proprio copyright. Ancora un volta Stallman si trovava di fronte alla prospettiva di dover ricominciare tutto da capo.
Mentre lavorava alla ricostruzione dell’interprete di Gosling, Stallman finì col crearne uno nuovo perfettamente funzionale, mettendo così in discussione l’uso di quello originale. Tuttavia, il concetto per cui gli sviluppatori potessero vendere i diritti sul software lo faceva soffrire – o meglio, era soprattutto l’idea secondo cui uno sviluppatore fosse proprietario di diritti da poter rivendere agli altri. In un intervento del 1986 presso lo Swedish Royal Technical Institute, citò l’incidente della UniPress come ulteriore esempio dei pericoli associati con il software proprietario.
"Talvolta credo che una delle cose migliori che potrei fare in vita mia sarebbe quella di trovare una quantità enorme di software proprietario protetto da segreto commerciale, e iniziare a distribuirne copie agli angoli delle strade, così da infrangere tale segreto", disse Stallman. "Forse questa sarebbe una maniera molto più efficace per offrire alla gente nuovi programmi di software libero, anziché mettermi a scriverli; ma avrebbero tutti troppa paura anche soltanto a prendere quelle copie." 22
Nonostante l’inevitabile tensione, a lungo andare la disputa sulle innovazioni di Gosling si sarebbe rivelata d’aiuto sia per Stallman sia per il movimento del software libero. Avrebbe intanto costretto il primo a considerare le debolezze della comune dell’Emacs e del sistema di fiducia informale che aveva consentito l’emergere di diramazioni problematiche. Lo avrebbe inoltre obbligato a focalizzare meglio gli obiettivi politici del movimento del software libero. Nel 1985, dopo l’uscita di GNU Emacs, Stallman redasse "Il Manifesto GNU", versione ampliata dell’annuncio originale apparso nel settembre 1983. Il documento conteneva una lunga sezione dedicata alle svariate argomentazioni portate da programmatori commerciali e accademici a giustificazione della proliferazione del software proprietario. Una di queste tesi – "i programmatori non meritano forse una ricompensa per la loro creatività?" – ottenne una risposta che rifletteva la collera di Stallman verso il recente episodio sull’Emacs di Gosling:
"Se c’è qualcosa che merita una ricompensa, questo è il contributo sociale", scrisse Stallman. "La creatività può ritenersi un contributo sociale ma soltanto finché la società sia libera di usarne i risultati. Se i programmatori meritano di essere ricompensati per la creazione di programmi innovativi, secondo lo stesso criterio meritano di essere puniti quando invece ne limitano l’utilizzo." 23
Con la diffusione del GNU Emacs, finalmente il progetto poteva mostrare del codice ben fatto. Ciò diede inoltre avvio alla tipica attività imprenditoriale basata sul software. Man mano che aumentavano gli sviluppatori Unix che iniziavano a giocare con il software, ecco arrivare regali, offerte in denaro e richieste di ulteriori copie su nastro. Ad occuparsi del lato commerciale del progetto GNU Stallman chiamò qualche collega, formalizzando così la nascita della Free Software Foundation (FSF), organizzazione nonprofit dedita a velocizzare il raggiungimento degli obiettivi del progetto GNU. Con Stallman in funzione di presidente e vari amici hacker nel direttivo, la FSF contribuì a fornire la necessaria professionalità al progetto GNU.
Robert Chassell, allora programmatore presso la Lisp Machines, Inc., divenne uno dei cinque membri del direttivo dopo una conversazione a cena con Stallman. Chassell operava anche in quanto tesoriere, ruolo inizialmente modesto, ma cresciuto in tutta rapidità.
"Credo che nel 1985 il volume totale tra uscite ed entrate fosse intorno ai 23.000 dollari", ricorda Chassell. "Richard aveva il suo ufficio, per il resto ci arrangiavamo. Misi tutta la roba, soprattutto i nastri, sotto la mia scrivania. Soltanto più tardi la LMI ci affittò qualche spazio dove riporre nastri e altro materiale necessario."
Oltre a garantire maggiore rispettabilità all’esterno, la Free Software Foundation si pose come centro di gravità per altri programmatori insoddisfatti. Il mercato Unix, ristretto all’ambito accademico anche all’epoca dell’iniziale annuncio di Stallman per l’avvio di GNU, andava diventando sempre più competitivo. Per tenersi stretti i propri clienti, le aziende stavano chiudendo l’accesso al codice sorgente, tendenza a cui era dovuto il rapido incremento di richieste per il software del progetto GNU. I maghi di Unix che un tempo consideravano Stallman un eccentrico un po’ turbolento, iniziarono a considerarlo una Cassandra del software.
"La gente non se ne rende conto fino a quando non viene coinvolta direttamente, ma è davvero frustrante lavorare per due anni su un programma solo per poi vederselo soffiar via sotto il naso", così Chassell sintetizza le sensazioni e i commenti contenuti nelle lettere ricevute in quegli anni dalla FSF. "Dopo che ti accade un paio di volte, cominci a dirti, ’Un momento, così non funziona.’"
Per Chassell la decisione di entrare a far parte della Free Software Foundation si basava su analoghe esperienze personali. Prima di lavorare alla LMI, stava scrivendo un libro introduttivo su Unix per la Cadmus, Inc., azienda di software situata nei pressi di Cambridge. Quando questa chiuse bottega, portò con sé i diritti dell’opera, e il tentativo dello stesso Chassell di riacquistarli non andò in porto.
"A quanto mi risulta, il libro è tuttora in qualche cassetto ad ammuffire, inutilizzabile e non copiabile, semplicemente fuori dal giro", aggiunge. "Era una buona opera introduttiva, se posso dirlo. Basterebbero forse tre o quattro mesi per trasformarlo oggi in un’ottima guida all’odierno GNU/Linux. A parte quanto posso ricordare personalmente, l’intera esperienza è andata perduta."
Costretto a vedere il proprio lavoro impantanarsi mentre il temporaneo datore di lavoro rischiava di finire in bancarotta, Chassell afferma di aver provato qualcosa di analogo alla rabbia che spinse Stallman a due passi da un attacco apoplettico. "Per me la questione centrale stava nella certezza che se vuoi vivere in maniera decente non puoi trovarti davanti a delle porte chiuse", sostiene Chassell. "L’idea stessa di avere la libertà di poter risolvere qualcosa, di modificarla, di qualunque faccenda si tratti, è veramente importante. Ti fa pensare con felicità che, dopo aver vissuto così per un po’ di tempo, ciò che hai fatto acquista davvero validità. Perché altrimenti ti viene semplicemente portato via e buttato o abbandonato, oppure quantomeno non hai più alcun rapporto la tua opera. È come perdere un pezzo della propria esistenza."
Note
- ↑ Si veda Richard Stallman, "Initial GNU Announcement" (settembre 1983). http://www.gnu.ai.mit.edu/gnu/initial-announcement.html
- ↑ ibid.
- ↑ Ibid.
- ↑ Si veda Marshall Kirk McKusick, "Vent’anni di Unix a Berkeley" in Open Sources, Apogeo, 1999, p. 31.
- ↑ Si veda Richard Stallman (1986).
- ↑ Ibid.
- ↑ Fonti diverse: si veda l’intervista a Richard Stallman, la e-mail di Gerald Sussman, e Jargon File 3.0.0. http://www.clueless.com/jargon3.0.0/TWENEX.html
- ↑ Si veda http://www.as.cmu.edu/~geek/humor/See_Figure_1.txt
- ↑ Si veda Richard Stallman (1986).
- ↑ Si veda "MIT AI Lab Tourist Policy." http://catalog.com/hopkins/text/tourist-policy.html
- ↑ Si veda Richard Stallman (1986).
- ↑ Ibid.
- ↑ Si veda H. P. Newquist, The Brain Makers: Genius, Ego, and Greed in the Quest for Machines that Think, Sams Publishing, 1994, p.172.
- ↑ Ibid. p. 196.
- ↑ Ibid. Scrive Newquist, secondo cui quest’aneddoto venne confermato da diversi dirigenti della Symbolics: "Il messaggio provocò una breve folata di eccitazione e speculazione da parte degli impiegati della Symbolics, ma alla fin fine nessuno prese veramente sul serio quella battuta di Stallman."
- ↑ Si veda "MIT AI Lab Tourist Policy." http://catalog.com/hopkins/text/tourist-policy.html
- ↑ Si veda Steven Levy, Hackers, Penguin, USA, 1984 p. 426.
- ↑ Si veda Bill Gates, "An Open Letter to Hobbyists" (3 febbraio 1976). Copia della lettera è disponibile online: http://www.blinkenlights.com/classiccmp/gateswhine.html.
- ↑ Si veda Richard Stallman, "Il progetto GNU" in Open Sources, Apogeo, p. 60. Stallman aggiunge una propria nota a margine di quella dichiarazione: "Essendo ateo, non seguo alcuna guida religiosa, ma a volte mi trovo ad ammirare qualcosa che qualcuno di loro ha detto."
- ↑ Richard Stallman (1986)
- ↑ Compilatore multipiattaforma per una versione estesa del Pascal. [N.d.R.]
- ↑ Richard Stallman (1986).
- ↑ Si veda Richard Stallman, "Il Manifesto GNU" (1985). http://www.gnu.org/gnu/manifesto.it.html