Pourquoi la rivalité entre HTML5 et Flash ne rime à rien

Si vous suivez ce blog régulièrement, alors vous devez nécessairement vous intéresser à minima aux technologies qui propulsent le rich commerce (oui, c’est bien de Flash dont je parle). Je n’ai volontairement jamais abordé la question du choix des technologies sur ce blog car j’estime qu’elle n’est pas pertinente. D’une part, car je le fais sur un autre blog (Pourquoi HTML5 et Flash ne peuvent être comparés et Flash et HTML5 ne sont pas concurrents) et parce que la technologie importe peu, ce qui compte, c’est l’expérience que vous allez faire vivre à vos clients et prospects. Bref, je sors de mon silence car ces derniers mois nous assistons à une authentique mise à mort médiatique de Flash. Je ne sais pas trop d’où cette tendance (manie ? perversion ?) est partie, toujours est-il qu’elle génère une sacrée polémique dont le point d’orgue est l’annonce récente de la réorientation stratégique d’Adobe vers HTLM5 et AIR plutôt que Flash sur les smartphones (Compte-rendu de la conférence Back From MAX 2011).

Si vous suivez un minimum l’actualité du web, vous avez sûrement du voir passer d’innombrables articles annonçant la mort de Flash et la suprématie de HTML5. Inutile de vous dire que je n’approuve absolument pas ces articles racoleurs qui ne sont que le reflet du manque évident de réalisme des personnes qui les ont rédigés. Dans le souhait de vous épargner une laborieuse explication technique, je me contenterais de répéter ce que j’ai déjà publié ailleurs : personne ne vous oblige à choisir entre Flash et HTML5, et certainement pas les utilisateurs, car ces deux technologies sont complémentaires. Vous pourriez me ressortir le sempiternel argument des terminaux mobiles comme l’iPhone ou l’iPad qui ne lisent pas le Flash et je vous répondrais qu’il faut être très naïf optimiste pour penser que vous arriverez à séduire vos cibles sur différents supports avec un seul site web. En ce sens, je rejoins tout à fait la position du collectif OccupyHTML : “Nous voulons avoir la liberté de choisir la technologie qui apportera la meilleure expérience aux internautes“. Pour illustrer mon propos, je vous propose de découvrir deux exemples récents exploitants Flash et HTML5.

Commençons tout d’abord avec Nissan qui vient de lancer un mini-site pour sa Juke (Nissan Juke 3D) proposant un visualisateur en 3D temps réel tournant sur la dernière version de Flash :

Le visualisateur en 3D de la Nissan Juke

Comme vous pouvez le constater, le rendu 3D est tout simplement stupéfiant (il doit bien y avoir 200.000 polygones à l’écran), incomparable avec ce que l’on avait l’habitude de voir il y a quelques années (cf. Le B-A-BA de la 3D dans Flash). Certes, l’animation est longue à charger, mais le rendu photo-réaliste vaut largement l’attente.

Est-ce qu’il serait possible de réaliser ce genre de chose avec HTLM5 ? Oui, mais en utilisant WebGL, un standard supporté par une minorité de navigateurs (les dernières versions de Chrome et Safari). Est-ce qu’il serait possible de réaliser une application équivalente sur iPad ? Oui en compilant la scène 3D dans une application distribuée via l’App Store comme il en existe déjà (Le rich commerce à l’assaut de l’iPad). Est-ce que le transformation serait plus élevé avec une application HTML5 plutôt que Flash ? Non, bien sûr que non, ça n’a rien à voir.

Deuxième exemple avec Honda qui propose un mini-site très rigolo (The Experiment) mettant en scène différents objets de notre quotidien qu’il est possible de combiner pour provoquer des réactions en chaine :

Expérimenter l'inconnu avec Honda

Est-ce qu’il serait possible de réaliser ce genre de chose avec Flash ? Oui, mais puisque ça fonctionne bien en HTML5, autant le faire comme ça. Est-ce qu’il est possible de réaliser une application équivalente sur iPad ? J’en doute, car ce mini-site se manipule à la souris, il faudrait revoir l’interface pour l’adapter à un écran tactile. Est-ce que le transformation serait plus élevé avec une application Flash plutôt que HTML5 ? Non, bien sûr que non, ça n’a rien à voir.

Au final, comme vous pouvez le constater, Flash et HTML5 sont des technologies offrant des possibilités différentes et induisant des contraintes différentes. Les deux se complètent très bien et ne vous forcent en aucun cas à choisir, car la solution universelle n’existe pas. Ceux qui prétendent le contraire ne se sont pas réellement penchés sur la question. Je referme donc cette parenthèse technique pour me concentrer à nouveau sur les usages et les expériences.

10 commentaires pour “Pourquoi la rivalité entre HTML5 et Flash ne rime à rien”

  1. Posté par Denis G. a dit : le

    Bonjour Frédéric,

    puisque tu ouvres une parenthèse, je me permets d’y faire un crochet.

    Je fais parti des ces auteurs d’articles qui se pose la question sur l’avenir de Flash (http://bit.ly/vSKVwa), surtout depuis l’annonce d’Adobe d’abandonner le Flash sur Mobile, qui suivait l’annonce du rachat de PhoneGap. Je ne cherche pas à justifier mes propos, mais simplement à apporter une réflexion complémentaire à ton article.

    Comme tu le dis, la plupart des animations Flash actuelles pourraient être réalisées sans Flash, grâce au HTML5 et l’usage de différentes technologies type webGL. Le WebGL n’est pas encore un standard, par contre il s’appuie sur openGL qui lui est standard. Et le HTML5 lui même n’est pas encore normalisé. Donc, actuellement je partage ton point de vue, Flash a encore toute sa place dans l’enrichissement des interfaces utilisateurs, malgré son incompatibilité avec iOS.

    Mais le web et les technologies associées évoluent à toute vitesse. Et se poser la question de l’avenir de Flash n’est pas une aberration. Dans un usage professionnel, dans une logique d’industrialisation de production, dans un soucis de réduction de coût tout en s’adaptant à tous les devices (web, msmartphone, TV interactive, consoles, tablettes, inCar, …), il est préférable de ne pas avoir à démultiplier les productions. Et là, le HTML5 présente déjà (bien que non finalisé) un très gros avantage sur le Flash. Il est lu parfaitement par tous les devices. Et la gestion des évènements selon le device (un clic, un touch, ou autre) est déjà intégrée dans des librairies javascripts (Dojo ou autre).

    Pas plus tard qu’aujourd’hui, Google vient d’annoncer pour T1 2012 que Chrome supporterait en standard des périphériques tels que webcam, micro et joypad, grâce au protocol open source WebRTC. Nul doute que Firefox et IE vont l’imiter rapidement et que ce protocole s’ajoutera au HTML5 sous peu. Et ce n’est qu’un début.

    Pour conclure ce point de vue, la principale crainte que j’ai pour l’avenir de Flash, c’est son modèle fermé, là où le HTML5 est ouvert et donc plus évolutif. Si Adobe commence déjà à abandonner certains développement (le mobile aujourd’hui), on peut se poser de vrais questions sur son avenir dans 1 ou 2 ans.

  2. Posté par Julien a dit : le

    Vous faites ici un cas d’une application puissante et dédiée à un but précis. Dans le cas précis de simples bannières rotatives ou animées sur des sites internet (ou le Flash est alors couplé au HTML), le HTML5 est beaucoup plus conseillé pour permettre d’être vu aussi bien sur un ordinateur que sur un smartphone ou une tablette et ne pas proposer une expérience tronquée sur certains terminaux.

    Avoir plusieurs sites/applications pour un même contenu oblige à répercuter les mise à jour sur chacune de ces plate-forme. Est-ce que ces mises à jour sont contre-productives et gourmande en temps ? oui, et pour ça, il faut évidemment se débrouiller pour tendre vers les technologies les plus universelles possible.

    Pour le reste je suis d’accord avec vous, peut importe la technologie, ce qui prime c’est l’expérience utilisateur.

  3. Posté par john a dit : le

    C’est bien superficiel comme analyse… Il manque le mot “WebGL” dans cet article.

  4. Posté par wiko a dit : le

    je suis tout à fait d’accord avec le propos par contre après avoir fait des test de performance et de compatibilité les perf de HTML5/JS/Webgl sont au mieux ridicules :
    scroll saccadé,
    compatibilité navigateur quasi inexistante (l’implémentation de HTML5 est anarchique),
    les performances des consoles JS suivant les navigateurs sont très hétérogène,
    et enfin le plus gros pb sur mobile cité par Apple la consommation d’energie et de ressources de flash … et bien JS/HTML5/WebGL fait pire.
    Je parle bien-sur “d’application” rich.
    le futur du rich est peut -être html5 mais son présent et pour un moment est bien Flash

    que celui qui a développé pour blackberry me jette la première pierre.

  5. Posté par coreygraphe a dit : le

    A noter également que les Moteurs d’aide au choix e-commerce sont souvent en flash (Darty, Fnac, …) C’est le moyen le plus simple aujourd’hui sur un site de “plugger” ce type de moteur sans un développement dit lourd.
    Idem pour une visibilité des medias vidéos & sons.
    Il reste le problème des mobiles, en effet, car si flash permet autre chose que le HTML5 l’idéal serait qu’il soit lu sur les smart phone. L’idéal étant la lisibilité par tous comme pour les applis html pour mobiles au lieu d’applis par type/marque.

  6. Posté par Frédéric CAVAZZA a dit : le

    @ Denis G. > Je me permettrais de modérer vos propos : “la plupart des animations Flash actuelles pourraient être réalisées sans Flash, grâce au HTML5″, certes, mais il restera toujours une catégorie d’animations qu’il sera beaucoup plus compliqué de réaliser avec HTML5.

    Je répète ce que j’ai déjà dit ailleurs, ce n’est pas parce que HTML5 va “récupérer” les 3/4 des choses qui étaient faites en Flash que cette technologie va disparaitre. Quicktime (plugin propriétaire de Apple) existe depuis 10 ans sous le radar et ça ne dérange personne.

    @ john > Heu… en fait si, je mentionne WebGL.

    @ wiko > Très juste, javascript pose également de très gros problème de performance et de consommation d’énergie sur les smartphones, ne l’oublions pas.

  7. Posté par Jérémie a dit : le

    Je pense que la seule vraie question est «pourquoi le modèle “full flash” a périclité?».
    Pour ma part je pense que les sites immersifs (je ne parle pas des Apps) sont une reminiscence du CD-ROM et qu’ils vont simplement à l’encontre de l’internet.
    L’intérêt majeur du net est sa capacité de réseau et de dynamique de l’information
    or la plupart des sites flash sont des objets tape à l’œil et statiques qui n’en tirent pas parti.

    Pourquoi alors ce type de platform a-t-elle été solicité jusqu’ici?
    - L’annonceur est encore trop souvent habitué à une communication à sens unique. (limite biblique: «Voici mon message»)
    - Certains graphistes pensent encore que l’html bride leur créativité. (Alors que justement tout l’enjeu du designer est là, savoir jouer des contraintes). C’est aussi une maniere pour eux de rester sur un créneau esthétique sans rentrer dans le fonctionnel.
    - Les commerciaux ont plus de facilité à vendre cher un gros site avec plein d’effets.
    - Seul l’impact immédiat est pris en compte par l’annonceur pas de réelle politique à long terme de leur image sur internet.
    - Les décideurs sont trop vieux et ne sont pas au fait des nouveaux usages.
    - Il n’existe pas encore de formations pertinentes.

    «Combien de personnes vont au bout du parcours utilisateur? Combien de temps restent-elles sur le site? Ont-elles trouvé l’information qu’elles cherchaient? La marque a-t-elle réussi à faire passer son message?» sont autant de questions que personne n’aborde vraiment et qui pourtant me semble essentielle.

    En tout cas utiliser du HTML5 pour faire du “flash like” n’a il me semble pas plus d’intérêt (la technique doit être au service de la fonction par l’inverse). Il faut faire évoluer les modèles et proposer des sites ludiques mais en phase avec le média internet.
    Et surtout arrêter de faire des vitrine à 500 000 euros sur lequel les gens reste 5s et sans jamais revenir.

    PS: En terme d’animation
    SVG (http://raphaeljs.com/)
    CSS transition via css3

  8. Posté par Dominique, webshaker a dit : le

    Je pense effectivement que flash et HTML5 ne sont pas ennemis.
    Par contre, ils ont une bonne partie d’applications “mitoyennes” ou l’un comme l’autre peuvent être appliqués efficacement.
    Et pour cette partie commune (où ils sont tous les deux efficaces, l’emploi de HTML5 est préférable.
    D’autre part, Flash a petit à petit tendance à disparaître (mais c’est loin d’être fait), parce qu’il a des inconvénients indéniables ET une mauvaise réputation (compliqué, lourd).
    Il est très peu probable qu’il disparaisse complètement, mais il sera cantonné à un domaine réduit, où il est réellement unique, ce qui me paraît normal.

  9. Posté par Ced a dit : le

    http://www.nissan-stagejuk3d.com/ => You need the latest Adobe Flash Plugin to enjoy this. >Install Flash Player 11.

    Rien que ça, pas besoin de commentaire. Je n’ai juste pas envie de me faire ch.. à attendre 10min à installer une nième version pour visualiser le site.
    Pour info, depuis prêt d’un an maintenant, tous les navigateurs sont à jour automatiquement sans action aucune de l’utilisateur.

    Pour webGL, ça fait bien longtemps que Firefox le gère (la v4 était compatible, mais il fallait l’activer). En france, FF dépasse de peu IE depuis le mois dernier, et Chrome est pas loin derrière. Donc plus de 60% des utilisateurs utilisant un navigateur compatible.
    http://madebyevan.com/webgl-water/ => oui, je pense que le site de Nissan est amplement faisable en webgl (même si je n’ai pas pu le voir).

    Flash reste le bon outil 3D car présent sur 99% des ordinateurs, et c’est vers cet univers qu’Adobe se dirige pour continuer de le faire vivre. Mais il ne faut pas dire que ce n’est pas possible sur HTML5.
    Je suis d’accord pour dire que Flash va se différencier, à l’avenir, de ce que fait HTML5, mais dire que les deux sont incomparables aujourd’hui n’est pas vraiment juste à mes yeux. L’utilisation qui est faite de flash par le marketing est complètement réalisable en Canvas/JS/CSS3. Les deux ne se complètent pas du tout, elles sont concurrentes, avec un esprit différent (format ouvert VS commerciale). Si Adobe change de cap pour Flash (jeux 3D en ligne), ce n’est pas pour rien.

    “A noter également que les Moteurs d’aide au choix e-commerce sont souvent en flash (Darty, Fnac, …) C’est le moyen le plus simple aujourd’hui sur un site de « plugger » ce type de moteur sans un développement dit lourd.”

    Houlalala, je vous arrête tout de suite. Ne vous basez pas sur des sites franco français ayant 10 ans de retard. Beaucoup de solution, notamment anglo-saxonne ou américaine, existent dans le domaine de moteur ecommerce en JS pur. Simple, rapide, elles permettent de faire autant que la Fnac, sans avoir à ouvrir le plugin lourd de flash. Depuis l’avènement de XHR et du “web 2.0″ on est plus vraiment contraint de se mettre au Flash pour ce genre de site. J’ai pu bosser sur des projet de magasins 0% flash avec un bon paquet d’animations, il y a 5 ans maintenant (basés sur Prototype/Scriptaculous) et ça marchait déjà vraiment bien.
    Je rependrais les propos de Jérémie : la technique doit être au service de la fonction par l’inverse. Dans le cas de Darty ou autre, on est en plein dans le contraire…

  10. Posté par herdo a dit : le

    Le vrai problème est l’utilisation de flash.

    Presque aucun web designer n’a jamais compris à quoi il servait réellement et vers quoi il a évolué.
    Ceux qui faisaient des sites en full flash étaient autant dans la réalité du web que ceux qui maintenant, annoncent sa mort face à un langage à balises.

    Flash a été développé à la base pour permettre la réalisation d’animations complexes avec un poids (Kb) réduit, ce que le gif animé ne permettait pas.
    Quand Macromédia a intégré du code (script) c’était pour permettre de ne pas devoir jongler en plus avec du javascript. Et là on a vu pousser une quantité affolante de sites tous plus inutiles les uns que les autres qui permettaient de montrer ce que le script pouvait faire. On avait droit à des site d’effets, des drag drop, du zoom, des liquéfactions, de la fausse 3d ou encore des boutons pour changer la couleur du site en live…

    Tous ces sites fait entièrement en flash dans l’unique but d’avoir un bouton animé ou un slider d’images étaient des aberrations et nous n’avons pas eu besoin d’attendre le saint HTML 5 pour y pallier. Les librairies Javascript DOM puis AJAX ont rapidement aidé à ce que cette erreur ne soit plus commise.

    Entretemps l’ActionScript a évolution vers l’orienté objet et n’avait plus de script que le nom. Actuellement il s’agit d’un langage OOP de bas niveau aussi puissant que du Java (par ex).
    Il sert à réaliser des applications et des moteurs complexes, ce que l’HTML5 ne peut pas faire.

    Et comme le disait Frédéric, il est tout à fait dans les attributions de flash de réaliser un dessin animé ce qui est impossible en HTML 5.

    Le problème de flash c’est qu’il n’est pas supporté par Apple. Apple a peur (à juste titre) de voir apparaître un Flash Store voir pire un Free Flash Store. De plus, on parle, actuellement, d’Apple comme si c’était le seul constructeur de smartphones ou de tablets pc et de (feu) Steve Jobs comme un génie tel qu’on le dit avoir surpassé Einstein ou Edison. Adobe ne veut probablement pas se lancer dans une cause perdue…