Le mythe de l’éditeur WYSIWYG

Google a lancé hier soir Google Web Designer, un logiciel Mac et Windows permettant de créer des « designs attirants et interactifs basés sur HTML5 et des animations qui peuvent tourner sur n’importe quels appareils« . La promesse de Google Web Designer est alléchante, mais c’est en ouvrant le logiciel pour la première fois ou en lisant le centre d’aide de Google que l’on comprend mieux à quoi est destiné exactement ce logiciel.

Google Web Designer est une application web avancée construite avec HTML5 qui vous permet de concevoir et construire des publicités en HTML5 et d’autres contenus web en utilisant une interface visuelle et une interface de code intégrés.

Google Web Designer n’est donc pas un outil conçu pour créer des sites web. (Comme le disait Hajim El Attab sur Twitter, Google Ad Designer aurait été un nom plus approprié.) Pourtant, Google Web Designer me laisse le même goût amer qu’à chaque nouvel outil soit disant pensé pour la conception web. Je pense évidemment au dégoûtant Adobe Muse, ou encore à iAd Producer d’Apple (qui a au moins le mérite d’avoir un nom explicite sur sa finalité), mais aussi aux dinosaures du genre (Dreamweaver, Frontpage, iWeb). Ces logiciels s’évertuent tous à perpétuer le mythe de l’éditeur magique pour le web, et je trouve ça assez malsain.

Intégrer une page web, c’est résoudre des problèmes. Ces problèmes concernent l’adaptation d’une création graphique, l’accessibilité et l’interoperabilité d’une page, la maintenabilité du code, et la performance. Et bien sûr tout cela doit être fait dans un temps raisonnable.

Les éditeurs WYSIWYG comme Google Web Designer ou Adobe Muse ne se préoccupent que d’un seul point : la création graphique. C’est une vocation louable, mais qui se fait au sacrifice de tous les autres aspects de la conception web. Google Web Designer n’a donc aucun scrupule à générer une bannière de près de 100 Ko, puisque le seul problème que Google essaye de résoudre c’est d’arriver à ressortir graphiquement la même chose que ce qui a été fait dans l’éditeur. Et tant pis si la même bannière codée à la main aurait été dix fois plus légère.

Quand j’intègre une page web, je vais me poser des centaines de questions. Par exemple, pour du texte dans une police exotique : est-ce que j’utilise une police CSS ? (et toutes les questions qui vont avec : est-ce que cette police est utilisée ailleurs sur le site ? est-ce que le poids de la page actuelle permet de s’engraisser de la lourdeur d’une police CSS ? est-ce qu’on a la licence de droit d’utilisation de cette police sur le web ? est-ce que les coûts de cette licence rentrent dans le budget du projet ?), ou est-ce que j’utilise une image ? (et dans ce cas : plutôt un GIF, un JPG, un PNG, du SVG ? quels navigateurs doivent être supportés ? que se passe-t-il pour les autres navigateurs ?). Et ça, c’est juste un petit éventail de questions qui me traversent l’esprit à chaque fois que je fais face à une police exotique. J’ai tout un tas de questions à me poser face à n’importe quel composant d’interface. Et ce à chaque nouveau projet, peu importe combien de fois j’ai déjà intégré un élément similaire auparavant, parce que le web évolue vite, et c’est tant mieux.

Je ne pense pas que créer une interface qui permette de résoudre ces problèmes soit impossible. Mais la complexité de ces problèmes rendrait une telle interface aussi complexe que les problèmes qu’on essaie de contourner. Et même si ça peut être difficile à avaler pour certains, je suis convaincu que la complexité de HTML et CSS est un bien nécessaire.

 

  1. DEGRYSE, le

    Petit coquille à la fin : « Et même si ça *peut* être difficile à avaler pour certains »

    ;)

  2. Luc, le

    Le pire dans ton exemple c’est que Google est super strict sur la taille des publicités graphiques diffusées sur le réseau Adwords. Si l’outil ne sort même pas des bannières optimisées à ce niveau là, c’est quand même dommage.

  3. Memmie Lenglet, le

    En temps que dev Web, c’est normal de voir ce genre de produit outrepasser des choix ou de le faire de façon arbitraire (Quelle librairie JS ? Format de police ? Canvas ou CSS Transitions/Animations, etc.), mais pour certains utilisateurs le choix est vite fait. Il vont pouvoir se passer de l’étape fastidieuse de l’intégration (apprentissage ou délégation). Les questions d’accessiblilité, d’interoperabilité, de performance ne sont pas des sujets qui préoccupent ces utilisateurs là.

    Si tu cherche une interface graphique qui te permettrais de faire ton travail complètement, en supportant toutes ces subtilités et optimisations, pour l’instant ça n’existe pas.
    Si un éditeur de logiciel, perçois que ce besoin existe (je pense que c’est déjà le cas) il éditera un logiciel adéquate. Même si Mozilla à d’autres chat à fouetter (plein d’autres sujets dans les bacs) ça pourrai correspondre à ça mission.

    On utilise tous une interface graphique, pourtant on pourrai très bien faire la même chose en ligne de commande avec un résultat plus optimisé, utilisant moins de ressources (mémoire, processeur, machine moins performante, électricité, argent, etc.). Ce choix est fait pour des questions pratiques, de confort qui font table rase sur certains aspects (cf. le principe de Pareto).

  4. Ronan, le

    Un test réalisé par Sara Soueidan sur Twitter il y a quelques minutes pour créer un simple rectangle avec Google Web Designer. Le code généré : https://pbs.twimg.com/media/BVegtzqCQAA7PMX.png:large. WYSIWTF… En gros je suis 100% d’accord avec toi :)

  5. Simon Tripnaux, le

    Et après ça, les gars du search de Moutain View viennent réclamer un web léger et rapide !

  6. TOMHTML, le

    « Google Web Designer n’est donc pas un outil conçu pour créer des sites web. » => je pense que tu t’es fais un film tout seul en te basant sur le nom, Google n’a jamais affirmé ça. Au contraire, le seul et unique but de l’outil est de créer des pubs http://doubleclickpublishers.blogspot.com/2013/09/google-web-designer-beta-now-available.html
    Ça génère peut-être du code dégueulasse, mais si après les annonceurs se disent « Wow, on peut faire tout ça sans Flash ? », ça ne pourra être *que* une bonne nouvelle.

  7. Emmanuel, le

    Que ces bandeaux pub soient uniquement graphiques et inaccessibles, ça me convient très bien :-)

  8. Nico, le

    Huhu, mon graphiste vient de me montrer le code généré par « Google web designer », éclat de rire des intégrateurs. No more to say.

  9. PinGoo, le

    Le nom du soft est très mal choisi.
    On sent bien qu’ils essaient de faire des pubs CSS3/Responsive etc. Le seul avantage que peut me fournir ce genre de logiciel gratuit : évitez de me taper 10.000 lignes CSS3 pour faire une dessiner une simple courbe.

  10. Maxime Fabre, le

    J’ai une haine assez poussée des logiciels du genre ancrant dans l’idée des clients que faire un site c’est trois clics et basta. Pour une utilisation personnelle le seul qui me convainc à ce jour – s’il tient les promesses de ce que l’on voit dans la démo – c’est Macaw avec son système d’OOCSS et de code clean : http://macaw.co/

  11. Stef, le

    Merci beaucoup pour ce billet.
    Je suis graphiste, j’ai installé la béta de Google Web Designer aujourd’hui, alléchée par la promesse (et aussi parce que je suis en pleine réflexion pour choisir le logiciel de création graphique qui remplacera mon vieux Flash), j’ai fait un test d’animation pourrie et j’ai eu droit à un fichier de sortie de 48ko…

  12. Loïc, le

    Les boîtes qui ont le moyen de mettre un webdev sur la création d’une bannière de pub savent pertinemment qu’un generateur produira un truc plus dégueulasse.

    Ce genre d’outil a quand même plusieurs bénéfices :
    – permettre à des petites structures de faire des publicités sans avoir à payer un webdev pour pondre un bandeau de pub
    – permettre aux webdev d’avoir des demandes un peu plus intéressantes que des bandeaux de pub à réaliser.

    Il faut arriver à remettre chaque chose dans son contexte. Tout investissement doit être rentabilisé.
    Donc développer quelque chose dans les règles de l’art plutôt que de manière dégueulasse doit avoir un réel intérêt financier et pas simplement la satisfaction du développeur.

    Une bannière de pub entre parfaitement dans ce contexte : elle a une faible espérance de vie et doit ramener de l’argent, il n’est donc pas forcément utile de mettre en place un process qualité qui va augmenter les délais (et donc les coûts de réalisation). Ca permet également d’en produire à la chaîne à faible coup, là où le passage par un webdev correspond plus ou moins à recommencer à 0 la phase de développement.

    Bref, même si je n’ai jamais aimé les générateurs de code parce que j’aime réaliser du code de qualité, il faut quand même reconnaître qu’ils ont une réelle utilité dans certains contextes.