Ruggero
Montalto
LIBERGNU:
libertà per i libri elettronici
1. Introduzione
| 2. In origine
| 3. LiberLiber +
GNUtemberg! = LiberGNU | 4. GNU, ovvero il software
libero | 5. OpenBERG
| 6. Ed i libri
elettronici? | 7. Per concludere
Introduzione
Ormai da due anni il progetto LiberGNU persegue i
seguenti obiettivi:
-
supportare la realizzazione di
software libero (con licenza GNU GPL) che crei, visualizzi e permetta
di manipolare libri elettronici in formato Open eBook, od in altri
formati comunque liberi;
-
coordinare, favorire e
pubblicizzare la realizzazione di tale software, compreso il successivo
sviluppo, a tempo indeterminato;
-
supportare la creazione di una biblioteca elettronica
enciclopedica, nel rispetto delle leggi sul diritto d'autore, affinché
il software realizzato possa dimostrarsi utile e disponga di un
patrimonio culturale eclettico a cui si possa liberamente attingere e/o
contribuire.
In origine
LiberGNU, da un certo punto di vista, è stato la risposta a domande
che ricorrevano di frequente sulla mailing
list di LiberLiber, quali: «Come posso aprire un file
.LIT?» oppure «Perché quando apro un file .LIT
vedo solo tanti simboli senza senso?»
Le ovvie risposte a
tali domande furono in principio del genere: "Bisogna scaricare
l'apposito programma" oppure "C'è bisogno del Microsoft
Reader".
Con il ripetersi della domanda, qualcuno è
arrivato a domandarsi - giustamente - se fosse possibile riconvertire
i libri dal .LIT in un altro formato più accessibile; la
risposta, ancora una volta ovvia, fu: «Si,
il modo esiste ma è sconveniente in termini di tempo,
oppure è illegale.»
Fu a questo punto che
nacque il dibattito che portò, nel giro di una decina di
giorni, alla nascita di LiberGNU.
Personalmente, non feci altro
che mettermi in contatto con Gaetano
Paolone ed Antonella
Beccaria - entrambi responsabili del progetto
GNUtemberg! - chiedendo loro se fosse possibile sensibilizzare la
comunità
italiana di sviluppatori che orbitano intorno al software
libero (della cui filosofia vi racconterò poco più
avanti in questo stesso intervento), affinché prendessero in
considerazione l'idea di sviluppare un lettore libero per libri
elettronici in formato non proprietario.
Marco
Calvo, presidente di LiberLiber
diede da subito il proprio placet all'iniziativa, nonché il
diretto supporto dell'associazione, includendo LiberGNU nell'elenco
dei progetti.
L'idea di LiberGNU, nel frattempo, piacque anche alla
comunità italiana dei "liberisti software"...
Ben presto esplose un tam tam elettronico diffusosi a macchia d'olio
sulle mailing lists dei LUG
(Linux User Groups) di mezza penisola.
Alcuni giorni più tardi vennero infine acquistati da Andrea Glorioso i
domini per
il sito e l'avventura di LiberGNU ebbe così ufficialmente inizio!
Più di due anni sono passati ormai da quel novembre del 2001 ed
oggi, pur
non disponendo ancora di un lettore libero per formati e-book non
proprietari, LiberGNU ha comunque raggiunto alcuni traguardi; dal
giorno in cui è nato, è stato un progetto in grado di
suscitare dibattiti, di coinvolgere persone più o meno
attivamente, avvicinandole, permettendo loro di conoscersi e di
collaborare per obiettivi comuni.
Inoltre LiberGNU ha cercato fin
dal principio di guardare al di là dei confini italiani,
adottando l'inglese come lingua di discussione in lista.
Basta
fare una, due, tre ricerche con Google, variando opportunamente la
chiave di ricerca e/o la lingua per scoprire che il progetto viene
di frequente citato anche su siti esteri, in contesti spesso vari, che
possono andare dal semplice trafiletto, alla tesina d'esame di uno
studente
universitario tedesco pubblicata online, per arrivare fino al
rapporto (disponibile purtroppo solo in norvegese, formato PowerPoint
oppure PDF)
redatto dal Sig. Jens Vindvad per l'ABM-Utvikling
(l'autorità nazionale norvegese preposta alla
conservazione ed alla promozione di archivi, biblioteche e musei).
Sebbene la miccia sia accesa da tempo, e molta sia stata
l'attenzione ricevuta complessivamente dal progetto, affinché
LiberGNU possa veramente fare "fuochi d'artificio", bisogna
ora far sì che una prima versione del lettore libero
venga sviluppata al più presto...
LiberLiber +
GNUtemberg! = LiberGNU
Un nome che deriva dalla semplice crasi
dei nomi dei due progetti parenti: "LiberLiber" e "GNUtemberg!".
Il 6 dicembre 2001 ci scrisse in
lista,
incuriosito dal nome del progetto, Richard
Stallman (per
chi di voi ancora non lo sapesse, R. M. Stallman è il papà dell'idea di
"software libero", inteso come "free software").
L'occhio di Stallman cadde sul nostro
sito notando che la sillaba "GNU" del nome richiama
esplicitamente il suo progetto
GNU.
Tra le
diverse cose di cui parlammo con lui, vi fu l'invito da parte sua di
unirci ufficialmente al progetto GNU, in qualità di sviluppatori per il
"pacchetto GNU" relativo ai libri elettronici (GNU vuole essere un sistema operativo
libero: i "pacchetti" o packages sono i
programmi che ne fanno parte); in quell'occasione dovemmo ahimé
declinare, seppure gentilmente, la sua offerta. Infatti, per ricevere
ufficialmente il supporto della Free
Software Foundation (da qui in avanti
FSF) avremmo dovuto aderire a
delle specifiche di programmazione troppo restrittive, un lusso che
non potevamo concederci nel momento in cui il progetto era appena
nato e vi era ancora così tanto da definire. Ancora oggi non
facciamo parte ufficialmente del progetto GNU, ma rimane comunque uno
dei nostri obiettivi quello di poterci - speriamo al più
presto - formalizzare a tutti gli effetti come parte integrante del
sistema operativo GNU.
GNU, ovvero il software
libero
"GNU is Not
Unix" questo è quello che troverete scritto nei siti del
progetto GNU e della FSF.
"Unix" è denominatore comune di una
"famiglia" di sistemi operativi, prodotti da diverse
aziende (per una panoramica a proposito può essere utile che
diate un'occhiata alla directory
di Google); GNU si differenzia dagli altri sistemi operativi Unix
per via delle licenze
di utilizzo che ne accompagnano i programmi, le librerie e la
documentazione tecnica: la General
Public Licence (GPL), la Lesser
General Public Licence
(LGPL) e la Free
Documentation Licence.
Ormai
da anni, queste licenze non solo tutelano l'impegno profuso da
Stallman e dalla FSF nella creazione di un sistema operativo libero,
ma rappresentano ormai la chiave di volta di un'intera catena
produttiva che concepisce la proprietà intellettuale legata al
software sotto forma di lascito d'autore (copyleft)
anziché come diritto d'autore (copyright).
Normalmente,
all'atto di installare un qualsiasi programma sul nostro computer, la
prima cosa che appare ai nostri occhi è una schermata che,
presentandoci un contratto di licenza con l'utente finale (End
user licence agreement,
o EULA), ci pone di fronte all'obbligo inderogabile di accettare la
condizioni di utilizzo decise dal produttore del programma, quali che
esse siano, pena l'interruzione del processo di installazione.
Ma
facciamo ancora una volta un passo indietro. Il software che noi
desideriamo installare si trova in uno degli ultimi stadi del suo
ciclo produttivo, appunto l'utilizzo da parte dell'utente finale.
Cosa precede questo stadio?
Nella realizzazione di un qualsiasi
programma, prima che esso giunga nelle mani dell'utente finale sono
comunque necessari per lo meno altri due passaggi:
1) la stesura
del codice sorgente del programma e
2) la trasformazione del codice
sorgente in binario eseguibile dalla macchina (ciò avviene
il più delle volte attraverso un processo detto di "compilazione").
Il terzo ed ultimo
passaggio sarà infine da parte nostra
3) l'installazione, il
caricamento e l'utilizzo del programma in forma binaria.
La linea
di demarcazione tra "definizione" e "uso" dell'oggetto "software"
è il processo di compilazione. Qualsiasi modifica sostanziale
si voglia apportare al programma, la si deve applicare nella fase di
stesura del codice sorgente, formulandola secondo le regole del
linguaggio di programmazione specifico del caso. Una volta compilato
nessun programma può essere modificato... Potrà tutt'al
più essere configurato, ma non modificato. La maggior parte
delle case produttrici di software - in luce degli investimenti fatti
e del lavoro svolto - sono a buon diritto gelose dei propri codici
sorgente e quando li rilasciano lo fanno solo dietro ben precisi
contratti aziendali con altre ditte, ma quasi mai, salvo particolari
eccezioni, il privilegi di accedere al codice sorgente di un
programma sviluppato da una grande azienda viene reso di pubblico
dominio. Ed anche quando ciò avviene (si pensi al caso emblematico di
StarOffice/OpenOffice della Sun Microsystem), il codice sorgente così
rivelato, viene reso pubblico sotto doppia licenza, di cui una libera
ed una proprietaria.
Cos'è dunque, una volta per tutte,
questo software libero? Nelle parole di Richard Michael
Stallman esso è "una questione di libertà e non di
prezzo" ("free software is a
matter of liberty, not price"); un
software libero non deve necessariamente essere gratuito (free
in inglese ha un significato ambiguo, un vero e proprio esempio di
polisemia, non c'è che dire!), così come un software
gratuito non sarà per questo necessariamente libero... Le
condizioni che un software deve porci affinché lo si possa
definire libero non devono essere proibitive, bensì
permissive. L'EULA del programma non ci deve dire cosa non abbiamo il
permesso di fare, bensì l'opposto. Nella fattispecie le
licenze della FSF (GPL, LGPL e FDL) ci
garantiscono quattro libertà fondamentali, permettendoci di:
-
eseguire il programma, per qualsiasi
scopo - libertà 0.
-
studiare come funziona il programma
e adattarlo alle proprie necessità - libertà 1. [L'accesso al codice
sorgente ne è un prerequisito]
-
ridistribuire copie in modo da
aiutare il prossimo - libertà 2.
-
migliorare il programma e distribuirne pubblicamente i
miglioramenti, in modo tale che tutta la comunità ne tragga beneficio -
libertà 3. [L'accesso al codice sorgente ne è un prerequisito]
Dunque, riassumendo (e citando
da una delle pagine in italiano del progetto GNU) «l'espressione
"software libero" si riferisce alla libertà
dell'utente di eseguire, copiare, distribuire, studiare, cambiare e
migliorare il software» e l'accesso al codice sorgente
rimane un requisito irrinunciabile a queste libertà
dell'utente.
Ciò che più
caratterizza la produzione di software libero è comunque la
spinta creativa "dal basso", a cui fa immancabilmente
seguito una forte "selezione naturale".
La
programmazione di software libero, in termini pratici, si configura
in modi diversi che possono andare da sforzi corali e coordinati
organicamente a livello comunitario, a solipsismi geniali ed
irripetibili.
In realtà, per determinarne la sopravvivenza,
non è fondamentale il come o il perché un programma
nasce. In genere ciò che determina il successo o meno di un
software rispetto ad un'altro è una sorta di processo
evoluzionistico che si innesca all'interno stesso del fenomeno
"software libero". Nel momento in cui ad un unico problema
vengono date in risposta soluzioni parallele, la disponibilità
dei sorgenti si traduce spesso in creazione di programmi ibridi che
conservano gli aspetti migliori di ognuno dei programmi
precedenti.
Quando LiberGNU si propose di coordinare la
realizzazione di un sistema di lettura libero per libri elettronici
in formato non proprietari volle in pratica evitare che le diverse
spinte dal basso si disperdessero in tutte le direzioni; si cercò
di raccogliere le proposte e le idee, di soppesare soluzioni e
strumenti, alla continua ricerca di nuove voci da aggiungere al coro.
LiberGNU ha dunque in comune con il sistema
operativo libero realizzato da Stallman la volontà di
utilizzare la licenza GPL per tutto il software che verrà
realizzato nell'ambito del progetto... anzi ci sono al momento buone
possibilità che sia proprio LiberGNU, in un prossimo futuro, sotto
forma del programma OpenBERG, a dare vita il pacchetto e-book di
riferimento nell'ambito del software libero.
OpenBERG
Nel febbraio del 2003, dopo un dibattito durato quasi un anno,
David Teller annuncia OpenBERG,
ovvero l'iniziativa il cui nome rispecchia la volontà di
programmare il reader software immaginato,
discusso e delineato nella mailing list di
LiberGNU nel corso dei dodici mesi precedenti.
Le caratteristiche
che, nelle intenzioni di D. Teller, contraddistingueranno OpenBERG
saranno:
-
la portabilità, OpenBERG infatti
sarà disponibile per i tre tipi di piattaforma operativa più diffusi
sul mercato: win32, unices e OS X per Macintosh
(a cui seguiranno a breve le più diffuse piattaforme "embedded"
quali PalmOS e Windows Mobile);
-
la libertà, OpenBERG verrà
realizzato sotto licenza GPL;
-
l'usabilità, OpenBERG dovrà non solo eguagliare, ma
possibilmente anche superare i prodotti per eBook attualmente in
commercio.
David non parte comunque da zero, ha dalla sua una lunga
esperienza professionale (che dura da ben 11 anni) nel campo
dell'editoria, periodo in cui ha già realizzato il programma
di lettura per libri elettronici "Lector", sviluppato per
la casa editrice francese "éditions Vigdor".
Il
formato e-book utilizzato da OpenBERG sarà l'OEB, nella sua
versione 1.2, il reader sarà dunque compatibile con gli
standard dell'XHTML 1.0, del CSS 2 e con le codifiche Unicode a 8 ed
a 16 bit.
Il motore di rendering, ovvero il cuore stesso, del
software di lettura sarà costituito dal parser XML Xerces
della Apache Foundation e dall'interprete XHTML Gecko, lo stesso
cuore del browser Mozilla.
L'interfaccia grafica del programma
utilizzerà invece la librerie wxWindows.
Il programma avrà
una struttura modulare, ovvero espandibile, componibile e
personalizzabile. La struttura di base sarà composta da un
framework di visualizzazione e ricerca in
cui poi si potranno inserire successivi plug-in che espanderanno nel
tempo le potenzialità dello strumento nonché la sua
compatibilità con altri formati (MathML, SVG, etc.).
Proprio
in questi giorni, mentre sto scrivendo queste righe, Andrea
Colanicchia di EvolutionBook è in procinto di mettere le mani
sul codice di ObenBERG, per realizzarne il framework di base per le
ricerche all'interno del testo.
L'attesa per questo nuovo e promettente strumento libero
è grande; lo è sicuramente da parte mia così
come suppongo lo sia per tutte le altre persone che nel corso del
tempo si sono occupati di LiberGNU e vi hanno creduto, primi fra
tutti Antonella Beccaria, Marco Calvo, Claudio Cicali, Fabio Ciotti,
Roberto Galoppini, Andrea Glorioso, Gaetano Paolone, Maurizio Patitucci, Gino Roncaglia e Simo Sorce a cui va un mio particolare
saluto e ringraziamento, ma anche Jon Noring, Dorothea Salo, Jordy
Potman e ancora per altri versi Bowerbird (grazie alle cui critiche
siamo spesso riusciti a mettere in luce gli handicap del formato OEB).
Ed i libri elettronici?
Parallelamente alle prospettive di sviluppo di OpenBERG, si sono
presentate nuove necessità organizzative, soprattutto in
rapporto ai testi (in primo luogo i classici della letteratura
italiana e gli altri testi che popolano, sempre più numerosi,
gli scaffali virtuali della biblioteca di Liber Liber) che si
dovranno, in un prossimo futuro, poter utilizzare con questo reader
libero.
Al momento Liber Liber rende tutti i testi disponibili ai lettori
in due formati: TXT ASCII 8bit e RTF (per molti dei testi, ma non per
tutti, sono inoltre presenti anche le versioni in HTML).
Tra non
molto tempo - grazie anche al prezioso aiuto di Manuela Mellini -
Liber Liber spera di poter affiancare ai formati di codifica
"classici" il nuovo formato Open eBook.
Ci accingiamo,
infatti, a intraprendere la conversione sperimentale di alcuni dei
libri del progetto Manuzio in formato OEB
già nei prossimi mesi. Proprio per questa operazione di
conversione è stato allestito un apposito spazio collaborativo
all'interno del sito LiberGNU: LiberGNU Italia.
La sezione
LiberGNU Italia consta al momento di una mailing
list (già attiva da dicembre) e di un sito
ancora in via di apertura.
Inizialmente sarà
necessario sporcarsi le mani con il codice XML del formato OEB e
compiere decine di
scelte, se non centinaia, dettate in primo luogo dalle realtà
contingenti che incontreremo all'interno di ciascun testo
(impaginazione del
libro, stili e strutture del testo, paragrafi, indici, illustrazioni,
didascalie, tabelle, frasi in lingue morte e/o straniere, formule,
etc.). Solo dopo aver
delineato una sorta di "vademecum editoriale" per il
formato OEB nell'ambito del progetto Manuzio, saremo pronti a
guardare un po' più in là, ulteriormente avanti.
In
un progetto di sviluppo a lunghissimo termine, sarebbe inoltre
auspicabile arrivare a poter generare dinamicamente da un unico
sorgente XML,
tutti i diversi tipi di formati finali, tra cui anche l'OEB.
Un'intenzione, questa, che tra le altre cose ci ha portato a
considerare, contemporaneamente alla creazione dei primi libri in
formato OEB, il vantaggio di adottare progressivamente
un
nuovo sistema per la catalogazione dei metadati relativi alle opere
collezionate da LiberLiber, basato su delle tecnologie XML ad hoc, specifiche per la
registrazione e
l'organizzazione di metadati.
Ma per tutto questo, credetemi, ci
vorrà ancora non solo tempo, ma anche risorse umane ed
economiche che al momento non sono disponibili, ragion per cui non
intendo in questa sede dilungarmi oltre. Sono sicuro che mi
comprenderete: la politica dell'associazione, come giustamente
e spesso Marco Calvo ci ricorda, è sempre stata quella di compiere le
cose
un passo per volta, sapendo dove si intende, o si
vorrebbe, arrivare, ma comunque senza affrettare o forzare mai nulla e
soprattutto senza mai tradire ciò che lega ed anima Liber
Liber da anni: la passione e l'impegno dei volontari, entrambe realtà
tanto preziose da non poter essere investite alla cieca.
Per concludere
Scusatemi se ho temporeggiato fino ad oggi
per aggiungere la mia voce alla preziosa occasione di dibattito e
confronto che Italianistica Online ha offerto.
Con la speranza di potervi raccontare ancora di LiberGNU e dei
progressi compiuti dal progetto il prossimo anno, colgo l'occasione per
ringraziarvi di avermi seguito fin qui con la lettura. Un saluto a
tutti.
© Copyright 2004
by Ruggero Montalto.
This material may be distributed only subject to the terms and
conditions set forth in the Open Publication License, v1.0 (http://www.opencontent.org/openpub/)
or later.
Commercial redistribution of Open Publication-licensed material is
permitted.
Distribution of substantively modified versions of this document is
prohibited without the explicit permission of the copyright holder.
Distribution of the work or derivative of the work in any standard (paper)
book form is prohibited unless prior permission is obtained from the
copyright holder.
|