C E N T R I |
I N F O R M A T I C A |
| di Angelo
Raffaele Meo Professore al Politecnico di Torino, Direttore del Centro di Studio per la Elaborazione Numerale dei Segnali del CNR, Torino |
Un programma nazionale
sul software libero
L'autore
di questo articolo da un paio d'anni cerca di promuovere nella comunità
scientifica degli informatici l'idea di un progetto nazionale di ricerca e
sviluppo - un P.N.R. del MURST o un Progetto Finalizzato del CNR - dedicato al software
libero. Del progetto si è parlato in un convegno presieduto dal prof. Giuseppe
Biorci, che si è svolto nella sede romana del CNR il 23 febbraio 1999, alla
presenza del Sottosegretario alla Ricerca Scientifica e Tecnologica Antonino
Cuffaro, del Presidente del CNR Lucio Bianco e di altre personalità del mondo
scientifico.
Questo articolo contiene un breve riassunto
dell'intervento del suo autore a quel convegno, limitatamente a quanto basta per
avere un'idea degli obiettivi e dei contenuti del progetto. Chi volesse saperne
di più si colleghi a
http://majordomo.polito.it/archives/freeware
L'avvento del freeware
Nel 1990 uno studente ventenne dell'università di Helsinki, Linus Torvalds, che si diletta nello scrivere programmi per calcolatore trascurando lo studio, decide di comprarsi un computer nuovo.
Ovviamente, gli elaboratori della classe del mainframe dell'università su cui ha imparato a programmare sono fuori della sua disponibilità, mentre il vecchio Commodore attaccato al televisore, che usa a casa da tempo, non gli consente di andare oltre il programmino giocattolo.
L'ideale
sarebbe installare sul personal computer il tradizionale UNIX, uno dei più
diffusi nel mondo, ma i 5.000 dollari di costo lo rendono inaccessibile. Così,
Linus decide di scrivere da solo il nucleo di un nuovo sistema operativo, un
clone di UNIX, per dotare il personal computer delle funzionalità di base di un
elaboratore di fascia alta.
Nella primavera del 1991 il nucleo del nuovo sistema operativo, versione 0.01, è pronto. Sostituendo la consonante finale del proprio cognome con la "x" di UNIX, Linus battezza il suo prodotto "LINUX", sceglie il pinguino come suo simbolo e fa così una prima scelta felice. Ancora più felice e importante è la seconda scelta, quella di diffondere il nuovo sistema operativo su Internet, mettendolo a disposizione di chiunque fosse interessato a utilizzarlo, senza chiedere altra contropartita se non la collaborazione per migliorarlo ed espanderlo.
Il suo invito è raccolto da centinaia di giovani programmatori in tutto il mondo che, nell'arco di pochi anni, in un telelavoro collettivo guidato da Linus, che si rivela splendido organizzatore, trasformano un interessante prototipo scientifico in un vero e proprio prodotto industriale.
Il sorprendente successo di Linus e dei suoi amici porta a felice e inatteso compimento un lavoro iniziato nel 1984 da Richard Stallman, un ricercatore del laboratorio di Intelligenza Artificiale del Massachusetts Institute of Technology. Finalità di quel lavoro era fare in modo che nessuno dovesse pagare per utilizzare un programma.
|
|
Per perseguire quell'obiettivo Stallman aveva fondato la "Free Software Foundation" e aveva deciso di partire dalla realizzazione di un sistema operativo "UNIX-like", poiché UNIX era nato in ambienti vicini al mondo accademico per cui erano già disponibili molte componenti importanti, assolutamente libere.
Secondo un'antica tradizione del mondo degli hacker - sinonimo di intrusori buoni, senza fini di lucro e senza obiettivi distruttivi - al nuovo sistema operativo che doveva nascere Stallman aveva dato il nome di "GNU", acronimo ricorsivo della proposizione "GNU's Not Unix", come dire "GNU ha le funzionalità dello UNIX della ATT, ma è libero".
Nell'arco del tempo GNU sostituì sistematicamente la grande maggioranza dei programmi proprietari del mondo UNIX - compilatori debugger, editori di testi, archiviatori, gestori di posta - con altrettanti programmi, caratterizzati dalle stesse funzionalità dei primi ma di migliore qualità e assolutamente free.
Mancava soltanto il kernel, ossia il nucleo centrale del sistema operativo che ha il compito di controllare l'esecuzione di tutti gli altri programmi, nascondendo e proteggendo l'hardware dal software. Proprio questo nucleo fu il frutto del lavoro di Linus e dei suoi collaboratori.
Oggi LINUX è operante non soltanto sull'architettura del personal computer Intel, ma anche su altre piattaforme importanti, come McIntosh della Apple e Alpha della Digital. Si calcola che sia stato installato su circa dieci milioni di calcolatori, che sono soltanto il cinque per cento del parco macchine dominato da Microsoft, ma che sono utilizzati dalla popolazione più acculturata del mondo degli informatici.
Quello di Linus Torvalds non è che un esempio di un modello di attività collettiva che vede nel mondo migliaia di protagonisti, da raffinati ricercatori a dilettanti appassionati ma talvolta superficiali, da singoli professionisti a vere e proprie imprese, da privati e piccolissime organizzazioni a grandi istituzioni pubbliche e grandi associazioni di imprese e istituzioni.
È nato così il freeware, software distribuito gratuitamente sulla rete, che chiunque, in qualunque parte del mondo, può acquisire in pochi minuti e fare proprio per eventuali correzioni, modifiche o adattamenti.
La
classificazione dei vari capitoli del freeware appare molto difficile. Il
piano più alto della Torre di Babele rappresentata in fig. 1 contiene il software
di pubblico dominio, distribuito sulla rete in forma sorgente, liberamente
utilizzabile in tutto o in parte anche per la creazione di nuovi prodotti
"proprietari". Subito sotto è allocabile il software coperto
da un particolare schema di protezione inventato da Stallman e chiamato copyleft,
come "diritto di copia di sinistra", in contrapposizione al copyright.
Un programma coperto dal copyleft può essere liberamente utilizzato,
modificato e anche venduto, ma con la condizione che il compratore si impegni a
rendere disponibili ai futuri acquirenti il codice "sorgente" da lui
prodotto dopo l'acquisto.
Il lavoro di classificazione potrebbe continuare indefinitamente, sino ai livelli più bassi, quello del software freeware in senso stretto (non nel senso dato alla parola in questo articolo), che è software gratuito ma non è disponibile in forma sorgente, e quindi non è espansibile, né modificabile, e quello del software "proprietario", che costa e non è mai disponibile in forma sorgente.
Stallman in più occasioni ha ribadito che il software libero fa riferimento a una questione di libertà e non di prezzo, come in free speech e non in free beer. Questa opinione è condivisa dagli entusiasti di questa area e dal sottoscritto. Ai fini di questa libertà è fondamentale la disponibilità del codice "sorgente" o opensource, secondo la terminologia scientifica corrente.
Oggi il software opensource è costituito da alcuni miliardi di istruzioni, per l'equivalente, secondo la valutazione di alcuni studiosi, di oltre cento miliardi di dollari, che sono comunque virtuali poiché i prelievi di software dai siti della rete non sono accompagnati da trasferimenti di valuta.
La
più importante area applicativa del software libero è probabilmente
Internet, che è nata, fuori dalla logica di mercato, come frutto della
collaborazione di ricercatori e programmatori di tutto il mondo. Quasi tutto il software
che consente la gestione degli indirizzi, l'instradamento del traffico,
l'inizializzazione e la modifica delle tabelle dei percorsi che guidano i router,
la navigazione ipertestuale e ipermediale, la posta, l'accesso remoto a
qualunque calcolatore e i mille altri servizi della rete è software libero.
Il software proprietario utilizzato su Internet è nato dopo quello
libero ed è probabilmente il frutto di copiature della logica e forse dello
stesso codice di quello libero.
Internet è il frutto del software libero ed è il motore della sua crescita, il veicolo principale della sua distribuzione. Sul fuoco sacro della Rete si fonde l'intelligenza informatica mondiale, riproducendo l'antico rito africano di quando ogni membro della tribù portava al pentolone il proprio contributo libero per il pasto collettivo.
Un progetto di ricerca e sviluppo
Un progetto di ricerca e sviluppo nel settore del software libero potrebbe essere articolato in varie aree di attività concettualmente sequenziali ma strettamente connesse.
Nella prima area si potrebbe produrre un inventario dell'esistente, insieme ad una prima grossolana valutazione e classificazione.
La seconda area di attività potrebbe avere come obiettivi centrali la valutazione e la certificazione di singoli prodotti o linee di prodotti da parte di strutture pubbliche di ricerca. Un ruolo centrale per questa attività potrà essere assunto, ad esempio, dal Consiglio Nazionale delle Ricerche.
La terza area di lavoro, strettamente interconnessa con la seconda, potrebbe essere finalizzata alla produzione della documentazione e della manualistica dei singoli moduli software certificati.
La
quarta area di attività, la più complessa e interessante dal punto di vista
scientifico, potrebbe essere volta a completare le linee di prodotti
disponibili con moduli nuovi, necessari per completare vere e proprie suite
di sistemi operativi, strumenti e ambienti di sviluppo.
Una quinta area di attività potrebbe essere rivolta alla costruzione di una linea di moduli per la scuola. Giustamente il Forum per la Società dell'Informazione, recentemente istituito dalla Presidenza del Consiglio, ha posto l'accento sul problema dell'alfabetizzazione informatica. Tuttavia, a mio giudizio, l'alfabetizzazione non deve essere interpretata nel solo senso di insegnare l'uso del computer e degli applicativi per l'ufficio, ma deve comprendere l'insegnamento della programmazione e di strumenti non grafici per l'uso del calcolatore. L'industria dell'informazione ha un'unica materia prima, la cultura tecnico-scientifica nel settore, e questa cultura si acquisisce prevalentemente sui banchi di scuola, il più presto possibile.
Una sesta area di attività potrebbe essere dedicata allo sviluppo di programmi per la Pubblica Amministrazione. Ritengo che molte gare della Pubblica Amministrazione siano illegali, perché ritagliate in funzione del prodotto X del produttore Y (spesso esplicitamente indicato nel bando). Ciò comporta spese inutili, il peggioramento della bilancia commerciale e la perdita di opportunità per le poche industrie nazionali del settore.
Infine, una settima area di attività, la più importante di tutte in termini economici, dovrebbe riguardare la collaborazione con i paesi in via di sviluppo. In particolare, un capitolo del bilancio potrebbe essere dedicato alla creazione di una rete per la distribuzione di software libero verso i paesi del terzo mondo e per l'instaurazione di rapporti di collaborazione e formazione con questi.
Software
libero ed economia solidale
Il freeware può essere collocato in questo nuovo quadro di un'economia solidale, indipendentemente dalle motivazioni o dalla vocazione di chi lo produce, innovatore intellettuale o mercante o francescano. Tuttavia, rispetto alle esperienze sopra citate, due novità importanti lo caratterizzano: la sua collocazione in un contesto internazionale e il suo fondamento tecnologico.
Sarebbe molto bello che l'Italia assumesse il ruolo di
guida mondiale del freeware. Oltre a indiscutibili benefici scientifici
ed economici, come il miglioramento della bilancia commerciale e la nascita di
nuove imprese e nuovi modelli di business, il nostro Paese trarrebbe
anche vantaggi di immagine non effimeri e contribuirebbe all'avvento di un nuovo
rinascimento basato sulle tecnologie dell'informazione e soprattutto su una
stretta, reale collaborazione internazionale.![]()