Depuis quelques temps déjà je souhaitais enrichir mon blog de quelques interviews, notamment de personnages qui sont au coeur même de l'actualité des clients riches. Voilà enfin la première qui arrive, et c'est Michael Chaize, avant-vente et responsable de la communauté Flex chez Adobe France qui m'a gracieusement offert un peu de son temps pour répondre à mes questions.
Salut Michael, tout d'abord pour ceux qui ne te connaissent pas, pourrais-tu te présenter ?
Salut Fabien. J’ai tout d’abord travaillé dans plusieurs webAgencies parisiennes en qualité d’expert Flash puis j’ai créé la société Sowedoo avec Cyril Reinhard. Ensemble, nous avons construit une offre logicielle centrée autour du format PDF. Cinq ans plus tard, nous avons intégré les équipes commerciales d’Adobe France. Je travaille désormais dans l’équipe avant-vente et suis en charge de développer la communauté des développeurs Flex.

Comment décrirais-tu Flex en quelques mots ?
Flex 2, c’est un environnement de développement de RIA (Rich Internet Application) :
- Riche, parce que les interfaces des applications sont en Flash et intègrent donc toutes les possibilités proposées par ce format (dessin vectoriel, vidéo, son, effets…) ;
- Internet, parce qu’un simple navigateur web et le plug-in Flash 9 suffisent pour accéder à l’interface;
- Application, parce qu’un projet Flex se conçoit comme un logiciel. Il faut raisonner en écrans et plus en pages, en asynchrone et plus en rafraichissement, etc.
- Il est important de rappeler que le SDK Flex 2 est gratuit et multiplateformes. De nombreuses classes permettent de se connecter rapidement au système d’informations pour récupérer des données et les renvoyer à jour.
Quelle est la cible d'Adobe sur un produit comme Flex ?
Tout développeur désireux de réaliser rapidement des interfaces riches et professionnelles. Notre principale cible est le monde Java. Flex Builder (l’IDE) est en fait un plug-in Eclipse. C’est la première fois qu’un langage objet est dédié au développement de la couche d’interface dans un projet informatique. Le fait de développer dans Eclipse (pour coder, débugger et compiler) plus le fait que l’ActionScript 3 est un langage objet standard ECMAscript très proche du langage Java, permettent aux développeurs J2EE de se sentir très rapidement à l’aise. De nombreux connecteurs aux applications J2EE sont fournis dans le SDK (pour manipuler directement les objets Java côté client, pour se connecter aux données via d’Hibernate, etc…).
Les autres langages ne sont pas en reste. Nous avons publié un Flex SDK spécial PHP et dernièrement un Flex SDK pour Ruby on Rails. Enfin, les applications Flex savent aussi faire appel à des webServices pour récupérer des flux de données, ce qui permet de communiquer avec le monde .NET.
Flex n’est pas une technologie intrusive. Elle propose juste d’enrichir la couche de présentation côté client et pouvoir enfin délivrer des interfaces productives et ergonomiques, qui collent parfaitement aux besoins des utilisateurs. Côté serveur, rien ne change : le serveur d’application, la couche métier et la base de données sont conservés.

Il existe déjà des frameworks ou des technologies pour concevoir des RIA (Ajax, Xul, OpenLaszlo, etc.). Qu'est-ce qui démarque Flex de ces derniers ?
Plusieurs points démarquent Flex des autres technologies de RIA.
Le grand point fort d’une RIA développée avec Flex, c’est la possibilité d’exploiter au maximum les capacités du Flash Player 9. Son taux de pénétration est record (déjà plus d’un ordinateur sur deux est en version 9) et ses performances sont redoutables. Il propose une capacité de calcul côté client inégalée et bien supérieure au moteur JavaScript utilisé par les applications Ajax : afficher de la vidéo en temps réel (webcam), jouer du MP3 en streaming, dessiner côté client (tracé sur une carte par exemple), etc. Cette puissance n’est donc plus réservées uniquement aux « Flasheurs », elle est désormais à la portée des développeurs d’applications.
Le second point fort selon moi, c’est Adobe. Adobe est un éditeur reconnu pour son sens de l’innovation. Les fonctionnalités introduites dans Flex à chaque nouvelle version sont tout simplement pertinentes et toujours bien accueillies par les développeurs. Flex 2 est un framework professionnel, supporté et maintenu par un grand éditeur, et très évolutif. Flex Data Services est une application J2EE qui garantit l’évolution des applications riches dans des projets à grande échelle : messaging, optimisation des flux de données, push de données, etc. De nombreuses grandes entreprises nous font déjà confiance. Et ce n’est qu’un début !
Ceci étant dit, nous ne considérons pas Flex comme une technologie concurrente d’Ajax. Au contraire, elles sont complémentaires. Nous avons à ce sujet publié des « ponts » sur Adobe Labs qui indiquent comment insérer une application Flex dans une page Ajax et comment assurer leur communication. Ces ponts sont très appréciés des équipes qui souhaitent effectuer une migration douce du web vers la RIA. D’autres équipes, choisissent de tout redévelopper en Flex et de s’affranchir ainsi des problèmes de compatibilités entre navigateurs. C’est très variable suivant les profils des développeurs. Les développeurs issus du web seront de prime abord plus rassurés par Ajax, les développeurs issus du monde Java ou objet préfèreront Flex. Une étude indépendante de Forrester Consulting confirme cette tendance.
Dernièrement, Microsoft se positionne comme un concurrent sérieux d'Adobe, notamment avec sa gamme de logiciels Expression et sa brique d'interface Windows Presentation Foundation. Comment vois-tu ce concurrent ?
Adobe est reconnu comme étant l’éditeur leader et le plus innovant sur le marché des créatifs, tout comme sur le marché des technologies web (depuis l’acquisition de Macromedia), et cela depuis plusieurs années.
Microsoft bénéficie d’une grande communauté de développeurs. Je pense qu’une partie de cette communauté va naturellement se pencher vers Windows Presentation Foundation. Par contre, le réel défi pour Microsoft réside dans le déploiement de leur client WPF/E. Le Flash Player est déjà un standard de fait, présent sur 99% des ordinateurs et multiplateformes.
Le fait que Microsoft se lance sur ce marché pour moi est un signal positif car il me conforte dans l’idée que la RIA et la RDA ne sont pas des effets de modes, mais bien des témoins d’une réelle révolution dans les rapports entre les utilisateurs et les services informatiques.
L'année 2006 a été marquée par l'arrivée en force des applications internet riches. En 2007, on parle déjà des applications riches de bureau. Il semblerait qu'on arrive à l'avènement d'une ère centrée sur l'ergonomie, l'utilisabilité, etc. Pourrais-tu nous décrire ce qu'Adobe peut apporter dans ce domaine ?
En fait, si nous entendons parler aujourd’hui d’ergonomie et d’utilisabilité, c’est surtout lié à un constat social. Les utilisateurs étaient jusqu’à présent prêts à subir les limites technologiques imposées par le web et les navigateurs. Désormais, l’utilisateur est mûr et surtout demandeur d’interfaces plus productives et ergonomiques.
Flex est un environnement qui fournit de nombreux composants d’interface ergonomiques. La grande force de Flex, c’est que vous pouvez étendre ces composants (apparence, comportement…) voire même créer de nouveaux codes d’interfaces. Votre sensibilité créatrice ne sera plus jamais limitée par la technologique.
Nous sommes aussi conscients d’un second enjeu majeur. Comment faire travailler efficacement ensemble les équipes de designers et les développeurs. Cet enjeu est stratégique pour Adobe et je peux déjà vous annoncer que l’année 2007 sera riche en annonces.
On parle beaucoup d'Apollo en ce moment (j'y ai notamment consacré quelques articles), et pourtant il y a encore de nombreux points flous sur cette technologie toute neuve. Que peux-tu nous dire dessus ?
Une nouvelle tendance poussée par les utilisateurs consiste à vouloir s’affranchir du navigateur Internet. C’est ce qui explique le succès des widgets, des applications riches connectées à des services Internet mais totalement indépendantes du navigateur. Cette tendance annonce l’arrivée d’un nouveau type d’applications, les RDA (Rich Desktop Applications). Apollo sera un SDK Adobe, qui permettra de réaliser des RDA. C’est en fait une extension du SDK Flex, puisqu’il introduira de nouvelles classes capables de gérer la lecture et l’écriture de fichiers en local (une révolution dans l’univers Flash), la gestion de la fenêtre (icône, minimisation dans la barre des tâches, fermeture…) et la gestion du mode déconnecté avec des événements de resynchronisation.
La mise à jour du Flex Builder 2.0.1 est déjà conçue pour accepter les extensions Apollo. Je vous demanderai juste de patienter encore quelques semaines. Nous allons en effet poster une béta publique du SDK Apollo sur http://labs.adobe.com.

Quel avenir prédis-tu aux Rich Internet Applications et aux Rich Desktop Applications ?
Les RIA, c’est du présent. De nombreuses applications riches sont déployées en interne chez les entreprises pour augmenter la productivité des utilisateurs. Un des domaines très en vogue actuellement est l’utilisation d’application Flex pour simplifier la représentation de données complexes (tableaux de bords, BI…).
Pour la RDA, la révolution est en marche. Le succès des widgets nous signale que les utilisateurs sont demandeurs d’applications sur leur bureau, capables de se lancer en dehors du navigateur et en étant déconnectés. Il existe un réel enjeu : proposer des interfaces claires pour consommer, manipuler et mettre à jour des données d’un système d’informations d’une entreprise. Tous les grands fournisseurs de services sont déjà en phase de développement de RDA.
Flex est le premier FrameWork qui réunit les deux mondes : RIA et RDA. En effet, Apollo ne sera qu’une extension. Donc si vous souhaitez vous lancer dans le développement d’applications RDA, lancez-vous dès aujourd’hui sur Flex.
As-tu quelque chose a rajouter ou une dernière nouveauté à nous faire découvrir ?
Tout d’abord merci pour cette interview. Longue vie à ton blog que je parcours régulièrement ! Une petite exclu ? ...Flex 3 devrait voir le jour avant la fin de l’année 2007 et sera toujours dédié à la création d’applications riches pour la version 9 du player Flash.
Merci encore à toi Michael pour tes réponses et ta rapidité ! J'espère vous proposer d'autres interviews très prochainement.