Technologies

Java et l’open source

Publié le : Auteur: vhanniet Un commentaire
technologies

Lors d’un récent séminaire au CEA, j’ai eu l’occasion de présenter quelques idées sur la manière de faire du business à base de services autour de logiciels open source. Pour compléter le point de vue de l’orateur précédent, et dire que le business autour de l’open source n’est pas forcément simple et pas forcément gagnant, j’ai cité notamment l’exemple de Sun. Sun a créé Java puis a finalement disparu, racheté par Oracle, alors même que Java est devenu extrêmement utilisé notamment dans le monde des entreprises où on peut penser qu’il y a beaucoup de business à faire. A chaud, lors de mon discours improvisé sur cet exemple, j’ai dit « Java est plus ou moins open source… » car je n’étais pas sûr. Le speaker suivant a du coup précisé dans sa présentation « Java est devenu open source il y a quelques années maintenant… ». Mais au fait qu’en est-il vraiment ?

Le succès de Java est certainement pour grande partie du au fait qu’il paraît « gratuit » face aux langages équivalents chez Microsoft. Et l’essor de l’open source dans les entreprises correspond aussi à l’essor de Java comme langage de développement.

A ses débuts pourtant, Java n’était pas open source. Sun espérait en tirer profit pour mieux vendre ses machines serveurs et son OS Solaris, a essayé de développer des produits payants exploitant Java mieux que la concurrence (NetBeans) etc. Mais ça n’a pas marché et Sun a annoncé en 2006 que Java allait devenir open source. C’est plus vite dit que fait puisque mettre un logiciel en open source est… Compliqué ! Quelle(s) licence(s) ? Quels composants ? Quelles versions de sources ? Quel processus de gouvernance ? etc…

Comme souvent dans ces cas là, de nombreux projets open source pour héberger le langage Java sont apparus ! Notamment au sein de  la fondation Apache et à la FSF. Les choses ne se sont éclaircies qu’en… 2011 (5 ans après !!) Puisque IBM a finalement laissé tomber Apache et son projet Harmony pour rejoindre Oracle sur OpenJDK.

Est-ce que la situation est plus claire maintenant ? Heu… Comme indiqué ici : http://openjdk.java.net/faq/ il existe un Java open source (OpenJDK) mais aussi un Java non open source, celui d’Oracle ! En fait il existe encore plein d’autres Java open source, et également plein de JVM open source et propriétaires.

Au point que pour certains, l’avenir de Java réside peut-être dans d’autres langages qui fonctionnent sur une JVM. Ça peut paraître curieux. Pourquoi utiliser la JVM mais pas Java ? Une raison importante est que la JVM, nécessaire à l’exécution de programmes Java, est présente dans beaucoup de « stacks » d’exécution en entreprise (socles d’infrastructure logicielle). Et  l’offre en JVM étant très fournie (cf. ci-dessus), il paraît peu risqué de poursuivre sur ce type de technologie. Pourquoi alors envisager des alternatives à Java ? Parce que l’offre est plus limitée, que l’aspect open source paraît fragile et surtout complètement verrouillé par Oracle et IBM, deux sociétés pas vraiment philantropiques… Du coup, les sociétés dont la stratégie repose essentiellement sur les technologies IT cherchent à ne pas risquer se retrouver pieds et points liés avec des politiques commerciales (celles d’Oracle et IBM) sur lesquelles elles ont peu de prise.

Au fait, est-ce que tout ça concerne notre activité chez Sodifrance ? Heureusement non ! Pas directement en tout cas. Java en tant que langage, technologie, écosystème est maintenant durablement installé dans les entreprises, notamment celles du secteur banque/assurance. Autant installé que… COBOL ! Et ce n’est pas demain que ça changera. Mais j’espère que cet éclairage est quand même profitable à la Java Team pour aider à comprendre ce qu’on entend parfois sur le sujet…