Oracle semble avoir compris que décidément Java ce n’est pas sa tasse de thé. Son « business » à lui c’est de capitaliser autour des bases de données et des grands logiciels métiers, pas de jouer les gourous sur une technologie de développement. C’est ce qui le pousse aujourd’hui à jeter l’éponge et vouloir transférer Java EE 8, l’un des derniers grands bastions encore dépendants de lui, vers une plate-forme Open Source, dans laquelle il pourrait toutefois continuer à jouer un certain rôle.

Quand Oracle a racheté Sun en 2009, il a hérité par la même occasion de Java, dont il est devenu une sorte de « gardien du temple ». Sachant que quelques années plus tôt, Jonathan Schwartz, le patron de Sun, avait porté l’essentiel de Java en Open Source. Sage décision d’ailleurs, qui avait permis à la plate-forme de remonter la pente, face à Microsoft et .Net.

Mais nous n’avons jamais cru réellement à la motivation de la Compagnie de Larry Ellison. De nombreux chefs de projets internes Sun non plus, qui tels James Gosling, se sont empressés de quitter le navire. Question d’incompatibilité comportementale.

De sorte que l’annonce faite par Oracle de son intention de verser Java EE 8 à une communauté Open Source ne nous surprend pas, ni les DSI en charge des développements dans leurs entreprises.

Oracle

Le futur dépositaire de la vérité Java pourrait être l’un des grands acteurs du domaine : Apache, Red Hat, Eclipse, etc, voire un mélange de ces communautés, la difficulté étant alors que l’un d’entre eux ne tire pas la couverture à lui…
Mais qui pourrait bien reprendre le flambeau ?

Eclipse, en premier lieu, qui est déjà un acteur majeur dans la communauté Java, mais pas seulement, puisque son périmètre d’intervention va très au-delà du langage.

L’ennui avec Eclipse c’est qu’il plane toujours l’ombre d’IBM sur la communauté, dont personne ne croit à l’indépendance totale vis-à-vis des intérêts de Big Blue. Même si IBM s’est retiré de la gouvernance d’Eclipse. Autrement dit, passer d’Oracle à Eclipse, ne changerait pas grand-chose sur le fond. Même si c’est un peu injuste pour Eclipse.

Cela pourrait être surtout Apache, une communauté qui est, en fait, le véritable pilier « porteur » de la technologie Java. Et c’est vers Apache que notre vote ira. Mais là encore avec quelques bémols. D’abord le fait que lancer des projets sur java, aussi réussis soient-ils, ne lui donne pas l’expérience suffisante pour tenir le rôle de « référentiel » universel pour Java EE et qu’il y a un monde d’écart entre les 2 missions.

Il y a aussi le fait que la récente reprise d’OpenOffice s’est soldée par un gros échec, Apache déclarant forfait compte tenu de l’insuffisance des moyens dont il disposait encore pour assurer son évolution. On pourrait aussi dire que la récupération de l’IDE NetBeans, lui-aussi issu de Sun, n’a pas été une réussite, car pendant des années la plate-forme s’est traînée derrière celle d’Eclipse, au point que l’on s’est souvent demandé si elle existait toujours…

Fort heureusement, c’était le cas, mais un léger « trouble » s’est installé…

Cela pourrait aussi être Red Hat, très impliqué également dans Java et qui fait d’ailleurs partie de l’équipe, avec quelques noms moins connus, à l’origine de l’initiative MicroProfile, une proposition d’extension de Java EE pour les architectures de micro-services.

Toutes ces communautés sont d’ailleurs ravies de l’annonce faite par Oracle… et espèrent en tirer avantage.

Il faudrait trouver la meilleure organisation susceptible de faire vivre la plate-forme Java EE, qui à notre avis ne peut être qu’un mix de ces communautés, histoire d’éviter que l’une d’elles ne façonne Java à sa seule convenance. Avec le risque cependant d’enlisement quand des intérêts divergents s’affrontent…

Ce problème n’est d’ailleurs pas seulement technique et les politiques le connaissent depuis… que les grecs ont inventé la démocratie.

Les conséquences pour l’entreprise

Il y en aura probablement peu, encore que…

Si l’on y regarde bien, on s’aperçoit qu’en fait Oracle ne contrôle déjà plus grand-chose dans le monde Java, hormis Java EE. Java SE, en gros le « run time » ou machine virtuelle JVM, mais aussi le langage lui-même, sont orchestrés maintenant par les recommandations de l’OpenJDK. Ce qui n’est d’ailleurs pas totalement rassurant quand on constate que la JVM est en retard dans les domaines clés des mobiles et des objets et que l’on ne sait pas très bien ce que va devenir le langage Java 9 et ses classes internes,  normalement prévu pour la fin 2017, ce qui semble poser des problèmes abyssaux de modularité…

Ce qui est sûr, c’est qu’Oracle ne veut plus être concerné par tout cela.

S’il y avait eu la place pour une plate-forme payante et propriétaire, l’éditeur aurait sans doute pu trouver sa place, mais ce n’est pas le cas et la compagnie n’a plus aucun intérêt à dépenser de l’énergie pour une communauté dont elle se sent « philosophiquement » très éloignée.

2017 sera en tout cas considérée par les historiens comme l’année du changement. De grands mouvements sont attendus, on l’espère à la hauteur des défis qui attendent les entreprises. Il n’y a pas encore péril, mais les DSI et architectes applicatifs ont tout intérêt à suivre le feuilleton de près.

Et ne plus considérer le scénario de rupture comme impossible.