Interview Alexis Moussine-Pouchkine, architecte Java chez Sun, par rapport à l'annonce de Sun de rendre Java Open Source

Alexis Moussine-Pouchkine

Suite à la publication récemment faites par Sun de sa ROADMAP concernant L'Open Sourcing de Java, nous avons demandé à Alexis Moussine-Pouchkine, architecte Java chez Sun, de nous accorder un interview à ce sujet. Il fait notamment suite aux réactions de notre Java Champion, Vincent Brabant.

- Titre : Interview Alexis Moussine-Pouchkine, architecte Java chez Sun, par rapport à l'annonce de Sun de rendre Java Open Source

- Auteur : Alexis Moussine-Pouchkine

- Parution : 28 septembre 2006

- Mise à jour : 28 septembre 2006

- Licence : Copyright ® 2006 Alexis Moussine-Pouchkine. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- Premières réactions

- Quelques autres questions ...

Premières réactions

Dans cette premiere partie, Alexis Moussine-Pouchkine a voulu clarifier certains points quant à l'interview de Vincent Brabant

"Sun Java System est un OS. Et il porte le nom de Java, car il permet de faire tourner des applications Java. A la bonne heure. Ce n'est pas le seul OS au monde qui permet de faire tourner des applications Java." (Vincent Brabant)

AMP: De quoi parles-tu? "Sun Java System" est le branding des logiciels de middleware (app server, identité, SOA, collaboration) des produits Sun, pas un système d'exploitation.

VBB: C'est bien la preuve que l'on ne sait plus de quoi on parle.
Car lorsque je vais sur la page http://developers.sun.com/prodtech/devtools/javaes/, j'obtiens ceci Et lorsque je clique sur Java Entreprise System, j'arrive bien sur la page de Solaris Entreprise System. C'est tout de même un OS cela. Non ?

AMP: Non :-)
Solaris Enterprise System = Solaris + Java Enterprise System

"Mais il existe également des implémentations Java SE qui sont sous licence open source, comme gcc (licence GPL), kaffe, harmony (licence Apache), etc.
Mais ce sont bien souvent que des implémentations partielles, voire incomplètes, et très souvent en retard (laquelle de ces trois implémentations permet d'exécuter du code J2SE 1.4 ?)" (Vincent Brabant)

AMP: Soyons précis, il ne s'agit pas d'implémentations de Java puisqu'elles sont incomplètes.

VBB: Et pourtant, c'est souvent une de ces implémentations qui sont livrées avec des distributions linux.
Et lorsqu'on tape java dans une ligne de commande, c'est bien leur implémentation qui est exécutée.

AMP: Oui, c'est la raison d'exister de la Distributor License for Java (DLJ) qui a été annoncée à la JavaOne 2006.
D'autre part, clairement, Sun ne revendique pas le fait que la Sun Community Source Licence (SCSL) qui permet d'accéder aujourd'hui au source de Java, soit une licence Open Source.

"Mais une JVM, sans les API (le tout formant la JRE), ne sert à rien." (Vincent Brabant)

AMP: Les API sont disponibles, simplement pas en Open Source à ce stade.
La disponibilité de HotSpot permettra par exemple de travailler sur les implémentations des algorithmes de Garbage Collection.

VBB: Je voulais dire une JVM open source sans les API également disponible en open source, ca ne sert à rien. Dans le sens que cela ne va certainement pas contenter les fervents de l'open source.

"Je sais bien qu'il faut commencer par quelque chose. Et que commencer par la JVM, c'est le plus logique. Mais bien que cela sera rendu open source en octobre, cela ne va rien révolutionner du tout, pour l'utilisateur, et non plus pour le programmeur d'applications Java. Il nous faudra attendre plus longtemps." (Vincent Brabant)

AMP: Quitte à décevoir, je vous renvoie vers le billet de Simon Phipps, Chief Open Source Officier chez Sun qui explique que même à terme, le nombre de personnes impactées est limité : http://blogs.sun.com/webmink?entry=why_bother_open_sourcing_java

VBB: merci pour l'info.

"Les utilisateurs Linux, qui auraient espérer avoir la JRE (Java Runtime Engine) de Sun, en Open source avec leur distribution Linux pour la fin du mois d'octobre en seront pour leur frais. Ils vont devoir attendre plus longtemps." (Vincent Brabant)

AMP: La DLJ (Distro License for Java) permet déjà aux distributions Linux d'embarquer le JRE de Sun : http://download.java.net/dlj/DLJ-v1.1.txt

VBB: Oui, mais la DLJ ne rends la JRE de Sun open source. C'est là dessus que je mettais l'accent.

Quelques autres questions ...

Pourquoi est-ce que le JDK de référence ne serait pas Harmony. Et que les développeurs de chez Sun travailleraient sur Harmony et non plus sur l'implémentation maison de Sun ?

AMP: Je pense qu'on ne peut pas sérieusement abandonner l'investissement (6 millions de lignes de code!) de Sun dans HotSpot (plus de 10 ans de travail) au profit de Harmony, un projet prometteur, mais naissant.
Tout au plus peut-on imaginer une collaboration. D'un autre coté la compétition a du bon et profite aux développeurs.

VBB: Ce que je voulais dire, c'est pourquoi ne pas mettre HotSpot en licence Apache, et donner tout le code au projet Harmony.
Et voilà.
Le projet Harmony devient le projet de référence, où les développeurs Sun travaillent le plus. Un peu comme Glassfish pour ce qui est de Java EE.

Sun a déclaré que ce serait une licence open source agréée par l'OSI. Une qui existe déjà, ou une nouvelle ?

AMP: Existante selon moi car pas le temps d'en soumettre une nouvelle pour approbation dans le planning annoncé (octobre 2006).

Pourquoi Sun s'est arrêté là, et n'a pas été plus loin en disant qu'elle choisirait une licence libre (reprise sur le site de la FSF) ?

AMP: Pour les mêmes raisons qui poussent Sun à progresser par étapes en impliquant l'ensemble de la communauté Java.
Les licences de la FSF sont loin de faire l'unanimité au sein de la communauté Java qui est très large et variée. A voir donc.
L'important est de préserver les qualités de portabilité de Java. Le passage en Open Source du JDK a pour objectif principal d'attirer de nouveaux utilisateurs, pas de perturber les utilisateurs existants.

Est-ce que le TCK sera également disponible en Open Source ?

AMP: Je ne sais pas.

Quid de la marque déposée Java ? Sun va-t-elle en rester le propriétaire, ou la donner à un organisme indépendant qui en surveillerait son usage et qui serait également responsable du TCK et du JCP?

AMP: La problématique de la marque déposée est disjoint de la mise en Open Source de Java.
Je ne sais pas quels sont les plans ou les discussions en cours.