4. Il cambiamento

Da ciò che è stato illustrato finora, dovrebbe emergere chiaramente quanto sia stato importante il contributo della comunità hacker nello sviluppo della tecnologia informatica. Al quadro manca però un elemento fondamentale, che caratterizza il metodo di lavoro degli hacker, che spiega la rapidità dei progressi dell'informatica stessa, e che si riallaccia al discorso iniziale sulla libertà degli utenti... E in questa parte dell'articolo vedremo quale sia questo elemento, e le sue implicazioni.

4.1. Alla base del progresso

Come tutti sanno, qualunque comunità basa la propria esistenza su un modello di collaborazione. E anche la comunità hacker, in quanto tale, aveva il suo modello di collaborazione, basato sulla libera circolazione del sapere. Tutto il folklore, gli usi, i costumi ed il gergo (Jargon) cresciuti attorno agli hacker dimostrano quanto essi fossero uniti attorno a questo principio.

Infatti, l'elemento che aveva tenuto insieme la comunità, e che aveva reso possibili i progressi della tecnologia informatica, era solo uno, ed era molto semplice: ogni programma creato nella comunità era liberamente usabile, copiabile, distribuibile e modificabile. Chiunque vedesse un programma interessante in esecuzione su un computer, era libero di richiederne una copia, utilizzarla, modificarla in base alle proprie esigenze e duplicarla per offrirla agli amici. Tutto ciò era possibile perchè i programmi erano distribuiti assieme al proprio codice sorgente, senza vincoli particolari per il proprio utilizzo [RMS98]. Il sapere, e più in particolare il codice sorgente dei programmi (che rappresenta di per sè un sapere), erano insomma liberi.

Questo metodo di lavoro aveva avuto un impatto sicuramente determinante nella rapidità dello sviluppo informatico. Non era necessario risolvere due o più volte il medesimo problema: se qualcuno l'aveva già fatto, era possibile esaminare la sua soluzione, ed utilizzarla per il proprio lavoro.

Questo concetto è lo stesso che sta alla base del progresso scientifico: ogni ricercatore/hacker poteva ampliare il proprio orizzonte partendo da là dove erano arrivati altri prima di lui --- proprio come Isaac Newton, secondo le sue stesse parole, era arrivato a vedere più lontano "stando sulle spalle dei giganti" che lo avevano preceduto.

La volontà di condividere il proprio sapere, inoltre, era la naturale conseguenza del progresso tecnologico: l'informatica dava finalmente la possibilità di diffondere e copiare le informazioni in modo semplice, economico ed efficace. Sfruttare questa possibilità per favorire il progresso era la cosa più ovvia dell'universo, ed era il modo migliore per aumentare l'efficacia del proprio lavoro. Quindi, si utilizzavano appieno le risorse offerte dalla nuova tecnologia.

E poi, la libertà di duplicare un programma era vista come la cosa più eticamente scontata dell'universo. Tornando al discorso iniziale: supponiamo che un amico vi chieda, per esempio, una copia di un programma di composizione testi. Grazie alle nuove possibilità portate dalla tecnologia, fare una copia non vi costerebbe nulla, e sarebbe per lui immensamente utile. Voi rifiutereste un simile favore?

Per tutti questi motivi, attorno agli anni '60/'70, il metodo di sviluppo più diffuso era proprio quello libero. Nelle università, nei centri di ricerca e nelle aziende, la diffusione del codice sorgente dei programmi era la prassi più diffusa. Il lavoro del team BSD su Unix, per esempio, era venduto come codice sorgente, liberamente ridistribuibile e modificabile [KUS99] da chiunque ne venisse in possesso. I guadagni erano basati sulla vendita di supporto, consulenza, soluzioni personalizzate, know-how.

4.2. La crisi della comunità hacker

Gli interessi del mondo del business, però, non andavano in una direzione compatibile con questi metodi. Come tutti sanno, e come era chiaro già allora, quello informatico è uno scenario in costante mutamento, in cui la rapidità nell'evoluzione e nella diffusione delle informazioni sono determinanti. Ma questo, attorno agli anni '60/'70, rappresentava un fenomeno completamente nuovo per il mondo degli affari. E, anzichè adattare il proprio business allo scenario, con l'andare del tempo le compagnie del settore cercarono di fare esattamente il contrario: cercarono di adattare lo scenario ad un altro modello di business.

Nella visione delle aziende informatiche, infatti, era molto più conveniente che il software venisse considerato alla stregua di un qualunque bene materiale --- come possono esserlo, per esempio, un paio di scarpe. Così come il furto di un paio di scarpe è considerato illegale, si voleva un modello di business basato sul considerare anche la copia di un programma alla tregua di un reato. Ma, per realizzare questo sillogismo, era necessario applicare al software le stesse limitazioni proprie degli oggetti materiali: occorreva modificare il dato di fatto che il software può essere facilmente duplicato senza essere rubato --- mentre un paio di scarpe può essere rubato, ma non duplicato. Allora, era necessario impedire la copia del software, assimilandola ad un furto --- e il mezzo più semplice era quello di costringere gli acquirenti di un programma ad accettare dei contratti e delle licenze, con cui essi si impegnavano a non copiare, non distribuire e non modificare il prodotto utilizzato. Violare queste licenze avrebbe avuto la stessa gravità di un furto, come nel caso di un paio di scarpe. E, ovviamente, a tutto ciò si sarebbe aggiunto il divieto per gli utenti di ottenere il codice sorgente del programma, in modo che fosse per loro impossibile imparare dal software, o modificarlo per adattarlo alle proprie necessità, o creare un prodotto simile. Questo era un ottimo modo per rendere gli utenti maggiormente dipendenti dall'azienda produttrice.

È chiaro che questa condotta andava esattamente contro i principii di collaborazione che, fino a quel momento, avevano permesso l'esistenza della comunità hacker. Andava anche contro i principii del progresso scientifico: diventava impossibile "stare sulle spalle dei giganti" come faceva Newton (a meno che il gigante non facesse parte della propria azienda [RMS92]). E questa condotta delle aziende andava anche contro il progresso tecnologico raggiunto fino ad allora nell'informatica: il software, l'informazione e la possibilità di diffondere e migliorare rapidamente e liberamente il sapere erano stati ridotti alla dignità di... un paio di scarpe. Il pieno utilizzo delle nuove possibilità offerte dalla tecnologia era vietato. Ed anche una azione scontata come duplicare un programma per un amico era diventata illegale, nonostante la semplicità del motivo alla base del gesto: dare una mano a qualcuno.

Il fine di questa condotta delle aziende era, insomma, quello di importare nel campo dell'informatica un modello di mercato basato su beni materiali e non facilmente replicabili --- e che, proprio per questo, è assolutamente inadatto e non preparato per i nuovi orizzonti di progresso e diffusione del sapere svelati dalla tecnologia. E nessun adattamento o miglioramento del sistema di commercio del software era previsto, nè voluto, dalle software house.

4.3. I danni del nuovo scenario

La pressione di questo tipo di business divenne sempre più forte, e sempre più insostenibile con l'avvicinarsi degli anni '80. Le aziende producevano nuovi computer e nuovi programmi, ma la comunità hacker, non potendo accedere al codice sorgente di questi programmi, non riusciva ad inserirsi nello sviluppo di nuove soluzioni. Inoltre, la stessa comunità era stata praticamente decimata (molti dei ricercatori/hacker erano andati a lavorare per aziende non certo legate ai principii di libera condivisione del sapere), e ciò rendeva ancora più difficile una reazione.

Il nuovo corso del mercato del software iniziò ben presto a mostrare i suoi danni sul progresso. La sua vittima più illustre fu probabilmente Unix: era nato per essere un sistema operativo diffuso e portabile, ma la concorrenza spietata di varie aziende (e soprattutto la segretezza del codice sorgente dei loro prodotti) avrebbe portato in breve tempo alla nascita di decine di sistemi operativi derivati da Unix o simili ad esso (detti per questo Unix-like), ma tra loro diversi ed incompatibili. Fra le aziende impegnate nell'ambito Unix si possono ricordare Sun, Silicon Graphics, AT&T, SCO Unix, Digital, IBM, Hewlett Packard... L'incompatibilità tra i loro prodotti non era certo uno sviluppo positivo.

Nenche BSD Unix se la passava troppo bene: come già detto, il lavoro dell'università di Berkeley era venduto con la possibilità di essere liberamente modificato e ridistribuito dagli acquirenti (era il caso, per esempio, del codice per la gestione del protocollo TCP/IP che faceva parte di BSD). Ma assieme al codice degli hacker di Berkeley, vi era anche una parte di codice di proprietà della AT&T (nata dalla scissione di Bell): questo codice sorgente era il residuo della passata collaborazione, e poteva essere fornito agli acquirenti solo dietro l'accettazione di severissime licenze, le quali rendevano impossibile la libera diffusione del codice stesso [KUS99]. Parte degli sforzi del team BSD erano quindi vanificati, ed era sempre più difficile reggere la concorrenza con le altre aziende produttrici di Unix.

Intanto, intorno al 1978, la Intel mise in commercio due nuovi processori: il modelli 8086 e 8088. Si trattava di prodotti dal livello bassissimo in confronto alla tecnologia dell'epoca, e chiaramente destinati ad una fascia di computer dal costo molto ridotto (almeno per allora). I produttori di Unix non presero in considerazione la nuova architettura, giudicandola troppo limitata e priva di futuro. Questo lasciò il campo libero ad una piccola azienda informatica di Redmond, la Microsoft, che commercializzò un semplicissimo sistema operativo per queste piattaforme: il famoso MS-DOS, che era così limitato da non sfruttare completamente neanche le potenzialità dei processori Intel. E, a dispetto della sua arretratezza, il sistema Intel + MS-DOS si diffuse in modo sorprendente, sottovalutato da quasi tutti gli altri produttori di hardware e software. Il mercato dei Persona Computer si legò così ad una famiglia di sistemi operativi soggetti a severissime licenze, praticamente privi della possibilità di accedere ad Internet (che era nata nel 1981 da ARPAnet), ed estranei sia alla cultura hacker [ESR01], che alle tecnologie presenti nel circostante panorama informatico. E gli utenti di questo sistema restarono in una sorta di "mondo a sè" per molto tempo.

4.4. Un futuro di software proprietario?

Riassumendo ciò che è stato detto fin qui, appare chiaro che i programmi prodotti delle aziende venivano sì venduti al pubblico, ma di fatto restavano di proprietà delle aziende: esse infatti, tramite contratti e licenze, potevano imporre all'acquirente obblighi e divieti riguardo ciò che egli poteva o non poteva fare con il software. Come se i programmi venissero dati in gestione, ancichè venduti. Il business dell'informatica si stava spostando dalla vendita di competenza e know-how, alla vendita di contratti di licenza contenenti vincoli e restrizioni.

Inoltre, il codice sorgente di questi programmi era assolutamente segreto, così come erano spesso segreti i formati di comunicazione e memorizzazione dei dati da essi utilizzati. La conoscenza di questi aspetti era considerata una proprietà esclusiva dell'azienda produttrice.

Proprio per tali motivi, questo tipo di software viene indicato come software proprietario. E, da ciò che si poteva vedere, esso sembrava destinato a rappresentare l'unico futuro dell'informatica.