Il software libero (dall'inglese free software o libre software) è un software distribuito sotto i termini di una licenza di software libero, che ne concede lo studio, l'utilizzo, la modifica e la redistribuzione.
Chi usa il software libero ha il controllo delle proprie elaborazioni informatiche.
Storia
L'idea di software libero nasce agli inizi degli anni ottanta, quando lo sviluppo del software cominciò a passare di mano dalle università alle aziende (software proprietario), ponendo un pesante freno alla collaborazione che caratterizzava il lavoro di gran parte dei programmatori e dei sistemisti dell'epoca, soprattutto con i patti di non divulgazione che le aziende facevano firmare ai programmatori che assumevano.
Dal 1950 fino ai primi anni del 1970, era tipico per gli utenti di computer utilizzare software liberi associati a software gratuiti. Quindi il software "commerciale" esisteva da sempre, ma i costi elevati dell'hardware facevano sì che il business delle aziende non fosse concentrato sul software, che era considerato una parte naturale del prodotto, e i cui codici sorgenti erano in genere pubblici. Per esempio, venivano formate organizzazioni di utenti e fornitori per facilitare lo scambio di software. Inoltre, poiché i software erano spesso scritti in un linguaggio ad alto livello, il codice sorgente veniva distribuito in riviste di computer (come Creative Computing, Softside, Computer, Byte, ecc) e libri, come il bestseller BASIC Computer Games.
Dal 1970 la situazione cambiò: il software diventava sempre più complesso e difficile da realizzare e le aziende iniziarono a non distribuire i codici sorgenti e ad obbligare i propri dipendenti a non rivelare nulla per non avvantaggiare la concorrenza; inoltre con il crollo dei costi dell'hardware, lo sviluppo commerciale del software divenne un business notevole ed il codice sorgente divenne sempre più un investimento prezioso che poteva far acquisire una fetta di tale mercato in rapida crescita, da un lato, e dall'altro legare i propri utenti al proprio software mantenendo il segreto sui metodi utilizzati per lo sviluppo di sistemi e applicazioni.
L'industria del software iniziò così ad utilizzare misure tecniche (come ad esempio la distribuzione di copie di programmi per computer solo in binario) per impedire agli utenti di computer di essere in grado di studiare e adattare il software come meglio credevano.
Negli anni '80, si verificarono due situazioni rilevanti che contribuirono all'ideazione e alla creazione del software libero: L'approvazione dell'atto normativo conosciuto come Bayh-Dole Act, in America, mise in discussione l'idea classica di "accademia", dove le idee circolano liberamente, in quanto si tratta di un atto normativo che permette di privatizzare e proteggere con proprietà intellettuale il risultato di ricerche svolte in ambito accademico; Il frazionamento della società AT&T Corporation (che negli Stati Uniti d'America era l'equivalente dell'italiana SIP) che, fino a quel punto, era quasi l'unica società fornitrice di servizi di telefonia in USA e, dunque, detenendo un certo monopolio sul settore, era sottoposta ai controlli dell'unità antitrust statunitense, la quale impose diversi obblighi per evitare il monopolio stesso. Tra questi, l'obbligo di non fornire servizi diversi da quelli di telefonia. La società aveva sviluppato un ottimo sistema operativo "Unix" ma, non potendolo commercializzare, lo mise a disposizione delle università e dei loro laboratori. Unix, quindi, era il software libero utilizzato nelle università americane fino al momento della divisione avvenuta nel 1984. Con il frazionamento di AT&T, infatti, decaddero i divieti imposti dall'antitrust, pertanto la società ricominciò a vendere Unix.
Così, nel 1980, viene emessa la US Software Copyright Act, che introduce la tutela del diritto d'autore anche per il software, inerente a copia, modifica e distribuzione. In questi anni, infatti, erano importanti tre facoltà esclusive: il diritto di riprodurre copie del programma, il diritto di apportare modifiche ed il diritto di distribuire copie del programma. Arriva, quindi, il software proprietario, in quanto vennero applicati questi divieti con il diritto d'autore. Questa scelta è stata favorita dalla lobby dei produttori hardware, in primo luogo dalla IBM. In questo modo le aziende cominciarono ad utilizzare la legge sul diritto d'autore per impedire ai concorrenti di leggere e modificare i loro prodotti, assicurandosi il controllo dei propri clienti che, senza più poter vedere e modificare il codice sorgente del software, non potevano più adattarlo alle loro esigenze, ma dovevano chiedere alle aziende di farlo per loro.
Nel 1981 si stabilisce un precedente riguardo al diritto d'autore vigente sul software, ciò in seguito all'esito della sentenza Diamond v. Diehr, che riteneva che la presenza di un elemento software non costituisse un motivo per rendere inammissibile un brevetto per macchina o processo altrimenti idoneo ai brevetti.
Nel 1983 Richard Stallman, uno degli autori originali del popolare programma Emacs e membro di lunga data della comunità hacker presso il laboratorio di intelligenza artificiale del Massachusetts Institute of Technology (MIT), fondò il progetto GNU (GNU's Not Unix) con l'intenzione di creare GNU, un sistema operativo completamente libero.
Stallman aveva bisogno di uno strumento che potesse tutelare l'utente alla modifica del codice sorgente del software. Questo perché il diritto di autore si applica di default, anche senza azioni da parte dell'autore stesso che dal momento della nascita del software è l'unico ad avere diritto di modifica. Lo strumento giuridico più adatto a questo scopo si rivela essere la licenza di software libero. Nel 1989, Richard Stallman, ideò anche la GNU General Public License (GNU-GPL), una licenza Copyleft, che consiste nel prevedere la modifica, incentivando di conseguenza la condivisione del codice sorgente, aggiungendo però l'obbligo verso coloro che modificano di farlo con la stessa licenza del software di partenza, ovvero deve essere anch'essa Copyleft (potrà quindi essere utilizzata, distribuita e talvolta modificata liberamente, seppur dovendo seguire alcune condizioni necessarie), continuando quindi a garantire ai suoi utenti le cosiddette quattro libertà (libertà di eseguire il programma, di studiare come esso funzioni e di adattarlo alle proprie necessità, di ridistribuire copie per aiutare il prossimo e di migliorare il programma in modo tale che tutta la comunità ne tragga beneficio).
Nella sua dichiarazione iniziale del progetto e del suo scopo, Stallman ha espressamente citato, come motivazione, la sua opposizione alla richiesta di accettare i vari accordi di non divulgazione e le licenze restrittive dei software che vietano la libera condivisione di software-sviluppo potenzialmente redditizio, un divieto che è direttamente in contrasto con la tradizionale etica hacker. Infatti egli crea la definizione di software libero definendolo attraverso le "quattro libertà":
L’accesso al codice sorgente diventa prerequisito del concetto di software libero.
Lo sviluppo dei software per il sistema operativo GNU è iniziata nel gennaio 1984, e la Free Software Foundation (FSF) è stata fondata nel mese di ottobre 1985. Ha sviluppato una definizione di software libero e il concetto di "copyleft", progettata per garantire la libertà software per tutti.
Il kernel Linux, iniziato da Linus Torvalds, è stato rilasciato come codice sorgente liberamente modificabile nel 1991. La prima licenza è una licenza di software proprietario. Tuttavia, con la versione 0.12, nel febbraio 1992, pubblicarono il progetto sotto la GNU General Public License. Essendo molto simile a Unix, kernel di Torvalds ha attirato l'attenzione di programmatori volontari.
Nel 1997 l'European patent convention ha riconosciuto la validità dei brevetti per software, quando questi implicano un'attività inventiva e sono finalizzati ad applicazioni industriali. Tuttavia, l'articolo 52, al paragrafo 2, punto c, ai sensi del paragrafo 1, nega la brevettabilità dei programmi per calcolatori considerati "in quanto tali" (paragrafo 3). Il problema risiede, dunque, nella distinzione tra "software in quanto tale" e "invenzione di software".
Nel 1998 è stata inoltre creata un’organizzazione, l’Open Source Initiative, che fornisce licenze libere.
Dopo pochi anni era già chiaro a molti che il software libero fosse un modello importante e che si stava pian piano imponendo. L’interesse per la licenza di software libero si è di conseguenza esteso ad altri ambiti tra i quali quello di altre opere creative: libri, film, fotografie, musica, siti Internet ecc. Le più importanti sono sicuramente le licenze Creative Commons, create nei primi anni 2000.
L'articolo 27 del TRIPS Agreement, contiene elementi che renderebbero lecito il brevetto del software (Software patents under TRIPs Agreement); tuttavia, nel 2002, la Commissione fece una proposta di direttiva sulle Computer Implemented Inventions la quale, dopo una lunga discussione, venne bocciata.
Descrizione
Il software libero rispetta la libertà degli utenti. Ciò significa che gli utenti hanno la libertà di eseguire, copiare, studiare, distribuire, migliorare, modificare il software. Per capire tale concetto di libertà si dovrebbe pensare al concerto di “libertà di parola”: una libertà che tutti hanno il diritto di avere. La parola «libero», tuttavia, non implica la possibilità di utilizzare tale software in maniera indiscriminata: il software libero è comunque soggetto ad una licenza d'uso, a differenza ad esempio del software di pubblico dominio.
Rispetto al software proprietario, il software libero si basa su un diverso modello di licenza, su un diverso modello di sviluppo e su un diverso modello economico. Esso si contrappone quindi al software proprietario ed è differente dalla concezione open source, incentrandosi sulla libertà dell'utente e non solo sull'apertura del codice sorgente, che è comunque un pre-requisito del software libero.
Rispetto al software proprietario, la licenza d'uso del software libero permette le quattro libertà, ponendo in genere i seguenti vincoli: gli autori precedenti del software devono essere menzionati anche nelle versioni modificate, lasciando intatto il loro copyright; in seguito ad una modifica, non è possibile applicare una licenza d'uso incompatibile con la licenza originaria o che vada contro le norme della licenza stessa. Per esempio chiunque può riemettere del software pubblicato sotto LGPL usando la licenza GPL (tale operazione è anche chiamata upgrade della licenza), mentre non è possibile fare il contrario (naturalmente se non si è il detentore unico del copyright); normalmente, nella licenza, vi è una clausola che sancisce la non usabilità del software se non si rispetta la licenza d'uso o se una o più norme della stessa licenza non sono valide per termini di legge; quando si distribuisce un codice binario occorre o distribuire insieme anche i sorgenti o garantire per iscritto la possibilità a tutti gli utenti di venirne in possesso dietro richiesta ed al solo costo del supporto
Denominazione