Si dice Software Libero quel software la cui licenza soddisfa i requisiti di libertà stabiliti nella Free Software Definition della Free Software Foundation, mentre si dice Software Open Source quello la cui licenza soddisfa i criteri stabiliti nell'Open Source definition della Open Source Initiative; tra le due definizioni ci sono delle differenze, ma non sostanziali, per cui in pratica la maggior parte delle licenze che soddisfano i requisiti dell'una soddisfano anche quelli dell'altra, tuttavia ciò che distingue nettamente le due definizioni sono il motivo per cui sono state scritte e gli scopi che si prefiggono.
La definizione della FSF è in un contesto nel quale si vuole porre l'attenzione sulla libertà più che sugli aspetti pratici (ad esempio la definizione non richiede esplicitamente la disponibilità del codice sorgente, se non come prerequisito per alcune libertà); l'OSD è nata invece in una fase di coinvolgimento delle realtà aziendali nel mondo del software libero e contiene tutti quei dettagli necessari ad evitare scappatoie legali da parte di aziende in cattiva fede.
I sostenitori della dizione ``Software Libero'' affermano che il termine ``Open Source'' sia da evitare, in quanto pone troppa importanza alla questione pratica della disponibilità dei sorgenti e trascura la questione, fondamentale ma scomoda, della libertà; per contro i sostenitori del termine ``Open Source'' ribattono che il termine ``Free Software'' è troppo ambiguo, a causa del doppio significato della parola free, (in inglese sia ``libero'' che ``gratuito'') sicuramente non gradito a coloro che sviluppano software per vivere.
In questa dispensa i due termini verranno usati più o meno indistintamente, con la prevalenza di ``Open Source'' quando si trattano argomenti ``pratici'' e di ``Software Libero'' altrimenti.
Il software libero ha le sue origini nel mondo universitario americano degli anni 60/70, nel quale erano disponibili computer per i quali le università stesse provvedevano a scrivere il sistema operativo ed i programmi necessari, rendendoli utilizzabili e modificabili da chiunque in forme abbastanza vicine a quelle del pubblico dominio. In questo ambiente è nata una comunità di utenti/sviluppatori2.1 che si fornivano aiuto a vicenda, scambiandosi anche le parti di codice scritte per le proprie esigenze.
All'inizio degli anni 80, tuttavia, molte università cominciarono ad utilizzare sistemi operativi proprietari, distribuiti sotto forma di codice sorgente, ma rilasciati sotto licenze comprendenti clausole di non disclosure, ovvero di non divulgazione del codice, per cui i programmi adattati potevano essere distribuiti solo ad altri licenziatari dello stesso sistema, cosa che limitava abbastanza le possibilità di collaborazione tra le università. In questo contesto si sono situati i due ``avvenimenti'' chiave per la nascita effettiva del software libero come è conosciuto oggi: la cessione del System V da parte dell'AT&T all'università di Berkley e le scelte di Richard Stallman.
L'AT&T, allora monopolista del mercato telefonico, aveva sviluppato lo unix System V da utilizzare all'interno delle proprie centraline, tuttavia a causa della legge americana sui monopoli non poteva commercializzarlo; per motivi tuttora sconosciuti decise di regalarlo all'università di Berkley (California), dando così inizio alla Berkley Software Distribution (BSD) che produrrà grandi quantità di software, tra cui numerosi programmi famosi nell'ambito delle reti.
L'altro ``evento'' decisivo per la nascita del software libero è stato Richard Stallman, o meglio la sua decisione di scrivere il programma EMACS e renderlo liberamente distribuibile e soprattutto quella di dare vita, nel 1984 al progetto GNU per la creazione di un sistema operativo interamente libero.
Una volta definito, il software libero ha cominciato a diffondersi, dapprima nelle università e tra gli appassionati, in seguito anche nel mondo aziedale.
Nel 1991 uno studente finlandese, Linus Torvalds, decise di scrivere un sistema operativo libero simile a Minix2.2: cominciò a scriverne il kernel e rilasciarlo sotto GPL, sfruttando i numerosi programmi del progetto GNU per ottenere un sistema operativo completo.
Questo kernel ha raggiunto un sufficiente grado di stabilità ben prima del kernel originario del sistema GNU, HURD, tuttora in fase di sviluppo, completando finalmente il sistema.
Sebbene con l'arrivo di linux fosse possibile avere un sistema libero completo, questo era composto da vari ``pezzi'' sviluppati e distribuiti in modo autonomo da fonti diverse, la cui installazione, sebbene possibile2.3 era laboriosa e sicuramente non praticabile da persone non esperte.
Per ovviare a questi problemi e grazie alla libertà del sistema, sono nate le ``distribuzioni'' linux, ovvero delle raccolte dei programmi componenti il sistema, generalmente già in forma compilata, parzialmente configurati in modo da integrarsi meglio tra di loro e corredati da tool che semplificano notevolmente installazione, configurazione e gestione del sistema.
Le prime distribuzioni, tra cui le prime versioni di Slackware ed altre ormai non più esistenti, avevano ancora kernel instabili, ed erano dirette ad un pubblico di ``smanettoni'', per cui se rendevano più agevole l'installazione, richiedevano comunque una certa competenza. Man mano che il sistema è diventato piú stabile e si è diffuso sono nate distribuzioni sempre più orientate verso un'utenza meno esperta, come Red Hat, SuSE, Mandrake, favorendo cosìl'ulteriore diffusione.
La maggior parte di queste distribuzioni sono realizzate e commercializzate da aziende che si occupano prevalentemente del loro sviluppo, distribuzione e soprattutto assistenza ed eventualmente fornitura di garanzie, mostrando come sia effettivamente possibile basare una strategia di mercato sul software Open Source. La principale eccezione è costituita da Debian GNU/Linux, una distribuzione interamente gestita da una comunità di volontari che realizzano quel sistema totalmente libero2.4 per realizzare il quale é nato il progetto GNU.
Mentre Linux muoveva i suoi primi passi, permettendo al sistema GNU di guadagnare popolarità, il sistema BSD viveva un momento di crisi per una causa legale tra AT&T e l'Università di Berkley a proposito di alcune parti di codice presenti nel sistema, ma appartenenti ad AT&T e non facenti parte degli accordi che avevano reso libere le altre parti.
Tale causa si è protratta negli anni 1992-1994, nel corso dei quali gli sviluppatori si sono preoccupati di rimuovere e riscrivere le parti rimaste non libere; alla fine è rimasto un sistema libero quasi completo, ma mancante di alcune componenti per riscrivere le quali ci sono state alcune divergenze sulla direzione da intraprendere che hanno portato ad alcuni fork tra i quali maggior successo hanno avuto NetBSD, FreeBSD e OpenBSD.
Tra questi, il primo a nascere è stato NetBSD, all'interno del quale è stata svolta la prima parte dello sviluppo, caratterizzato dall'estrema portabilità (attualmente è disponibile per almeno una sessantina di architetture) e cosìchiamato per riconoscere il ruolo fondamentale avuto nello sviluppo dalla presenza di internet e di tutti gli sviluppatori grazie ad essa raggiunti. Un fork di NetBSD ha dato vita a FreeBSD, disponibile per meno piattaforme, ma pensato per essere più efficiente possibile, oltre che indirizzato verso una maggior semplicità di installazione, come le contemporanee distribuzioni linux. L'altro fork, poi, ha dato vita ad OpenBSD, orientato alla sicurezza al punto da aver effettuato un controllo in tale senso di tutto il codice su cui si basa, e tutt'oggi considerato uno dei sistemi operativi più sicuri in assoluto, grazie anche alla residenza canadese del principale fautore del progetto che ha permesso l'uso di crittografia forte in modo che avrebbe potuto essere fortemente problematico per un programma soggetto alle leggi statunitensi.
Nel 1998 il Software Libero era tecnicamente pronto per essere utilizzato nel mondo aziendale, ma era stato associato ad un concetto di ``non pagamento'' che ne ostacolava la diffusione in tale ambito; per questo motivo è stata scritta la Open Source Definition, nella quale si definiva questo tipo di software in modo mirato alle aziende.
I due casi più famosi di collaborazione tra aziende e mondo open source sono stati quelli di Netscape - Mozilla e Sun - OpenOffice.org: subito dopo la nascita della definizione di Open Source la Netscape si trovava in posizione di difficoltà mentre il suo browser stava perdendo sempre più quote rispetto ad Internet Explorer, anche a causa di manovre ai limiti della legalità da parte della concorrenza. Piuttosto che rischiarne l'oblio, con il rischio di conseguenze negative anche sugli altri prodotti da loro sviluppati, si è deciso di rilasciare il codice di Navigator sotto una licenza libera, sostenendo economicamente il gruppo di sviluppo, ma ricevendo anche collaborazioni da parte della comunità, sotto il nome di Mozilla.
Per vari motivi, il progetto Mozilla ha impiegato un certo tempo prima di raggiungere la maturità, trovandosi a dover riscrivere la maggioranza del codice, ma è riuscito a produrre uno dei browser migliori dal punto di vista dell'attinenza agli standard e della portabilità attualmente disponibili. Dalla versione 6 in poi, Netscape Navigator, rilasciato come programma proprietario dall'azienda che si è riservata il nome e tale diritto, è basato quasi interamente su Mozilla, al quale vengono aggiunte prevalentemente alcune componenti per l'integrazione con AOL, alla quale appartiene ora Netscape.
Più tardi, una situazione simile si è ripresentata con il progetto libero OpenOffice.org, sviluppato con il supporto della Sun e da loro rilasciato in parallelo, con aggiunte proprietarie, sotto il nome di Star Office.
Ormai si può dire che il software libero ha raggiunto un buon grado di maturità, visto che sono disponibili alcuni sistemi operativi liberi ben funzionanti (GNU/Linux, FreeBSD, OpenBSD e NetBSD) e programmi per la maggior parte delle esigenze.
Il software libero sta entrando nel mondo aziendale, innanzitutto per quello che riguarda il lato server, dove costituisce già un serio concorrente per sistemi basati su unix proprietari, anche con soluzioni basate su Linux proposte da giganti dell'informatica come IBM. Negli ultimi tempi, inoltre, si è visto anche un notevole sviluppo sul ramo desktop.
I numerosi vantaggi sia dal punto di vista della sicurezza che da quello economico hanno spinto numerose nazioni in tutto il mondo a promuovere l'utilizzo di software libero nella pubblica amministrazione; in Italia è stata presentata una proposta di legge in tale senso e sono sempre più numerose le amministrazioni locali che hanno deciso di favorire soluzioni di questo tipo.
Il prossimo passaggio nella diffusione del software libero sembrerebbe essere la sua diffusione tra gli utenti finali, sia sui computer usati come client all'interno di aziende, che nelle case di coloro che, pur dovendo o volendo usare un computer, non sono interessati alla sua conoscenza piu' o meno tecnica.
Per questi casi, attualmente si può dire che i programmi più importanti esistano e siano sufficientemente funzionanti, tuttavia l'introduzione di sistemi totalmente liberi in tali ambiti incontra ancora alcune obiezioni, più o meno fondate.
Un grosso problema è la libertà di scelta, uno dei grossi vantaggi del software open source, che però diventa un ostacolo quando presentata a persone che non hanno né le competenze né l'interesse a compiere una scelta, ma sono ben disposti ad accettare passivamente ciò che la maggioranza usa.
Un problema meno pressante, ma che viene spesso citato, invece è la presunta difficoltà di installazione e configurazione dei principali sistemi liberi: oggi come oggi esistono distribuzioni Linux facili come le principali alternative proprietarie, se non di più, e coloro che non sono in grado di farlo sono coloro che si sarebbero comunque rivolti ad altri con qualunque sistema. Al più si potrebbe lamentare una scarsità di supporto commerciale per gli utenti casalinghi, compensata però almeno in parte dalla disponibilità di una buona parte degli altri utenti di software libero.
La sfida per una diffusione in tale senso comunque è attualmente aperta, e sta vedendo gli sforzi di un numero sempre maggiore di persone.