Je reprends la suite de fiches d'applications riches pour vous présenter une RDA réalisée grâce à WPF : le New York Times Reader (bêta).

On y retrouve les articles de l'édition papier, le tout dans un "lecteur" très sympathique et mettant en avant des qualités nouvelles d'ergonomie, comme on peut s'en attendre.

New York Times Reader

L'application présente les qualités suivantes :
  • Des articles de qualité, issus du New York Times.
  • Une navigation fluide et très belle : les articles sont bien présentés, tout est redimensionné. On s'y retrouve bien entre les catégories.
  • La lecture est agréable : la police est lisse et bien rendue, la taille de la police est réglable, etc.
  • L'application peut être en plein écran.
  • Les options sont assez bien pensées : envoyer par mail, sauvegarder, annoter, etc.
Options du New York Times Reader

Pour une version bêta, on retrouve un vrai travail de qualité et un outil de très bonne qualité. Vivement un équivalent en français car j'y adhérerais surement. Néanmoins, il faut savoir qu'à terme l'application deviendrait payante.

New York Times Reader reste donc un excellent exemple de RDA, rapatriant des articles sur l'ordinateur de l'utilisateur comme on le fait déjà en PDF, avec le rendu et la navigation en plus. En allant plus loin, on pourrait espérer voir apparaître de nouvelles fonctionnalités plus interactives, comme l'intégration de commentaires ou des liens vers des articles connexes. A creuser !

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.

L’Internet riche est un concept qui me tient à cœur. Certains penseront que ça ne veut rien dire, moi j’y vois plutôt une évolution de l’utilisation d’Internet à des fins plus orientées sur des nouvelles valeurs : partage, éducation, diversité, accessibilité à tous, utilité, etc. On peut tirer de cette définition de nombreux exemples plus ou moins convaincants de sites ou de services web. J’ai décidé aujourd’hui de vous présenter WorldChanging, qui représente pour moi un exemple type de ce que peut nous apporter Internet au quotidien.

 

WorldChanging se base sur une idée simple :

"Tools, models and ideas for building a better future lie all around us. That plenty of people are working on tools for change, but the fields in which they work remain unconnected. That the motive, means and opportunity for profound positive change are already present. That another world is not just possible, it's here. We only need to put the pieces together."

Que dire de plus ? Nous avons tout autour de nous, que ce soit dans le monde réel ou sur Internet. Maintenant, il ne reste plus qu’à rassembler les idées, les informations ; à discuter, à partager pour en faire ressortir un changement positif et le propager à un maximum de personnes sans effort.

Plus concrètement, WorldChanging est formé de plusieurs bénévoles du monde entier ayant la tâche de rassembler les idées et les innovations pour un futur meilleur. Une communication pluriculturelle, bien qu’il y a une forte dominante américaine. C’est à mon avis un modèle à suivre pour de nombreux modèles de sites collaboratifs : la navigation est claire, les articles riches : une réussite. J’espère trouver de nouveaux sites de ce genre mais sur d’autres sujets.

Et vous, connaissez-vous des sites pour un Internet riche ?

C'est ce que pense Warren Henning, comme il l'exprime sur son blog. Morceaux choisis :
  • [...] Elles (les RIA) sont souvent laides.
  • [...] Les types travaillant sur OpenLaszlo n'ont pas de goût.
  • [...] Elles sont trop longues à charger.
Ici je vous ai extrait et sorti de leur contexte les phrases assez "violentes", mais voyons donc chacun de ces points avec plus d'attention, en essayant d'être critique :
  • Les RIA sont laides. Difficile à en juger : il y a beaucoup d'applications, et certaines sont plus belles que d'autres. Alors peut-être que l'effet de mode produit de nombreux ratés, mais il y a à mon avis de belles réussites de design pour des applications riches (par exemple Protopage, Basecamp ou Artypapers pour ne citez qu'eux). Après un certain tri, on se rend compte que les applications sont parfois moins belles, mais tendent vers des objectifs plus précis comme réussir à capter l'attention de l'utilisateur.
  • Les gens travaillant sur OpenLaszlo n'ont pas de goût. Quand on voit le Kids Store (démonstration sur le site d'OpenLaszlo), on se dit tout de même qu'il y a de belles choses à faire sur cette technologie. J'avoue que certains composants par défaut sont laids (les scrollbars grises... aîe aîe aîe), mais il y a un portentiel de customisation assez fort pour permettre de changer tout ça. Alors c'est vrai, l'existant en OpenLaszlo n'est pas aussi beau que ce qui existe en WPF/E par exemple. Pourquoi ? Certainement par manque de qualité au sein de la communauté OpenLaszlo, ou un manque de mise en valeur de vrai travail riche. Surement une faiblesse pour cette technologie, donc.
  • Les RIA sont longues à charger. C'est vrai : l'exemple le plus cité est Gmail. Mais je pense (et je ne suis pas le seul) que ça vaut bien le coup d'attendre 10 secondes au chargement si c'est pour obtenir une navigation quasiment aussi fluide qu'une application "de bureau" classique. En tout cas, le chargement long se retrouve dans toutes les technologies RIA (Flex et WPF/E ne font pas exception), mais les avantages sont plus nombreux que les inconvénients. J'ajouterais que dans le cas d'application plus "lourdes" à télécharger et à charger, il y a moyen d'optimiser tout cela via des politiques de gestion de mémoire (comme en Flex).
En conclusion : Warren pense que les RIA sont foireuses. Je dirais que les RIA sont ce qu'on en fait : de la qualité, ou pas. Tout dépend de l'idée, du but recherché, du bon emploi de la technologie (et donc du bon choix) et d'autres facteurs. Ca me donne du coup une idée de billet : "comment concevoir une bonne RIA/RDA ?". Discutons, discutons...

Rechercher