Permesso
d'autore: idealismo pragmatico
di Richard Stallman
Ogni decisione presa ha origine nei propri valori e obiettivi. Questi possono
essere tanti e differenti; la fama, il profitto, l'amore, la sopravvivenza,
il divertimento e la libertà sono alcuni degli obiettivi che una
brava persona può avere. Quando però l'obiettivo è
aiutare tanto gli altri quanto sé stessi, si è soliti parlare
di idealismo.
Il mio lavoro nel campo del software libero è motivato da un obiettivo
idealistico: diffondere libertà e cooperazione. Voglio stimolare
la diffusione del software libero, rimpiazzando i programmi proprietari
che proibiscono la cooperazione, in modo da rendere la nostra società
migliore.
Questo è il motivo principale per cui la Licenza Generica Pubblica
(GPL) GNU è stata scritta in un certo modo - come un permesso d'autore.
Tutto il codice aggiunto ad un programma coperto dalla GPL deve essere
software libero, anche nel caso in cui venga inserito in un file a parte.
Rendo disponibile il mio codice affinché venga usato nel software
libero, e non nel software proprietario, con lo scopo di incoraggiare
chi programma a fare altrettanto. Ho capito che, poiché gli sviluppatori
di software proprietario usano il diritto d'autore per impedirci di condividere
il software, noi che cooperiamo possiamo usare il diritto d'autore per
favorire coloro che come noi cooperano: diamo loro il permesso di usare
il nostro codice.
Non tutti coloro che usano la GNU GPL hanno questo obiettivo. Molti anni
fa ad un mio amico venne chiesto di ri-rilasciare un programma coperto
da permesso d'autore secondo termini diversi dal permesso d'autore. Lui
rispose all'incirca in questo modo:
A volte mi occupo di software libero, altre di software proprietario, ma
quando si tratta di software proprietario mi aspetto di essere pagato
Era disposto a condividere il suo lavoro con una comunità che condivide
il software, ma non vedeva alcuna ragione per dare il suo programma ad
un'industria che ne avrebbe fatto un prodotto off-limits per la nostra
comunità. Il suo obiettivo era differente dal mio, ma decise comunque
che la GNU GPL era utile anche per il suoi scopi.
Se si vuole realizzare qualcosa al mondo, l'idealismo non è abbastanza;
bisogna scegliere un sistema per raggiungere lo scopo. In altre parole,
bisogna essere "pragmatici". La GPL è pragmatica? Guardiamo ai
suoi risultati.
Si consideri lo GNU C++. Perché abbiamo un compilatore C++ libero?
Solo perché la GNU GPL afferma che doveva essere così. GNU
C++ è stato sviluppato da un consorzio di industrie, MCC, partendo
dal compilatore GNU C. Normalmente, MCC rende i suoi prodotti quanto più
proprietari possibile. Ma questa volta hanno rilasciato il front end C++
come software libero, dato che la GNU GPL affermava che quello fosse l'unico
modo per rilasciarlo. Il front end C++ include molti nuovi file, ma poiché
devono essere collegati con GCC, questi devono essere sotto licenza GPL.
Il beneficio per la nostra comunità è evidente.
Si consideri ancora lo GNU Objective C. Inizialmente NeXT voleva farne
un front end proprietario; propose infatti di rilasciarlo come file .o
e lasciare che gli utenti potessero collegarli con il resto di GCC, pensando
in questo modo di aggirare i requisiti della GPL. I nostri avvocati, però,
misero in luce che questo escamotage non avrebbe eluso i requisiti della
GPL e che quindi non era consentito. E perciò il front end Objective
C diventò software libero.
Questi esempi sono accaduti anni fa, ma la GNU GPL continua a darci sempre
più software libero.
Molte delle librerie GNU sono coperte dalla Licenza Pubblica Generica GNU
per le Librerie, ma non è così per tutte. Ad esempio, la
libreria Readline, che implementa l'editing a linea di comando, è
coperta dalla GNU GPL ordinaria. Un mese fa, sentii di un programma non
libero che faceva uso di Readline e dissi allo sviluppatore che quest'uso
della libreria non era consentito. Questi avrebbe potuto eliminare dal
suo programma le funzionalità relative all'editing a linea di comando,
ma ciò che in realtà fece fu di redistribuire il suo programma
sotto licenza GPL. Ora è software libero.
I programmatori che scrivono miglioramenti per GCC (o Emacs, o Bash, o
Linux, o un qualsiasi programma coperto dalla GPL) lavorano spesso per
aziende o università. Quando il programmatore vuole offrire questi
miglioramenti alla comunità e vedere il suo codice incluso nella
versione successiva del programma in questione, il suo capo potrebbe dire:
"Fermo lì! Il tuo codice appartiene a noi! Non vogliamo condividerlo
con altri; abbiamo deciso di trasformare la tua versione migliorata in
un prodotto proprietario".
Qui viene in aiuto la GNU GPL. Il programmatore mostrerebbe al capo che
un tale prodotto proprietario sarebbe una violazione del diritto d'autore
e il capo capirebbe che ci sono soltanto due possibilità: rilasciare
il nuovo codice come software libero o non rilasciarlo affatto. Quasi
sempre al programmatore viene consentito di comportarsi come intendeva
fare e così il codice risulta disponibile per la versione successiva
del programma.
La GNU GPL non è sempre accondiscendente; dice di "no" ad alcune
delle cose che a volte la gente vuole fare. Alcuni utenti affermano che
sia negativo il fatto che la GPL "escluda" alcuni sviluppatori di software
proprietario che "hanno bisogno d'essere portati nella comunità
del software libero."
Ma non siamo noi ad escluderli dalla nostra comunità; sono loro
che scelgono di non entrare. Decidere di produrre software proprietario
equivale a decidere di starne fuori. Esservi dentro significa cooperare
con noi; non possiamo "portarli nella nostra comunità" se non vogliono
unirsi a noi.
Ciò che possiamo fare è offrire un incentivo ad unirsi a
noi. È per far sì che il nostro software già prodotto
sia un incentivo che la GNU GPL è stata pensata: "Se renderete
il vostro software libero, potete utilizzare questo codice". Di certo
in questo modo non si vincerà sempre, ma qualche volta sì.
Lo sviluppo di software proprietario non contribuisce alla nostra comunità,
ma i suoi sviluppatori spesso vogliono informazioni da noi. Gli utenti
di software libero possono colpire gli sviluppatori di software libero
nel loro ego con la riconoscenza e la gratitudine, ma sarebbe una vera
tentazione se un'azienda dicesse ad uno di essi: "E` sufficiente che tu
ci consenta di inserire il tuo pacchetto nel nostro programma proprietario
e il tuo programma sarà usato da migliaia e migliaia di persone!".
La tentazione potrebbe essere forte, ma alla lunga staremmo tutti meglio
se le resistissimo.
Le tentazioni e le pressioni sono più difficili da riconoscere quando
arrivano in maniera indiretta, attraverso organizzazioni a favore del software
libero che hanno adottato la politica favorevole al software proprietario.
L'X Consortium (ed il suo successore, Open Group) ne offrono un esempio:
fondati da compagnie che producono software proprietario, hanno inisistito
per un decennio per convincere i programmatori a non usare il permesso
d'autore. Ora che Open Group ha prodotto il software non libero X11R6.4
, quelli di noi che hanno resistito sono contenti di averlo fatto.
[Nel settembre del 1998, diversi mesi dopo che X11R6.4 venne rilasciato
con termini di distribuzione non liberi, Open Group tornò sui suoi
passi e lo rilasciò nuovamente sotto la stessa licenza per software
libero (che non contempla il permesso d'autore) usata per X11R6.3. Un
grazie va ad Open Group, ma questa marcia indietro non invalida le conclusioni
cui eravamo giunti per il fatto che aggiungere restrizioni fosse possibile
.]
Parlando in termini pragmatici, pensare agli obiettivi a lungo termine
aumenterà il desiderio di resistere a queste pressioni. Concentrandosi
sulla libertà e sulla comunità che si può costruire
rimanendo fermi in questa decisione, si riuscirà a trovare la forza
per farlo. "Battiti per qualcosa o soccomberai per nulla".
E se i cinici ridicolizzeranno la libertà e la comunità ...
se i "realisti più intransigenti" diranno che il profitto è
l'unico ideale possibile ... ignorateli e continuate ad utilizzare il permesso
d'autore.