MokaByte 98 - Lug/Ago 2005
 
MokaByte 98 - Lug/Ago 2005 Prima pagina Cerca Home Page

 

 

 

Un Java Open Source

Apache Software Foundation sta valutando la realizzazione di una versione aperta della piattaforma Java.

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