Entretien avec Thomas Heute

Cyberspace, le 23/12/2005.

  1. Bonjour Thomas, une première série de questions classiques, pour mieux te connaître. Qui es-tu, où vis tu ?

    Je suis moi, je vis chez moi ;) Francais né en 1977 en Normandie je vis maintenant à Neuchatel en Suisse au siege de JBoss Europe SaRL. J'ai fait une école d'ingenieur en informatique à Nancy qui s'appelle ESIAL (Ecole Superieure d'Informatique et Applications de Lorraine).

  2. Pourquoi l'open source ?

    Parce que je suis utilisateur convaincu de Linux d'une part et parce que j'aime que mon travail soit valorise. Dans l'open source on est proche des utilisateurs et ca tombe bien car on en a souvent beaucoup plus que pour des produits commerciaux.

  3. Pourquoi l'open source professionnel ?

    Parce que faire de l'open source c'est bien mais je dois aussi manger, l'open source professionnel me permet de travailler à temps plein sur les projets qui me passionnent et à JBoss on reste libre de travailler sur les projets que l'on veut. Il n'existe pas de bons produits sans support et formations, or je ne souhaite que le meilleur pour les produits sur lesquels je travaille sans avoir à me soucier du cote administratif d'ou mon choix pour l'open source professionnel.

  4. Quelles sont tes fonctions chez JBoss Inc. ?

    Je change souvent, mais grossierement j'ai commence en tant que developpeur sur JBoss Portal puis je suis devenu "project leader" de JBoss Seam.

  5. Depuis quand travailles tu chez JBoss Inc. ?

    Officiellement depuis Novembre 2004 mais j'etais contributeur sur le projet Nukes depuis quelques mois deja.

  6. Que faisais tu avant ?

    Je travaillais à Washington, DC USA pour le National Institute of Standards and Technology (NIST) d'une part sur ebXML et d'autre part sur la sécurisation des Pocket Digital Assistants (PDA) pour la National Security Agency (NSA).

  7. Quels sont tes outils de développement habituels ?


  8. Passons à des question sur... SEAM. Tout d'abord qu'est-ce que c'est en quelques mots ? Que signifie l'acronyme ?

    Tres bonne question, j'essaie de me battre pour que tout le monde parle de "JBoss Seam" ou "Seam" mais pas "SEAM" le message passe mal, y compris au plus haut niveau à l'interieur meme de JBoss. Seam n'est pas un acronyme c'est simplement le nom anglais pour "une couture". JBoss Seam est la couture entre les differentes pieces technologiques EJB3, JSF, jBPM.

  9. A quels besoins Seam veut il répondre ?

    Le besoin de simplicité, ecrire une application web est devenu une horreur, les differents frameworks vous imposent de sortir des standards, d'ajouter des couches artificielles... Avec Seam vous etes maitres de vos couches logicielles, vous etes aussi indépendant de solutions propriétaires, à la base de Seam on retrouve EJB3 (standardisation presque finalisée) et JSF.

  10. Quels sont les grands principes de Seam ?

    L'idée premiere est de simplifier le developement d'applications Web.

    Premierement par souci de simplification, on trouve moins de XML et plus d'annotations, c'est un vaste debat mais au final je trouve les annotations plus simples à manipuler que l'XML (les deux cohabitent dans JBoss Seam).

    Les composants de Seam peuvent etre de simples Java Bean ou des EJBs, les EJB3 sont devenus tellement plus simples qu'ils peuvent etre manipulés par une application Seam comme n'importe quels autres objets.

    Interroger un Bean Session depuis JSF doit pouvoir se faire sans couche artificielle c'est encore quelque chose que nous apportons.

    Naviger dans un business process est aussi quelque chose rendu simple grace a l'intégration de jBPM a Seam.

  11. Qu'est-ce que le concept de conversation ? A quoi cela peut-il servir ?

    Quand on ecrit une application Web on a pris l'habitude de gerer une requete ou une session, mais la plupart du temps on cherche à manipuler des objets sur plusieurs requetes (par exemple pour un Wizard). Les développeurs ont pris l'habitude de stocker des objets en Session, mais bons ou mauvais on oublie tous de retirer ces objets au moment voulu. Avec ce concept, non seulement les objets sont détruits en fin de conversation mais ce concept pallie également aux fameux problèmes de "Bouton arriere" et "Onglets multiples" (ou fenetres multiples) des navigateurs.

  12. Quelle est la taille de l'équipe de développement aujourd'hui ?

    C'est assez difficile à évaluer vu qu'on travaille tous sur differents projets à la fois, mais toute l'equipe d'Hibernate est plus ou moins impliquée, Gavin King étant le lead developer de Seam, c'est lui qui ecrit la plupart du code de JBoss Seam. Bien sur Tom Baeyens leader de jBPM nous offre son aide précieuse. Et Jacob Hookom expert dans le groupe JSF est un contributeur actif au projet.

  13. Quel accueil la communauté a fait à ce nouveau projet ?

    Sensationel, on s'attendait à un bon accueil il est allé au dela de nos espoirs, il y a un réel besoin de simplification pour JEE. Nous avons des retours extremement positifs meme si tout n'est pas encore parfait.

  14. Quelles difficultés rencontrez-vous Gavin King et toi à expliquer ce qu'est Seam ?

    Souvent les developpeurs en ont marre et ont ete décus par tous les frameworks web qui sont sortis alors il sont reticents à essayer un nouveau et je les comprend. Ceci dit, ceux qui ont essayé Seam ou vu la demo ont été séduits. Le forum est très actif alors que le projet n'a vu le jour que fin septembre !

  15. Comment positionnes tu Seam par rapport aux frameworks de type Spring ou Ruby on Rails ?

    Ruby on Rails cherche la simplicité et dans ce cadre la nous avons le meme objectif, on a aussi compris que les developpeurs ne veulent pas passer leur temps à éditer des fichiers XML et veulent passer plus de temps sur le code métier de leurs applications. JBoss Seam utilise JSF qui est un standard pour la vue ce qui évite un apprentissage de langage "propriétaire".
    Quant à Spring, je n'ai pas envie de me facher ;)

  16. Quelles sont les évolutions prévues sur Seam ?

    Dans un futur proche:


  17. Le traditionnel mot de la fin

    A quand le Neuchatel JBUG ? Longue vie au Paris JBUG et venez essayer JBoss Seam !



Des liens pour approfondir (démo, tutorial, présentations, ...) :

Un article d'introduction à JBoss Seam : http://www.jaib.org/content/view/21/1/
La page du projet : http://www.jboss.org/products/seam
Pour bien demarrer : http://www.jboss.org/products/seam/gettingstarted
Une demo online : http://seam.demo.jboss.com
Les sources de la demo : http://docs.jboss.com/seam/booking/srchtml/org/jboss/seam/example/booking/