Java libre!

Même si j’aimerais bien vivre de mon blog, on est encore bien loin. Depuis déjà quelques années, c’est Java qui me permet de payer mes factures. Toute nouvelle qui touche donc ce langage est assez importante pour moi.

Mon histoire avec Java commence en 1998, lorsque j’ai fait un stage de six mois chez IBM. J’avais déjà fait un peu de Java, chez moi, pour tester ce nouveau langage qui semblait aussi intéressant, mais chez IBM j’ai été obligé à monter rapidement en compétence en travaillant dans un projet de migration vers Java 1.1 chez Caja Madrid. Depuis je m’était centré plus sur le côté télécom de ma carrière, mais à la fin de mon doctorat je suis revenu dans le monde Java avec des missions de prestation pour des SSII. A l’époque, l’idée de qu’un jour Sun allait libérer le code de Java faisait rire (mais à l’époque on pensait la même chose d’une éventuelle libération de Solaris, par exemple…).

Tout ça pour dire que je suivait avec intérêt toutes les nouvelles sur la libération du code source de Java sous une licence open source. On avait entendu toutes les rumeurs : libération totale, libération partielle, licence spécial Sun, licence BSD…

La semaine dernière une nouvelle rumeur, en apparence très sérieuse et documentée, a parcouru la blogosphère anglo-saxonne, Slashdot l’avait relayé : Java allait être libéré sous une licence GPL v2.

Je n’avait pas voulu bloguer sur ça, car il n’y avait pas de confirmation officielle. Et la confirmation officielle arrive aujourd’hui, dans le site officiel de Sun. Et en plus, un des blogueurs de Sun nous fait un décryptage du pourquoi et comment de cette libération de Java.

Pour fait courte la partie technique, je reprends la formule de Tim Bray :

Unmodified GPL2 for our SE, ME, and EE code. GPL2 + Classpath exception for the SE libraries. Javac and HotSpot and JavaHelp code drops today. The libraries to follow, with pain expected fighting through the encumbrances. Governance TBD, but external committers are a design goal. No short-term changes in the TCK or JCP.

Pour moi, c’est une manoeuvre qui va dans le bon sens, surtout pour Sun. Depuis le début, ils ont offert toutes les outils Java gratuitement (mais avec code fermé), et cela a été un des facteurs clés dans le succès du langage. Ils donnaient donc à la communauté des utilisateurs, mais en avant le code fermé, ils ne profitaient pas des éventuelles améliorations que la communauté pourrait faire dans le code.

L’un des arguments en contre était le risque de fork, que des groupes de hackers, des chercheurs ou des passionnés prennent le code source de Java, le modifient et proposent des versions de Java incompatibles entre elles. Mais avec le parapluie du TCK (la suite d’outils de test qui permettent de certifier un produit comme “compatible avec Java”) et des marques registrées, le risque n’existe pas, car ils ne pourraient pas appeler leur projet Java (comme pour Firefox, on peut créer et même vendre des versions modifiées de Firefox comme Flock, mais on ne peut pas les appeler Firefox).

Sur ça, la position de Sun est claire :

However many forks there are, it ain’t Java unless it’s called “Java” or has the coffee-cup on it. If it has the name and cup, it is Java and it’s compatible. And Sun will absolutely enforce that in court if we have to. We have in the past and we will again.

Cependant, il y a un risque énorme de voir pousser des langages ou des machines virtuelles basées sur celle de Java, avec d’autres noms, et taillées pour des besoins plus spécifiques. Mais cela est, à mon avis, une bonne chose. Et ce qui est encore mieux, Java pourra profiter des améliorations faites dans ces projets. Tout le monde gagne donc…

Tags: ,

2 commentaires à “Java libre!”

  1. MiKE Says:

    Tout le monde y gagne en effet et jusqu’à la société qui rend ainsi son travail "libre".. C’est sans doute ce qu’il y a d’intéressant dans la mise à dispo auprés des développeurs [car faudrait pas éxagérer quand on parle de " mise à disposition du public " comme le font certains webzines, quel non-développeur va aller s’amuser à piocher dans les sources de Java ?] de cet outil si puissant et à la fois si adaptable. Java y gagne, les développeurs y gagnent et les clients finaux [FF comme tant d’autres..et même MS ;o] aussi. C’est beau le partage.

  2. Le blog de LostInBrittany Says:

    Google Web Toolkit devient open source

    Il semblerait que de plus en plus d’éditeurs décident de libérer leur code, dans un mouvement qui s’accélère de plus en plus. Il y a quelques semaines je vous parlait d’une libération de code qui me touchait directement, car je travaille avec…

Leave a Reply