Pourquoi HTML5 et Flash ne peuvent être comparés

Ces dernières semaine j’ai vu passer un certain nombre d’articles qui annonçait la mort prochaine de Flash avec l’avènement de HTML 5. Je dois bien avouer ne pas du tout comprendre cette « polémique » dans la mesure où ce sont deux technologies qui ne peuvent pas réellement être comparées. A la limite nous pourrions peut-être comparer les usages que l’on peut en faire (au travers des applications) mais là encore c’est très limité.

Avant toute chose remettons tout de suite les choses à leur place : Flash est aujourd’hui déployé sur près de 99% des ordinateurs, alors que HTML5 n’est supporté que par les navigateurs de dernière génération qui représentent à peine 10% du marché (et encore…). Vous pourriez me dire que les parts de marché de ces fameux navigateurs progressent vite, mais il faudra sûrement une décennie avant que HTML5 devienne un standard de facto (pénétration supérieure à 90%). Il est donc important de préciser que de toute façon ce débat n’a pas lieu d’être pour une simple raison arithmétique.

Mais revenons aux usages : Flash est à la base prévu pour faire tourner des animations vectorielles mais au fil du temps nous lui avons trouvé toutes sortes d’usages comme les jeux, les applications, la 3D ou encore les players multimédia (musique et vidéo). Nous avons récemment vu l’émergence du SublimeVideo Player, un lecteur vidéo en HTML 5 qui semble très bien fonctionner, mais est-ce une raison pour annoncer dès maintenant le remplacement des Flash player ? Non pas réellement, d’une part pour des raisons de performance (cf. Does HTML5 Really Beat Flash? The Surprising Results of New Tests) et d’autre part car les players de dernières générations ne font pas que jouer de la vidéo, ils peuvent aussi rajouter des sous-titres, de la publicité contextualisée et même adapter la résolution au débit. Et c’est bien sur ce dernier point que les placers vidéo en HTML5 ont de gros progrès à faire, surtout comparés à des technologies comme Flash ou Silverlight qui sont capables de faire de l’adaptive streaming mais aussi du smooth streaming (cf. Sorry, HTML5 Crowd, Flash Ain’t Dead Yet).

De même, HTML5 va apporter beaucoup de choses pour les applications en ligne avec le stockage local des données… mais est-il bien réaliste d’envisager des applications de retouche photo / audio / vidéo (comme la suite Aviary) en HTML5 ? Signalons aussi que Flash n’est que le dernier maillon d’une longue chaine : Flex propose en effet un environnement de développement tout à fait mûr pour développer et maintenir des applications métier.

Il y a aussi le cas particulier des applications mobiles (cf. The Future of Web Content – HTML5, Flash & Mobile Apps) où HTML5 peut apporter des choses intéressantes… tout en présentant de grosses limitations par rapport aux applications natives. Mais là encore, une solution de Rich Mobile Application comme AIR va mettre tout le monde d’accord.

Autre élément important à prendre en compte, derrière Flash il y a aussi tout un écosystème d’agences, de SSII, de développeurs indépendants, d’organismes de formation et de clients qui ne sont pas prêt à abandonner Flash pour relever l’exploit technique de l’HTML 5. Même s’il s’agit d’une technologie propriétaire, la Flash Platform a su faire ses preuves. En définitif je pense qu’il n’est pas faux de dire que ce débat n’existe que par la volonté de 2 ou 3 blogueurs / journalistes en mal de sujet fort et de visites facilement gagnées avec des titres accrocheurs.

Néanmoins je pense que pour aborder cette question et faire un choix en toute objectivité il y a deux critères essentiels :

  • Le ROI (quelle solution est la plus viable en terme de coûts de développement / intégration / maintenance ?) ;
  • L’expérience utilisateur que vous aller proposer à vos visiteurs (qui se moquent éperdument de la technologie employée).

Le pire dans ce débat à la noix c’est que vous n’êtes et ne serez jamais obligé de choisir entre ces deux technologies : Rien nous vous empêche d’utiliser les deux pour optimiser le ROI et l’expérience. Sur ce point là je rejoins tout à fiat l’avis de Dan Mall (Flash and Standards: The Cold War of the Web).

Fin du débat.

63 commentaires sur “Pourquoi HTML5 et Flash ne peuvent être comparés

  1. @ Labostella > Oui tout à fiat, Flash progresse plus vite que HTML5 car le processus d’innovation / décision est beaucoup moins laborieux.

    Oui également sur le fait que le W3C ne gagne rien à « tolérer » Flash alors qu’Adobe gagne tout à exploiter HTML5 dans ses produits.

    @ Vincent > Oui tout à fiat, il y a une dimension sémantique à prendre en compte. Je pense pouvoir trancher sur ce point en disant que de toute façon Flash n’est pas fiat pour gérer du contenu texte et qu’il n’y a aucun intérêt à sémantiser une interface riche de type configurateur. Donc sur ce point là chacun reste à sa place.

    /Fred

  2. @ Vincent
    je suis tout a fait d’accord avec toi: le fait de choisir une techno ne dois pas pour autant faire sortir l’utilisation du Web de sont domaine de compétence, et la sémantique en est la partie la plus visible.
    Par contre le fait de produire du RIA dois aussi s’inscrire dans le projet d’un navigateur comme tout le reste de visuel deja en place.
    Le vrai problème, c’est que les pages web deviennent de plus en plus interactive et demande de plus en plus de programmation … et en ce domaine ca change de l’utilisation classique des hypertexte.

    Il faut donc que les RIA soit :
    – référencé correctement (meme si le microbloging remettra sans doute en cause l’intérêt d’être absolument référencé par google)
    – interactif tout en utilisant les lien hypertexte (pourquoi toujours rester dans une zone réservé dans une pages, comment donner acces direct a une partie d’un programme interactif)
    – peut lourd: le but n’est pas d’avoir une machine de gamer pour pouvoir savoir a quel heure est le dernier film 3D pres de chez sois !

    C’est pour cela que j’ai crée mon propre plugin pour faire des site en 3D.
    http://www.modddjo.com

    (d’ailleurs j’aurais préféré ne pas utiliser de plugin mais techniquement il n’y a pas de techno assez rapide)

    PS.: ceci est une beta, soyez indulgent !

  3. @mekal

    je ne vois pas ce qui est infaisable en flash dans ta démo…

    on peut faire des lecteurs vidéo avec des logiciels gratuits comme flashDevelop par exemple!

  4. A la lecture de ce post, je comprends que beaucoup de personnes ont intérêt à nier que HTML5 peut ponctuellement remplacer (et à terme totalement?) flash. C’est compréhensible: flash, techno propriétaire, avec un coût de formation, un customer lock-in.

    Dans ce débat, HTML5 arrive comme une technologie disruptive. Pas parce qu’elle fait ce qu’on ne savait pas faire avant, mais plutôt parce qu’elle le fait de manière ouverte. N’importe qui peut rajouter une balise vidéo à une page, sans acheter le quelconque outil de développement flash.

    Certes HTML5 ne sait pas faire certaines choses, ou le fait moins bien que flash. En particulier les codecs videos restent un problème. Mais très vite ces points vont disparaître et arriver au niveau voulu.

  5. Sûr que le sujet est plus que chaud

    Le avis de chacun sont intéressant, personnellement, je pense qu’un développeur doit avant tout s’adapter, si demain ça n’est plus flash mais HTML5 ou silverlight ou je-ne-sais-quoi-d’autre, les développeurs s’adapterons

    En revanche, il faut bien avouer qu’à l’heure actuelle il n’existe pas d’IDE sérieux pour mettre le développement en ajax à la portée de tous

    Lire une phrase du genre « avec HTML 5 tout le monde pourra facilement utiliser de la vidéo » me fait sourire, ou plutôt le mot facile me fait sourire

    Développer un site HTML+CSS+PHP devient vite lourding avec la compatibilité des navigateurs …. et coder en javascript …. à croire que ceux qui adorent ça n’ont jamais utilisé de langage de programmation autre que l’assembleur ….

    Si demain, une boite sort un IDE simple, avec un langage de programmation robuste qui génère des pages web, alors là, je pense que flash va disparaître … A moins que l’avenir de flash soit là !

    Pour conclure je dirais qu’il est inutile de se déchirer pour ça, il faut plutôt rester curieux et s’adapter .. après tout c’est comme ça que l’homme survie depuis la nuit des temps non ?

  6. Bonjour à tous.

    De mon coté je constate que les smartphones (5% du trafic internet) on beaucoup de mal à gérer le flash (android à une appli spécifique pour youtub).
    Apple ne le gére pas.
    Les netbook on du mal à afficher les video en flash.
    La conjonction de ce consta avec l’arrivé de HTML5 (surtout canvas et video) fait mal à Adobe.
    Je n’ai rien contre adobe, mais il doivent réagir trés, s’ils veulent rester un acteur important du net.

  7. @ switcherdav >  » un IDE simple, avec un langage de programmation robuste qui génère des pages web », tu parles de Google avec GWT ?

    @ valckar > Oui tout à fiat, Adobe a intérêt de redresser très vite la barre pour alléger son player et sa portabilité sur les différentes plateformes pour ne pas se faire distancer.

  8. 1. Le sdk flex est gratuit et open source, et permet de développer sur des logiciels gratuits comme flash develop. Le développement d’applis flash ne nécessite donc aucun coût.

    2. il est normal que flash ne soit pas encore bien implémenté sur smartphone (comme android) puisque le lecteur flash 10.1 est encore en beta. C’est ce lecteur qui est destiné aux mobiles car plus léger, plus rapide et permet l’accélérométrie et le tactile.

  9. Pour qqn qui ne joue pas, HTML5 conviendra le 99% du temps lorsque l’on pourra lire toutes les vidéos sur Youtube et Daily motion.

    je n’ai rien contre Flash, mais vu qu’Adobe ne daigne toujours pas sortir une version 64bits pour Windows, je ne l’utilise quasiment pas.

  10. Les smartphones n’ont pas de mal avec le Flash, vraiment pas du tout, par exemple les mobiles Nokia utilisent Flash en natif pour les fonds d’écrans animés, et ce depuis au moins 5 ans.

    Les netbook n’ont pas de problème avec Flash, je suis développeur senior Flash, je fais des choses très gourmandes et je bosse sur … un netbook.

    Il n’y a pas vraiment de lutte open-source vs. closed-source : j’utilise 90% d’outils open-source, Adobe supporte pleinement l’open-source, les sources du Flash Player ont été ouvertes et fournies à la fondation Mozilla (projet Tamarin), les compilateurs sont ouverts depuis longtemps (Flex SDK), le format .swf est ouvert depuis encore bien plus longtemps.

    La seule chose à ne pas être ouverte, c’est l’IDE Flash utilisé par certains graphistes.

    Le flamebait « open-source vs. closed-source » a été énoncé par Steve Jobs, qui est à l’origine de tout ce troll. Comment une boite comme Apple, vendant du matériel propriétaire, incompatible avec tout, mettant en place un canal de distribution totalement propriétaire et verrouillé (l’AppStore) peut-elle détourner l’attention sur son côté « Evil » ? Simplement en affirmant l’inverse.

    Les balises canvas, video ont justement été introduites par Apple dans la spéc HTML5.

    Défendre HTML5 de manière presque religieuse (car techniquement/financièrement, ce n’est pas viable/mainstream avant longtemps), c’est en réalité défendre Apple.

    Google vient d’annoncer l’intégration par défaut de Flash dans Chrome/ChromeOS. Qui est « standard » et qui ne l’est pas ?

    Si Apple, la boite la plus « evil » à l’heure actuelle, qui tente de transformer le Web en distributeur d’applis payantes et reviewe/censure systématiquement les App de l’AppStore, s’auto-proclame « respectueux des standards », et quelqu’un arrive à y croire et à les défendre ?! C’est obscène de bêtise et d’aveuglement.

  11. @ Fonzi > Est-il bien correct de réduire l’usage de Flash à la vidéo en ligne ? C’est en réalité bien plus vaste que ça.

    @ frangois > Ouf, je me commençais à me sentir seul ! Difficile de s’y retrouver avec ces gros éditeurs (Adobe, Apple, Google) qui verrouillent certains aspects de leur business avec du 100% propriétaire mais contribuent au mouvement open source en même temps. Aucun n’est ni blanc ni noir, ils sont tous gris.

  12. Au final, la déclaration éhontée de Steve Jobs visant à confirmer qu’il verrouille sa plate-forme (Flash = gratuit = concurrence à l’AppStore, donc pas de jeux en Flash sur iPad) prend des proportions tenant du délire collectif.

    le HTML 5 est un troll, c’est un fait :
    – techniquement, le HTML 5 n’existe pas, ça ne tourne que sur des betas/nightly builds,
    – financièrement et commercialement, le HTML 5 n’existe pas, c’est un projet du W3C, donc avec un cycle de validation/release extrémement long, XHTML 1.0 a été spécifié en 2000, en 2010 il n’est pas encore THE standard, loin de là.
    – niveau RH : il n’y a pas de developpeurs HTML 5, il n’y a que des in-té-gra-teurs. Des gens chez qui les notions basiques du paradigme objet sont très floues, qui mettent en forme du XML et se déclarent « codeurs ». L’intégration HTML est fondamentalement différente du développement d’applications (riches). Ce n’est pas le même métier, pas du tout les mêmes compétences. Le HTML ne peut pas devenir une plate-forme de développement RIA avant longtemps à cause de ça. On ne peut pas former tous les intégrateurs HTML au développement d’applications en un clin d’oeil.
    – Javascript, un langage de développement de RIA ? Soyons sérieux, c’est obscène comme idée: ça gère même pas les types de variables, c’est un jouet, ça sert à valider des combo-box et à faire de petites anims, pour faire tourner des matrices en 3D c’est un peu léger.

    Ce genre de troll ne peut exister que sur le Web:
    – tout le monde se considère expert,
    – les vrais experts sont contestés, puisque leur discours, différent de la masse, les assimile à des néophytes,
    – il y a une relation affective complétement délirante entre un geek moyen et certains concepts, on peut parler de « religiosité » confinant à la psychose, pour ce qui est par exemple des fans d’Apple (des gros PC sous Intel/linux vendus 2 fois le prix), de Linux (6% du marché, les boutiques d’infos accueillent à bras ouverts tous les samedis des gogos qui se sont fait installé Linux comme OS par un parent/ami), des « standards » du Web (franchement, aucun gros site n’est valide W3C, who cares? A Haïti des enfants mangent des galettes de boues pour survivre)
    – c’est de l’immateriel, donc les commentateurs sont plus enclins à se lâcher (par exemple, au lieu de dire « c’est une nouveauté », on passe directement à « la concurrence est morte » sans rationnaliser)
    – certains profitent de tout ça : titres de blog posts retentissants = plus de visites = plus de sous

  13. @ frangois > Houlala on se calme avant que ça ne parte justement en troll.

    Oui HTML5 n’est pas encore finalisé, mais les groupes de travail (qui ont été initiés par des éditeurs puis réintégrés au sein du W3C) ont la ferme intention de ne pas reproduire les erreurs du cycle de validation de l’XHTML. Les specs définitives sortiront vraisemblablement dans le courant de l’année.

    Développement et intégration sont en effet deux métiers différents avec une approche différente. Mais qui sait coder en HTML sait déjà faire de l’HTML5, il suffit juste d’un peu de rigueur (ce dont n’importe quel être humain motivé est capable).

    Javascript n’est effectivement pas un language aussi rigoureux que les autres, mais il est un composant essentiel du web (rien que pour ça il ne faut pas le mépriser). Il existe des framework comme GWT qui visent justement à apporter de la rigueur et à exploiter le meilleur des deux mondes (JS et Java). Pour finir je dirais qu’une application en ligne ne doit pas nécessairement fournir une interface très sophistiquée, SalesForce a révolutionné l’industrie avec des tableaux et des formulaires.

  14. « Javascript, un langage de développement de RIA ? Soyons sérieux, c’est obscène comme idée: ça gère même pas les types de variables, c’est un jouet, ça sert à valider des combo-box et à faire de petites anims, pour faire tourner des matrices en 3D c’est un peu léger. »
    => en parlant de troll, en voilà un beau… :-/

    AMHA, le HTML5 va remplacer rapidement Flash pour la vidéo, sous réserve que les Youtube & co jouent l’oeuf (la poule, l’oeuf, tout ça).
    Ca sera un grand pas en avant :
    – Utiliser un plugin d’animation vectorielle pour afficher des vidéo, c’est un pis-aller qui ne s’est imposé que parce qu’il n’y avait pas mieux.
    – Sur les plateformes type netbook, les vidéos flash sont illisibles la plupart du temps car terriblement saccadées. Et ce type de machine est appelé à se développer.

    Comparer HTML5 et Flash est effectivement un non-sens, car on ne peut pas réduire Flash à la vidéo.
    Mais le jour où Flash aura perdu la vidéo, et se sera effectivement replié sur son métier d’origine (ie. animation vectorielle), sera-t-il toujours aussi incontournable ? Je ne le crois pas :
    – L’époque des sites full flash et des animations d’introduction semble révolue.
    – Jouer ? Pour la 2D ok, mais en 3D le portage de Quake 2, par des types de chez Google, sur des technos standards laisse augurer quelques changements de ce côté…
    – et puis quoi ? des pubs ?
    Sans vouloir être de mauvaise foi, je ne vois pas d’autres usages, du moins rien qui ne puisse être remplacé par du HTML+CSS+JS.
    Mais corrigez moi si je me trompe.

  15. @frangois, tu dis que javascript est un jouet ? Et qui pourtant est capable de faire tourner le moteur de Quake II
    à l’aide de WebGL, et il y a même toute une API pour les canvas 3D…
    Quand aux entreprises elles ne font que s’adapter à la « tendance ».

    Html5 passionne et que certains restent sous flash si ça leur convient, les autres avancent et apprennent à découvrir
    de nouveaux outils qui ne seront pas forcement la pour en écraser d’autres, mais qui dans tous les cas en satisferont
    beaucoup d’entres nous.

    Quand au reste de ton commentaire… ça n’en vaut même pas la peine^^

Laisser un commentaire