Un Java Open Source

Una versione aperta della piattaforma Java?di

Apache Software Foundation sta valutando la realizzazione di una versione aperta della piattaforma Java. Vediamo cosa bolle in pentola nel progetto promosso da un gruppo di aziende che fanno parte della fondazione Apache e da alcuni privati con lo scopo di realizzare una Virtual Machine completa e tutte le librerie di runtime compatibili con J2SE versone 5.0

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.

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.

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.

Riferimenti

[1]
M.Bigatti, "Geronimo, l‘uomo che sbadiglia", MokaByte 7/2004
http://www.mokabyte.it/2004/07/geronimo.htm

Condividi

Pubblicato nel numero
98 luglio 2005
Massimiliano Bigatti è sviluppatore senior, autore tecnico e appassionato di fotografia. Certificato, tra le altre, come SUN Certified Enterprise Architect for Java2 Enterprise Edition Technology, lavora presso un importante business solution provider. Nel tempo libero scrive per diverse riviste di informatica e ha scritto una decina di libri, quasi tutti…
Ti potrebbe interessare anche