Breve introduzione all'Open Source ed al software libero

Il pinguino TUX Definizione
Perché usarlo al posto del software commerciale
La filosofia Open Source
I formati aperti
Software libero e diritto d'autore
In pratica, come avvicinarsi all'Open Source
Approfondimenti sul web
Bibliografia

Definizione

Il software Open Source è quella categoria di programmi per computer per cui è prevista la distribuzione del "codice sorgente", ovvero la "ricetta" con cui il programma è stato creato. Questo non avviene normalmente nei programmi di uso comune, genericamente definiti "commerciali" o "proprietari", su cui il produttore preferisce mantenere il segreto aziendale.

Con free software (software libero, non necessariamente gratuito) si intende quel software verso cui l'utilizzatore ha alcune libertà che contrastano fortemente con le limitazioni tipiche imposte dalle licenze d'uso del software commerciale (detto anche non libero o proprietario). Per sancire questi diritti il software libero è soggetto a speciali licenze, delle quali una delle più utilizzate è la General Public Licence o GPL, il cui testo è disponibile sul sito del progetto GNU. Le libertà concesse sono essenzialmente:

  1. La libertà di utilizzare il programma per qualsiasi scopo, senza alcun vincolo.
  2. La possibilità di studiare il funzionamento del programma, in virtù della libertà di accesso al codice sorgente, ovvero il codice con cui è stato scritto il programma.
  3. La libertà di copiare e distribuire legalmente e illimitatamente la copia integrale del programma, a condizione di consentire al destinatario di ricevere anche la copia del codice sorgente.
  4. La possibilità di modificare a piacere il programma e ridistribuirlo, a condizione che siano indicati gli estremi e l'autore della modifica, nonché sia mantenuta su di esso la licenza free.

In particolare il secondo punto (accesso al codice sorgente) è di importanza fondamentale e rende questo software necessariamente Open Source. È grazie a questa libertà che chiunque lo desideri (e abbia ovviamente le capacità) può contribuire allo sviluppo del software libero, correggendolo e migliorandolo.

È importante precisare che un software Open Source non è necessariamente anche libero. Una licenza potrebbe tranquillamente permettere la visibilità del codice sorgente ma non consentirne la copia, la diffusione o la compilazione da parte di terzi.

La licenza GPL è solamente una delle molte licenze generali preparate per favorire gli utenti che desiderano sviluppare software libero. Altre licenze non commerciali sono la licenza BSD sviluppata dall'università di Berkeley, la licenza del Massachusetts Institute of Technology, la licenza Debian, la OSL3 e molte altre. La GPL è la più nota ed utilizzata, ed è quella che garantisce al meglio la continuità di trasmissione degli stessi diritti da un utente all'altro.

Perché usare software Open Source al posto del software commerciale

Sicurezza

Con l'aumentare della complessità del software, complessità rappresentata dalla sempre maggiore lunghezza del codice sorgente dei programmi, aumenta in ragione quadratica la difficoltà di scovare bug e malfunzionamenti. Nel caso di software commerciale il codice può essere controllato solamente dai programmatori autorizzati, che sebbene stipendiati e dotati di risorse economiche, non hanno nulla in più di ciò che occorre, il cervello.

Nel software libero chiunque, avendo la facoltà di studiare il codice sorgente, può individuare la presenza di bug, instabilità o possibili insidie per la privacy presenti in un programma. Il software libero è sottoposto quindi ad una continua verifica e revisione da parte di innumerevoli utenti neutrali, da cui ne deriva maggiore stabilità e sicurezza. Inoltre, essendo scritto da utenti è "dalla parte dell'utente", ovvero non ha interesse ad includere fastidiosi elementi spyware o di marketing.

Una delle ragioni delle major del software è che la trasparenza espone il software al rischio di essere più facilmente attaccabile e sostengono il concetto della trasparenza attraverso la segretezza (Security through obscurity). All'analisi dei fatti questo paradigma si rivela infondato, come nel caso di diversi sistemi di crittografia utilizzati nella telefonia cellulare, dove si è scelto di tenere segreto l'algoritmo di calcolo piuttosto che utilizzare tecniche più sicure. Puntualmente l'algoritmo è stato scoperto e violato.

Si può esemplificare il concetto con con la metafora della serratura. Se il meccanismo di una serratura è intrinsecamente robusto, anche se un malintenzionato la apre e la studia, molto difficilmente troverà un modo di forzarla. Se si fabbricasse una serratura secondo il modello Open Source, la serratura verrebbe venduta con i meccanismi visibili ed accessibili e chiunque potrebbe modificarla per renderla più sicura, poi ridistribuirla a sua volta.

Per i governi nazionali l'adozione del software libero offre contemporaneamente il vantaggio dell'indipendenza dell'approvvigionamento tecnologico da nazioni estere e la possibilità di escludere (grazie alla visibilità del codice) la presenza di codici che possano comportare rischi di spionaggio economico o militare

Accessibilità

Leggendo la licenza d'uso di un software commerciale ci si può stupire delle limitazioni all'uso e le clausole liberatorie di responsabilità da parte del produttore. In sostanza un produttore potrebbe in qualunque momento unilateralmente revocare la concessione all'uso del programma. Se inoltre i dati prodotti dall'applicazione sono salvati da un proprietario in un formato di file creato appositamente dall'azienda e non con specifiche di pubblico dominio (formato proprietario), può diventare molto difficile adattarli ad una nuova applicazione futura, o migrare ad un programma più economico.

Quando il produttore di un software commerciale decide di dismetterne lo sviluppo e l'assistenza, l'utente è indotto ad acquistarne una nuova versione, anche se quella precedente lo soddisfaceva ampiamente in tutte le necessità. Il free software, in quanto liberamente ridistribuibile e modificabile ha spesso una vita molto lunga, e comunque, essendo le specifiche di pubblico dominio, è possibile riprenderne lo sviluppo in qualunque momento.

Se in particolare un ente pubblico crea e diffonde al pubblico documenti creati con un formato proprietario induce i cittadini ad utilizzare quel software. Questa forma di pubblicità gratuita è certamente contrario al ruolo 'super partes' che il governo dovrebbe avere. Per questo motivo diversi governi ed enti locali hanno adottato o hanno in programma di adottare software libero.

Costo

È oggetto di accesi dibattiti la questione se il software libero, ed in particolare GNU/Linux, comporta un risparmio economico. Il problema è complicato dal fatto che la risposta varia abbondantemente in funzione della tipologia ed importanza dell'utilizzatore (privato cittadino, piccola azienda, grande azienda, ente pubblico ecc).

La stima del costo complessivo dovuto all'adozione di una tecnologia deve tenere conto di molti fattori che vanno oltre il costo di acquisto del software, che nel caso del software libero possono essere anche nulli. Tra le voci di costo da considerare si hanno i costi per formare il personale all'uso dei nuovi sistemi, i costi per l'assistenza tecnica, i costi per l'aggiornamento a nuove versioni, patch e correzioni di bug.

Un fattore di risparmio si ha per il fatto che i programmi Open Source sono spesso meno avidi di risorse hardware e pertanto favoriscono il riutilizzo di macchine altrimenti ritenute obsolete.

Attualmente i maggiori risparmi vengono dichiarati da aziende o istituzioni che convertono decine o centinaia di postazioni di lavoro, in quanto i costi fissi iniziali di formazione vengono maggiormente diluiti e rendono più significativo il risparmio in licenze ed aggiornamenti periodici (Articolo PI).

È molto importante sottolineare che al di la di pure considerazioni di gestione economica, il software libero offre vantaggi a lungo termine per l'economia di una nazione. Se il software proprietario tende a finanziare grandi monopolisti esteri, nel settore del software libero possono operare molte aziende medio-piccole italiane, promuovendo l'economia nazionale.

La filosofia Open Source

Il principio di condividere liberamente la conoscenza secondo il modello Open Source si estende ben oltre il software per computer, potendosi applicare anche ad altri prodotti intellettuali quali testi, libri, film, ricette ecc.

L'esempio di maggiore successo è il progetto di creare un'enciclopedia libera e multilingue basata sull'apporto volontario di innumerevoli utenti: Wikipedia.

La distribuzione libera di conoscenza non è e non deve essere in contrasto con le norme sul diritto d'autore. Secondo le normative internazionali qualunque opera d'ingegno creativo è automaticamente di proprietà del suo autore. Se l'autore di un'opera decide di consentirne la distribuzione libera deve esplicitamente dichiarare questa intenzione per mezzo di una apposita dichiarazione (la famosa licenza). Per agevolare questa possibilità sono state sviluppate diverse licenze generiche, tra cui la GFDL e le Creative commons.

I formati aperti

Un argomento legato al software libero è quello dei formati aperti o formati liberi definiti come specifiche di memorizzazione di informazioni digitali le cui caratteristiche tecniche sono pubblicamente disponibili e l'uso è libero e gratuito.

Formati largamente utilizzati quali DOC, DOCX, XLS, DWG e molti altri non hanno i requisiti descritti, ma anzi la definizione tecnica è mantenuta riservata dall'ente proprietario che le ha elaborate e l'uso è limitato ai soli software della stessa azienda, oppure concesso a condizioni limitate o onerose. Tali formati sono definiti formati proprietari.

Le seguenti sono alcune argomentazioni sul perché i formati aperti siano da preferire in generale:

  • L'utilizzo di un formato proprietario può essere unilateralmente revocato dal proprietario, oppure questo può decidere di non includere più questo formato nelle nuove versioni del software. Ciò comporta seri problemi per i dati destinati ad essere conservati nel tempo. Si pensi ad archivi statali, archivi fotografici, video e musicali, dati fiscali, musei, ecc. Le specifiche dei formati aperti sono invece pubbliche, pertanto in caso di necessità possono essere implementate in un software futuro. Gli informatici "anziani" ricorderanno l'estinzione del formato proprietario di Wordstar e la necessità di conversione ai nuovi formati. Non c'è motivo per cui la cosa non possa ripetersi in futuro.
  • Come nel caso del software libero, anche nel caso dei formati aperti la disponibilità pubblica delle specifiche permette di sincerarsi dell'assenza di problemi e rischi, quali l'invio di informazioni riservate (testi cancellati dal documento ma rimasti in memoria) e virus.
  • La libertà di utilizzo consente l'adozione del formato, anche come opzione, da parte di differenti software, sia commerciali che Open Source, offrendo la possibilità per l'utente di migrare da un fornitore ad un altro senza vincoli. Questo è il principale motivo per cui i grandi produttori software non adottano volentieri i formati liberi nei loro prodotti.
  • Se si invia un file in formato proprietario ad un corrispondente si costringe questo ad utilizzare lo stesso software commerciale per poterlo leggere. Ciò tende a favorire i monopoli di fatto (come è avvenuto per MS Office) e costringe ad un esborso economico evitabile molti utenti (mentre altri sceglieranno la via della copia illecita..., ancor più deleteria per il mercato). Se poi è un ente pubblico a comunicare con i cittadini mediante formati proprietari, si ha una indebita ingerenza pubblica sul libero mercato a danno degli stessi cittadini).

Il successo di Internet è in buona parte dovuto al fatto che il suo funzionamento si basa su formati aperti (wikipedia).

Un formato libero che aspira a diventare lo standard futuro per i documenti di ufficio in sostituzione dei formati proprietari di MS Office è l'OpenDocument. È già utilizzato da OpenOffice.org e da MS Office attraverso un convertitore da installare a parte, oltre che da altri software.

Si noti che alcuni formati, sebbene abbiano specifiche pubbliche, non sono completamente liberi in quanto l'utilizzo è soggetto a particolari limitazioni. Un esempio è il PDF.

Un suggerimento: invece di inviare file in formato DOC, si ovviano i problemi sopra descritti inviando al suo posto una copia in formato RTF che anche se non libero, ha comunque specifiche note pubblicamente. Da MS Word è sufficiente selezionare "salva con nome..." e quindi in "Formato file" selezionare "Rich Text Format". Il destinatario non avrà così problemi di compatibilità tra differenti versioni di MS Office o altri prodotti e la propria immagine come mittente ne guadagnerà.

Software libero e diritto d'autore

A volte viene utilizzata la definizione "pubblico dominio" associata al software libero o ad altre opere intellettuali diffuse secondo l'ideale "open", ed alcuni utenti percepiscono la distribuzione in forma libera come una sorta di rinuncia alla "proprietà" dell'opera ed a tutti i diritti su di essa da parte dell'autore.
Entrambi i concetti espressi sono frutto di un fraintendimento della realtà. Fortunatamente, in quanto se tali condizioni si verificassero realmente si avrebbe quasi certamente l'effetto opposto a quello sperato. Vediamo.

La normativa internazionale sul diritto d'autore si basa sulla Convenzione di Berna per la protezione delle opere letterarie e artistiche recepita dalla legge italiana n. 399 del 20 giugno 1978. La normativa italiana di riferimento è la legge n. 633 del 22 aprile 1941 intitolata "Protezione del diritto d'autore e di altri diritti concessi al suo esercizio", che prevede l'attribuzione automatica della proprietà intellettuale di una qualsiasi opera scritta al suo autore o autori (fermo restando il problema pratico di dimostrarne la paternità e la data di creazione...). La legge italiana divide i diritti di sfruttamento economici dai diritti morali; mentre i primi possono essere ceduti a terzi per mezzo di una esplicita dichiarazione, i diritti morali, ovvero di riconoscimento dell'autore, di garanzia di integrità dell'opera, di non pubblicazione e di ritiro, sono inalienabili (art. 22 L.633/41).

Nel caso pratico del software libero (o altro materiale distribuito secondo questo sistema) la proprietà intellettuale dell'opera rimane all'autore, il quale cede i diritti di copia, diffusione, modifica, sfruttamento economico ecc. Un utente che successivamente modifica e diffonde la versione modificata diventa coautore con l'autore precedente per quanto riguarda la nuova versione. Un terzo che modifica quest'ultima versione diventa a sua volta coautore con i primi due limitatamente alla terza versione e così via. In questo senso l'autore originale ha "perso il controllo" dell'opera: i suoi diritti, compresi il ritiro dal mercato ed il cambio delle condizioni di licenza, possono essere esercitati solamente in accordo con tutti gli altri coautori della singola versione considerata, cosa pressoché impossibile nella pratica.

Il software libero non è di pubblico dominio. In questa definizione infatti rientra solo il materiale per cui non è applicabile la legge sul diritto d'autore per scadenza dei termini di tutela o per esclusione esplicita. In particolare sono di pubblico dominio opere il cui autore è morto da almeno 70 anni (art. 25 L.633/41) ed il materiale ufficiale pubblicato da enti pubblici e governi (art. 5 L.633/41).

In conclusione, la tutela del diritto d'autore, almeno per come è strutturata nell'ordinamento internazionale attuale, non è in contrasto con la libera circolazione delle informazioni, ma anzi ne è imprescindibile requisito.
Se non esistesse l'attribuzione automatica e gratuita del riconoscimento dell'autore e la tutela dei suoi diritti, assisteremmo a mio avviso a ingiusti furti di opere ai danni di singoli autori che, in particolare se esordienti, si vedrebbero gravemente penalizzati ai danni di personaggi senza scrupoli maggiormente dotati di risorse o semplicemente più "furbi" che si attribuirebbero la paternità. Non è neppure possibile pensare ad un mondo di sola informazione in pubblico dominio: senza la prospettiva di un ritorno economico e/o di immagine assicurato dalla legge (anche il riconoscimento dell'autore è tutelato dalla legge), la produzione di cultura sarebbe altrettanto vasta e variegata oppure molti autori dovrebbero dedicare il loro tempo ad altre attività per vivere?
È in virtù della legislazione sul diritto d'autore che è possibile utilizzare le licenze precedentemente citate, quali la GPL, le Creative commons ecc., assicurando che il materiale sia effettivamente "libero" secondo le intenzioni dell'autore. In assenza di essa non si avrebbe l'utopica libertà dell'informazione causa del fraintendimento citato all'inizio, ma una sorta di "far west", situazione che taluni vorrebbero instaurare attraverso i famigerati brevetti software.

In pratica, come avvicinarsi all'Open Source

L'approccio al software Open Source non è necessariamente drastico, ma solitamente è effettuato per gradi, impiegando dapprima programmi poco invasivi, semplici da installare e d usare, e che si affiancano agli strumenti tradizionali. Tipicamente il primo software libero con cui si ha a che fare è il browser Mozilla Firefox, per navigare in internet. Si installa in meno di un minuto e si affianca al browser preinstallato in MS Windows, MS Explorer, senza interferire con esso e lasciando la possibilità all'utente di scegliere di volta in volta quale usare.

In momenti successivi si possono adottare altri software via via più impegnativi da installare ed usare, fino al limite ad avere un sistema completamente Open Source basato su Linux.

Bibliografia

  • M. Berra e A. R. Meo, 2006 - Libertà di software, hardware e conoscenza
  • L. Torvalds e D. Diamonds, 2001 - Rivoluzionario per caso, come ho creato Linux (solo per divertirmi)
  • Francesco Grasso, AIPA, 2002 - Il Software Open Source (OSS) scenario e prospettive (Scarica PDF)

Ver. 2.1 - gennaio 2008