Les frameworks Web détruisent-ils vraiment les performances du Web ou l'expérience utilisateur?

https://web.developpez.com/actu/289435/Les-frameworks-Web-detruisent-ils-vraiment-les-performances-du-Web-ou-l-experience-utilisateur-Ils-placeraient-la-satisfaction-des-developpeurs-au-dessus-des-utilisateurs/

Êtes-vous d’avis que les frameworks, en particulier les frameworks JavaScript, aient peu à peu détruit les performances Web ou l’expérience utilisateur ? C’est là la thèse que défend un billet de blogue d’un gamer et journaliste portant le pseudo « cheatmaster30 » travaillant sur Gaming Reinvented, une plateforme pour les nouvelles et les éditoriaux sur le jeu. Il estime que ces dernières années, les performances du Web ont baissé à cause de l’avènement des frameworks Web, comme React et Vue.js, et les applications web monopage (single-page application (SPA)) qui privilégient les développeurs à l’expérience utilisateur.

C’est peut-être un sujet qui revient plus souvent, faut-il utiliser les frameworks JS ou pas ? L’écosystème JavaScript a évolué ces dernières années plus que jamais et il existe désormais des dizaines de frameworks JS front-end comme back-end. Cependant, des voix s’élèvent pour dire que JavaScript est responsable de la lenteur des sites Web, notamment le JavaScript de tiers. Selon cheatmaster30, les frameworks JS ont rendu la page Web moyenne désormais plus grande que jamais, les pages de 2 à 3 Mo étant plus courantes que jamais.

« C’est un fléau sur Internet, et beaucoup de personnes blâment les frameworks dans leur ensemble. Après tout, beaucoup de ces sites sont construits avec des frameworks JavaScript même quand ce n’est pas vraiment nécessaire (comme avec beaucoup de sites de news). Et un bon nombre d’entre eux utilisent aussi Bootstrap pour le CSS », a-t-il dit. Toutefois, selon lui, il ne s’agit pas là du vrai problème. « Je pense plutôt que le problème est l’état d’esprit des développeurs et des concepteurs dans de nombreuses entreprises », a-t-il déclaré.

Les frameworks auraient rendu les développeurs et les ingénieurs moins soucieux de leurs utilisateurs ou de leurs clients que par le passé, plaçant leur satisfaction au-dessus des usagers de leurs applications. « Je crois fermement que beaucoup de développeurs et d’ingénieurs logiciels placent leur satisfaction professionnelle au-dessus de leurs utilisateurs ou de leurs clients », a-t-il déclaré, ajoutant que c’est ce qui a conduit les développeurs vers toutes ces pratiques douteuses, ainsi qu’à un manque d’intérêt pour ce qui compte.

Par exemple, il estime que les systèmes de construction lourds comme Webpack et des dizaines de composants NPM sont utilisés pour faire gagner du temps et de l’effort aux développeurs, sans tenir compte des kilo-octets (ou même des méga-octets) de JavaScript qui s’ajoutent au produit fini. Des composants tiers sont apportés avec des quantités importantes de CSS et de JavaScript, simplement pour éviter d’avoir à construire ces composants à partir de zéro, la taille de la page étant damnée (fonctionnalités inutiles, chargement lent, etc.).

Dans d’autres cas, cheatmaster30 allègue que les développeurs choisissent d’utiliser un langage ou une technologie pour effectuer un travail simplement parce qu’elle est “cool”, et non parce qu’elle est la mieux adaptée pour faire le travail. « Regardez tous ces sites de nouvelles reconstruits comme des SPA avec des frameworks JS très résistants. Ils n’ont pas besoin d’être faits comme ça, et ils ne devraient probablement pas l’être », a-t-il déclaré. Par ailleurs, il ajoute que ces choix ne s’observent pas uniquement chez les développeurs.

Selon lui, il n’y a pas que les développeurs qui sont ainsi. Il estime que tout le monde est comme ça dans la chaîne de commandement. Les gestionnaires, les PDG, les investisseurs, l’équipe de marketing, les ventes, etc. Tout le monde veut avoir l’air bien devant ses pairs ou devant les hauts dirigeants, et tout se termine par une surcharge de travail et une lourdeur qui en résulte, ce qu’il faut changer. Le client ou l’utilisateur doit être en priorité, et non les personnes qui travaillent sur le produit ou encore l’entreprise elle-même.

De plus, dans une certaine mesure, les utilisateurs comprennent cela. Il estime qu’on le voit bien par le nombre de produits et de services “merdiques” qui finissent par l’emporter sur des rivaux plus exigeants. Toutefois, cela n’est pas le cas de tous les services. « Regardez Craig’s List. C’est apparemment moche, mais la technologie utilisée n’est probablement pas un sujet de conversation très important », a-t-il déclaré.

« Il en va de même pour Hacker News et pour l’ancienne version de Reddit ou pour de nombreux jeux populaires en général comme Minecraft ou Wii Sports ou Tetris », a-t-il ajouté. Il estime qu’aucun de ces jeux n’est particulièrement fantaisiste dans tous les sens du terme, mais ils se sont tous vendus à des millions d’exemplaires néanmoins.

« Alors, créateurs, arrêtez de vous focaliser sur votre CV ou votre convenance personnelle. Cessez de faire passer vos propres intérêts avant ceux de vos utilisateurs et de gaspiller des centaines de kilo-octets pour des choses dont personne ne se soucie. Vous n’êtes probablement pas Facebook ou Google, et vous ne devriez pas concevoir ou construire des choses comme si c’était le cas. Faites plutôt ce qui est nécessaire pour le travail et offrez une expérience que l’utilisateur aimera utiliser, avec aussi peu de ressources que nécessaire. Faites cela, et vos utilisateurs et clients vous en remercieront », a-t-il conclu.