Ricordo
che qualche anno fa il nirvana dello sviluppatore alternativo
era lo sviluppo Java su sistema operativo Linux. Sarebbe
stato un completo distacco dal mondo Microsoft, anche
se si sarebbe abbracciata un'altra piattaforma proprietaria:
Java.
Da quei primi anni di affermazione del linguaggio di
SUN e del sistema operativo emergente GNU/Linux molta
acqua è passata sotto i ponti. Windows è
migliorato moltissimo. È nato Mac OS X. Gosling
e Torvalds lavorano entrambi su computer Apple. Longhorn
uscirà (forse) nel 2007. Chi lo avrebbe detto
solo pochi anni fa?
Colpa
dei soliti indiani
La notizia che alla Apache Software Foundation (Figura
1) è arrivata la proposta di mettere in incubazione
un progetto per la realizzazione di J2SE 5.0 ha dunque
il sapore di un ritorno al passato. Di un nuovo tentativo
di affrancarsi dal mondo proprietario. E questa volta
non solo da Microsoft, ma proprio da tutte le tecnologie
non aperte.
Il progetto Harmony è stato proposto ad inizio
maggio da un gruppo di aziende che fanno parte della
fondazione Apache e da alcuni privati. Lo scopo è
quello di realizzare una completa Virtual Machine e
le librerie di runtime compatibili con la piattaforma
Java2 Standard Edition versione 5.0.
Un lavoro mastodontico, che però può basarsi
su attività open source già presenti,
come Kaffe o Classpath, che potrebbero fornire una base
su cui lavorare. Questi progetti avevano infatti un
obiettivo simile alla nuova proposta fatta ad Apache,
ma forse sono stati privi della stessa spinta entusiastica
ed esperienza organizzativa che invece possiede la fondazione
Apache.
Figura 1 - il sito della fondazione Apache
Solo
SUN in posizione scomoda?
Fino ad oggi SUN ha sempre rifiutato di rendere open
source la piattaforma J2SE. La motivazione principale
addetta è stata la protezione verso possibili
evoluzioni incompatibili della piattaforma. SUN ha assunto
il ruolo di "dittatore buono", con la responsabilità
di decidere che cosa accettare e cosa non inserire nella
propria piattaforma. Così facendo, ha garantito
a Java una evoluzione che, nel bene e nel male, ha avuto
uno sviluppo standard.
Con la presenza di una versione open source della piattaforma,
come evolveranno le cose? Microsoft pagherà delle
società esterne per creare versioni non compatibili,
dotarle di funzionalità golosissime e buttare
disordine nel mondo concorrente?
In questa proposta alla fondazione Apache non è
solo SUN ad essere in una posizione scomoda. Lo sono
anche i suoi clienti, gli sviluppatori e gli utenti
finali.
Ma si può fare un paragone,con una situazione
simile, che dovrebbe essere di buon auspicio per il
futuro. Nel campo dei sistemi operativi, l'introduzione
di Linux ha sicuramente giovato al mondo Unix ed a quello
open source. Un ottimo successo di un prodotto valido.
Nel campo delle piattaforme, il ruolo che ha avuto Linux
lo potrebbe fare la J2SE di Apache. Ma la situazione
è poi così simile? Forse no.
Una
comunità per Java
L'iniziativa proposta alla fondazione Apache arriva
proprio quando SUN ha deciso di aprire maggiormente
il proprio processo di sviluppo. Con Java 6.0, infatti,
gli sviluppatori hanno più possibilità
di interagire e modellare l'evoluzione del linguaggio
rispetto al passato. I binari ed i sorgenti di Mustang
sono infatti disponibili e nei forum le idee più
strane (o innovative) si sprecano.
SUN ha accolto con favore l'iniziativa per lo sviluppo
di una J2SE open source, ed ha dichiarato che, in un
modo o nell'altro, parteciperà al progetto. Ma
forse solo un'azienda priva di ogni senso di marketing
avrebbe risposto diversamente.
Bisognerà vedere poi nel concreto cosa succederà.
Sicuramente tutti concordano su un aspetto. La realizzazione
di una virtual machine e delle librerie di base a partire
da zero (o quasi) è una impresa mastodontica.
Gli analisti di Burton Group prevedono che ci vorranno
dai tre ai cinque anni per realizzare qualcosa di utilizzabile.
Ed anche allora, chi vorrà utilizzare una piattaforma
open source, quando quella di SUN è conosciuta,
gratuita e matura?
In passato una versione open source di Java è
stata richiesta a gran voce, in primis da IBM, che si
è resa protagonista di aspre critiche. Un Java
open source, urlava Big Blue, avrebbe semplificato la
distruzione di Java con il sistema operativo Linux.
Ma una versione open source di Java non è arrivata,
ed IBM ha rinunciato, sottovoce, alla sua richiesta.
Un
amico per Geronimo
La nuova iniziativa di Apache Software Foundation potrebbe
rivelarsi molto strategica. Come già scritto
[1] su Mokabyte, infatti, la fondazione è anche
al lavoro per l'implementazione di un Application Server
conforme a J2EE.
Il progetto Geronimo (Figura 2), questo è il
nome dell'iniziativa, potrebbe dunque utilizzare la
piattaforma J2SE prodotta sempre da Apache, in modo
da creare una offerta "all-open". In questo
modo sarebbe possibile utilizzare Linux come sistema
operativo, Apache come http server, virtual machine
e contenitore J2EE.
Il
nirvana dell'open source.
Geronimo oggi è disponibile in versione 1.0 milestone
3, ma il suo sito Web (http://geronimo.apache.org/)
avverte l'utente: è più una dimostrazione
della tecnologia che un prodotto realmente utilizzabile.
Questo nonostante la disponibilità di numerosi
pezzi già pronti, come Tomcat, Tag Libraries,
Axies ed altri.
Figura 2 - il sito dell'application server Geronimo
Conclusioni
Può avere un senso l'esistenza di un J2SE completamente
aperto? Riuscirà Apache a realizzare un progetto
così mastodontico, e se si, quando lo rilascerà?
Si può riassumere la questione con un rinvio:
affronteremo il problema tra tre o cinque anni.
Sarà solo allora che sarà possibile soppesare
i fatti: confrontare la piattaforma di SUN (che nel
frattempo sarà arrivata alla versione 7.0-8.0)
con il prodotto open source della fondazione Apache.
Ma forse, prima di allora, SUN saprà ancora sorprenderci.
Magari finalmente rilasciando la propria piattaforma
come software open source.
Bibliografia
[1] M.Bigatti, "Geronimo, l'uomo che sbadiglia",
Mokabyte 7/2004, http://www.mokabyte.it/2004/07/geronimo.htm
|