Panorama des IHM connectés

Un panorama des quoi ? Mais des IHM connectés enfin ! En fait, je réfléchissais depuis quelque temps à faire un tableau complet des différentes technologies d’interfaces riches, mais Guillaume Plouin l’a fait avant moi ici : L’invasion des machines virtuelles… En lisant son billet, je me suis rendu compte que le tableau n’était pas tout à fait complet et surtout qu’il manquait un acteur de taille.

Voilà pourquoi je vous propose ce matin ce panorama des IHM connectés, c’est à dire une vue d’ensemble des technologies d’interface entre des utilisateurs et des services en ligne (au travers d’un navigateur, d’une application ou d’un terminal mobile) :

PanoramaIHM

J’ai essayé de faire un tableau qui soit le plus complet possible et qui tente de faire un peu de prospective sur des technologies émergeantes ou sur des extrapolations (les cases jaunes) :

  • Adobe, qui vient tout juste de sortir la version alpha d’Apollo, et qui parle déjà d’une version mobile (Apollo for Mobile phones in next release!?) ;
  • La fondation Mozilla qui dispose dans ces cartons de nombreux projets d’amélioration pour Firefox 3 (et même Firefox 4 !) dont la possibilité de faire des interfaces riches avec le moteur de rendu Gecko (en exploitant différentes technologies comme XUL, SVG, Canvas ou encore Xforms), de même que l’implémentation des recommandations du W3C sur XBL (Extensible Binding Language, qui permet de faire des widgets en ligne mais qui pourrait être exploité de façon indépendante du navigateur par XulRunner) ;
  • Sun qui bénéficie du soutien du monde Java et peut exploiter des projets open source comme par exemple Glossitope, un moteur de Widget ;
  • Apple sur lequel il court des rumeurs concernant une exploitation plus intensive de Quicktime (Is Apple going to embrace Rich Internet Applications?) ou encore sur une évolution de l’environnement Cocoa pour créer plus facilement des applications connectées comme iTunes (Apple and Rich Internet Applications).

Bref, ça se complique mais ça s’accélère. Et encore une fois, l’important n’est pas la technologie employée mais le service rendu : est-ce que cela va améliorer l’expérience des utilisateurs. Nous savons déjà de quoi sont capables Apple, Adobe et Mozilla, nous verront bien ce que vont faire les autres.

MAJ (22/05/2007) : Quelques modifications ont été apportées au tableau grâce aux commentaires de Laurent, Paul et Alexis. Merci à eux.

Sun relance Java dans la compétition des interfaces riches

Rich Green, le vice-président de la division software de Sun, vient d’annoncer le lancement de JavaFX, une nouvelle plateforme d’interfaces riches.

Nouvelle ? Oui parce que historiquement Java et sa machine virtuelle furent les premiers à se positionner sur ce créneau (les applications en ligne).

Plateforme ? Oui parce qu’elle regroupe plusieurs composants dont le toolkit d’interface graphique Swing et la langage JavaFX Script. Mais également car il existera une version mobile : JavaFX Mobile.

Interfaces riches ? Oui, nous parlons bien d’un plug-in (au même titre que Flash ou Silverlight) pour faire tourner des animations vectorielles.

Plus d’infos ici : Sun enters the Rich Internet Application world with JavaFX.

Un concurrent pour Silverlight plutôt que pour Flash

JavaFX est la réponse de Sun à Microsoft et son Silverlight. Issu de l’univers informatique traditionnel, Sun n’a ni la culture, ni l’ambition de s’attaquer à Adobe (et à ses produits). D’ailleurs, les clients et prospects de Sun ne sont pas les même qu’Adobe (et Macromedia à son époque).

En proposant une alternative simplifiée de Java, Sun espère démocratiser sa plateforme et la faire sortir du cadre de l’entreprise. D’ailleurs Rich Green le dit lui-même : This is Java for consummers, for individuals – not just enterprise, not just corporate.

Et c’est là la force de Sun : pouvoir s’appuyer sur une base de plus de 5 millions de développeurs Java et sur le soutien de partenaires de choix comme IBM, BEA, Oracle et même Google.

Petite précision : le langage Java n’a strictement rien à voir avec Javascript. Par contre, JavaFX Script sera semble-t-il très proche de Java ET de Javascript. Un compromis parfait entre ces deux mondes jusqu’alors incompatibles ? Peut-être… en tout cas certainement à terme puisque JavaFX Script sera open source. Il y a donc fort à parier que la communauté se chargera de le faire évoluer dans le bon sens.

Bref, en ouvrant (de nouveau) la porte du navigateur aux développeurs Java, Sun fait le même pari que Microsoft avec Silverlight (qui sera compatible avec la plateforme .Net) : séduire les développeurs d’applications d’entreprise et les amener sur le terrain des interfaces riches grand public.

Un pont vers la mobilité avec JavaFX Mobile

C’est avec beaucoup de clairvoyance que Sun fait d’une pierre deux coups et propose une déclinaison mobile avec JavaFX Mobile : capitaliser sur une plateforme unique et remplacer Java Mobile Edition qui semble poser des problèmes de compatibilité.

Le monde de la mobilité présente ainsi de nombreux attraits : il existe plus de 2 milliards de téléphones compatibles Java et quasiment aucun concurrent qui puisse assurer une relative compatibilité entre les systèmes d’exploitation mobiles (Windows Mobile, Symbian, Palm OS…). Voici donc une très bonne occasion pour Sun de s’implanter sur le créneau des RMA.

Cette annonce est d’autant plus importante qu’un nouvel entrant débarque sur le marché le mois prochain : Apple et son iPhone qui tournera sur un OS dérivé de Mac OS X donc d’Unix (le système d’exploitation privilégié par Sun). Cette parenté entre Apple et Sun autour d’Unix se matérialisera très certainement avec la prise en charge de JavaFX Mobile par l’iPhone. Peut-être pas dans la première version, mais sûrement dans la seconde qui sera commercialisée en Europe à la fin de l’année.

Plus d’infos ici : Sun tries again with consumer-flavored Java.

La promesse du write once, run anywhere

En proposant aux développeurs Java de pouvoir déployer leurs applications sur le poste de travail (en s’appuyant sur la machine virtuelle Java), dans un navigateur (avec JavaFX) et sur les terminaux mobiles (avec JavaFX Mobile), Sun vole la vedette à Microsoft et Adobe sur le terrain des plateformes RIA / RDA.

Encore faut-il que cette nouvelle plateforme tienne ses promesses et surtout que Sun parvienne à rassurer la communauté sur certains points d’ombre :

  • Quelles seront les caractéristiques réelles de JavaFX (performances, consommation de ressources système, stabilité, montée en charge…) ?
  • Quand sera disponible la nouvelle version de la machine virtuelle Java / JavaFX ? Sur quels systèmes d’exploitation (Mac ? Linux ?)
  • Comment cohabiterons les machines virtuelles permettant de faire tourner des clients riches (RDA) : NetBeans, Eclipse RCP, Java Web Start ?
  • Quelle va être l’accueil de l’industrie et de la communauté open source à cette nouvelle plateforme venant s’ajouter aux autres ?

Attendons et observons…

Bilan du MIX07

Et voilà, c’est la fin du MIX07 qui c’est déroulé pendant tout une semaine à Las Vegas. Alors que je suis encore en train de me remettre du décalage horaire, je vous propose de prendre un peu de recul et de faire un petit bilan de la semaine et des impacts à prévoir pour les prochains mois (années ?).

Une réorientation stratégique pour Microsoft

Je ne suis pas un habitué des conférences et autres évènements Microsoft, mais ce qui est certain, c’est que nous avons pu observer un nouveau virage dans le discours de Microsoft : Abandonner cette image de position dominante et afficher une volonté d’ouverture. Pas une seule conférence n’a été faite sans que l’on nous rassure sur la compatibilité vers d’autres navigateurs (Firefox, Opera, Safari) ou d’autres systèmes d’exploitation (principalement Mac). Les démonstrations étaient ainsi systématiquement montrées sous Windows / IE et Mac / Firefox.

Ca n’a l’air de rien, mais ceci est révélateur d’une nouvelle posture pour Microsoft qui semble avoir assimilé le fait qu’une partie des utilisateurs de l’outil informatique sont maintenant définitivement acquis au culte Apple. Il était intéressant de compter le nombre de Mac Book qui trainaient dans les couloirs ou dans la Blogger Room. Après tout, comme le dit si bien Manuel : mieux vaut un Mac avec une licence Office plutôt qu’un PC avec un logiciel piraté !

Le choc des cultures

En voulant élargir son audience aux concepteurs et designeurs, Microsoft s’aventure sur un terrain qu’il ne connait pas avec un discours qu’il ne maîtrise visiblement pas. Et effectivement on ne raconte pas la même chose à des développeurs qu’à des designeurs. Il était très facile de ranger dans deux catégories les intervenants aux conférences : les employés de Microsoft (qui parlent de code) et les autres (qui parlent d’expérience utilisateur, d’émotion…).

LasVegas9

L’écart était ainsi vertigineux entre les employés de Microsoft qui ne faisaient que de la revue de code et les autres qui essayaient tant bien que mal de nous faire assimiler des notions comme le design 3.0, l‘innovation managériale ou encore les nouveaux modèles d’agences web.

En tout cas ce qui est certain, c’est que Microsoft est bien décidé à s’implanter durablement sur ce créneau et qu’ils ont mis en place une organisation centrée sur des community managers en charge d’évangélisation (en interne comme en externe) et de fédérer.

Un nouveau marché à conquérir

Avec la gamme Expression, Microsoft s’attaque à une véritable institution où règne sans partage Adobe (et Macromedia). Quelle stratégie Microsoft va-t-il devoir mettre en place pour grignoter des parts de marché ? En fait la bonne question est plutôt : quelles concessions ? Il y a ainsi fort à parier que Microsoft ne se risquera pas à vendre ses produits à l’unité, mais plutôt à les écouler au travers des licences globales des grandes entreprises : une sorte de cerise (les outils Expression) sur le gâteau (les licences Windows, Office…).

Reste à résoudre le problème de la montée en compétence : il n’existe pas de formation aux outils Expression. Microsoft va donc devoir jouer de son influence pour que les organismes et autres écoles élargissent leur catalogue de formation ou rajoutent des modules spécifiques aux nouveaux outils de Microsoft.

Une vision transverse

Avec le langage XAML, Microsoft vise plusieurs cibles : les navigateurs web (au travers de Silverlight) et le système d’exploitation (Vista et autres à l’aide de Smart Client). En s’attaquant à la fois au marché des RIA et des RDA Microsoft essaye de prendre de vitesse Adobe qui est encore en phase de pré-lancement pour Apollo (et probablement de recyclage pour Flex).

Et ce n’est qu’un début puisque certaines conférences plaçaient les premières pierres d’une vision beaucoup plus large qui inclue également les produits d‘entertainment (Media Center, Xbox…).

Plusieurs gros chantiers à mener

Avec les annonces faites durant la semaine (et avec le repositionnement en cours), il reste un long chemin à parcourir pour Microsoft. Certes, il faut bien un premier pas, mais les équipes de Microsoft devront s’attaquer de front à plusieurs chantiers :

  • Améliorer les outils de production (la V2 de Blend est déjà proposée en beta) ;
  • Stabiliser les environnements d’exécution (à commencer par Silverlight 1.1 Alpha) ;
  • Convaincre la filière (écoles, organismes de formation, agences, freelances…)
  • Séduire la communauté (bloggeurs, forums, portails, associations et lobby…).

Ouf ! La liste est longue et Microsoft devra concentrer ces efforts pour réussir et surtout ne pas se disperser (non mais c’est quoi ces rumeurs de rachat de Yahoo!). Pour donner de la crédibilité à son action, ils se sont déjà associés à des pointures comme Avenue A / Razorfish et AKQA ou à des ultra-spécialistes comme MetalIQ ou IdentityMine.

En tout cas ce qui est certain, et je le répète volontairement, c’est que le paysage et l‘écosystème des interfaces riches est définitivement modifié.

Réflexions autour de Silverlight

Passé l’effet d’annonce, je vous propose 2 ou 3 petites réflexions sur Silverlight et la stratégie d’attaque de Microsoft.

Si l’on prend du recul sur ce qui c’est passé ces trois dernières années, il est possible de faire deux constats :

  1. Il y a eu un véritable foisonnement technologique avec une multiplication des langages et framework, mais la capacité d’adoption de toutes ces nouveautés par le marché est limitée) ;
  2. Les services ayant connu la plus forte croissance (MySpace, YouTube…) reposent sur l’exploitation de contenus audio et vidéo et sur l’utilisation de Flash comme lecteur universel.

A partir de là, Microsoft a choisi deux leviers pour accélérer l’adoption de Silverlight :

  • Les contenus vidéo qui sont particulièrement bien exploités par Silverlight (manipulation et nombreux traitements graphiques de façon native) de même que les services qui vont avec (hébergement et streaming) ;
  • La prise en charge d’un environnement de développement existant (la plateforme .Net) qui n’impose pas l’apprentissage d’un nouveau langage.

Je me permets néanmoins d’émettre des réserves sur ce dernier point. La promesse de Microsoft est la suivante : avec la nouvelle version de la plateforme .Net, vous utilisez le langage qui vous arrange le plus (C#, PHP, Python, Ruby…) et le code source est compilé pour être ensuite exécuté sur Silverlight via la machine virtuelle CLR (Common Language Runtime). On parle ainsi d’un environnement d’exécution universel (voir à ce sujet le billet suivant : The scoop on Silverlight for developers).

La promesse est belle, mais la réalité sera plus complexe : Le traducteur de la plateforme .Net saura-t-il respecter toutes les subtilités des autres langages de programmation ? Si vous avez commencé à développer en PHP ou en Ruby, pourquoi traduire tout cela avec la plateforme .Net qui est payante alors qu’il existe de nombreux framework de développement d’interfaces riches (Zend pour PHP, Ruby on Rails…) ? L’histoire nous a montré que Microsoft avait les moyens de ses ambitions, mais ils devront faire leurs preuves.

Il y a par contre une bonne nouvelle : Silverlight va à mon avis très fortement accélérer le développement de RIA dans le monde de l’entreprise (d’intranets riches ?). Adobe a fait (et fait encore) de gros efforts pour évangéliser les interfaces riches dans le monde de l’entreprise, mais c’est Microsoft qui risque de remporter la mise car Flash a très mauvaise réputation dans les grands compte (du moins pour une exploitation interne dans le cadre d’applications d’entreprise).

On peut ainsi espérer que Silverlight va créer des besoins au sein des entreprises : ces dernières disposent déjà des ressources de production (les développeurs .Net), il leur manque maintenant les ressources créatives (concepteurs d’interfaces riches). Là où les équipes créatives étaient cantonnées à la réalisation de sites web, peut-être vont-elles être sollicitées pour la conception d’applications internes sous forme de RIA ou de RDA.

Il va donc falloir s’attendre à de nombreux bouleversements dans le monde des applications d’entreprises ainsi qu’à une évolution vers des intranets 2.0 (reposant sur des interfaces riches et des services de collaboration en ligne). Pour plus d’infos, je vous recommande l’article suivant : Silverlight: The Web Just Got Richer.

Adobe libère le code source de Flex

Un nouveau séisme dans le monde des interfaces riches vient de se produire. Adobe a en effet annoncé cette nuit qu’il faisait passer son environnement de développement Flex en mode Open Source : Adobe to Open Source Flex (plus précisement en MPL).

Pour celles et ceux qui n’ont pas suivi : Flex est un environnement de développement qui permet de générer du Flash. Donc en gros, plutôt que de dessiner une interface en Flash, vous la codez. Ce principe est particulièrement intéressant dans une optique d’industrialisation où vous avez besoin de reproduire ou de faire évoluer souvent une interface. Il existait déjà une alternative open source à Flex (Open Laszlo), mais là ils doivent faire un peu la grimace… Si vous cherchez des explications un peu plus techniques, c’est ici : Evolution de la plateforme Flash/Flex.

Quelles enseignements pouvons-nous tirer de cette annonce :

  1. La guerre entamée entre Microsoft et Adobe vient de s’intensifier (voir à ce sujet : Microsoft et Adobe en concurrence frontale sur les interfaces riches) ;
  2. Adobe se rapproche un peu plus de la fondation Mozilla (voir à ce sujet : Vers un flash player en open source pour la fondation Mozilla ?), principalement pour se faire aimer de la communauté des développeurs libres ;
  3. Adobe sacrifie son fou (Flex) pour mieux sauver sa reine (Apollo), en gros ils sont en train de tout miser sur leur future plateforme de RDA (rappelons que la première version de Flex était vendu près de 75.000 €).

Voilà, c’est donc une très bonne nouvelle pour le petit monde des interfaces riches. Attendons voir la semaine prochaine la riposte de Microsoft lors du Mix 07