Tout pour le (navigateur) client

Lorsque j'ai commencé à travailler, je créais des pages avec NetScape Composer. Je pouvais la copier où je voulais. Le CSS était balbuliant à l'époque, le javascript inexistant. Pour progresser, je devais apprendre un langage serveur, lequelle me permettrait de rendre mes pages dynamiques. En soumettant une URL au serveur, celui-ci interrogeait sa base de données, et renvoyait la page remplie, complétée, terminée.

Avec la concurrence, les développeurs visent les pages qui se chargent le plus rapidement possible. Google les a éduqués en ce sens. Maintenant qu'ils ont une pléthore d'outils à disposition (préprocesseurs, moteurs de templates, routeurs, API, programmation événementielle), ils s'en servent pour... générer un site statique.

La boucle est bouclée.

J'ai l'impression de revenir à la simple page html, vingt ans et quelques en arrière. Malgré tout, la page statique n'a rien à voir avec une création humaine : pas de sautes de ligne, concaténations de javascripts générés pour crééer dynamiquement du markup ; même si tout le code est lisible, le lire avec nos yeux d'humain devient une gageure. Heureusement, le navigateur la décrypte à la vitesse de l'éclair.

Les serveurs n'ont pas disparu. Ils sont maintenant encapsulés par des services qui s'ouvrent sur le monde avec une API, moyennant finances. De la géolocalisation à la police typographique, en passant par les icones, l'authentification ou la météo, les fonctionnalités majeures sont externalisées à ces boîtes noires expertes dans leur domaine et limitées dans leur spectre d'action. Applications et sites internet deviennent des agrégats de services présentés par un front-end polymorphe, qui s'adapte en fonction du device qui l'affiche.

Aves les contraintes écologiques, les partisans d'un web plus lent se passeraient bein de toutes ces API. Avec le protocole Gemini, ils créent des capsules de texte qui ressembleient aux newsgroup d'antan, avec des échanges textuels classés par date. On peut imaginer les hébervger sur un serveur alimenté à l'énergie solaire, comme dans un roman solarpunk. Au-delà de l'anecdote, ces pratiques visent à nous faire réfléchir sur nos usages du web. L'omniprésence de la vidéo comble le marketing et sert de divertissement, tandis que la qualité des échanges perd des points. A l'origine outil d'échange et de réflexion, Internet est devenu un vecteur de divertissement et de partage d'opinions, catalysés par les sites dit sociaux dont les algorithmes avantagent la querelle et les clashs. Les networks où un milliard d'invididus se connectent chaque jour sont moins sociaux que sociologiques, moins émancipateurs qu'agrégateurs. Parmis les moins enthousiastes à ces nouveautés constantes, une petite partie des utilisateurs essaie de résister, de faire ressurgir la nostalgie du web de Tim Berners-Lee (un de ses papas).

Que les pages internet soient gourmandes ou frugales, la conception a rebasculé vers le navigateur, le programme chargé d'afficher le contenu. Les bugs, quand il y en a, naissent des différences entre les systèmes, les tailles d'écran, les logiciels qu'utilise l'internaute. La tendance à l'applicatif a transformé beaucoup de sites internet en Single Page Applications (SPA), qui offrent une porte simple vers un univers d'interactions, au prix d'un premier chargement de données lourd. L'essor du Javascript a fait naître chez le développeur la peur d'une erreur fatale non attrapée, qui transforme tout votre travail en écran blanc. Comme on développe en local, les phases de test sont facilitéses, mais le déploiement, maintenant automatisé à l'aide des dépôts git, amène sont lot d'exigences et de défaillances. Et le moteur de recherche met le couperet final, avec des algorithmes chargés de classer les sites selon leur performance, leur capacité à s'afficher sur tous les écrans. C'est souvent à la fin du projet que vous regrettez ses multiples dépendances et appels aux API externes...

L'internaute n'a pas conscience qu'on fait tout faire à sa machine. Comme l'usage voit les applications installées sur les disques durs délaissés pour des services en ligne toujours plus performantes (SaaS), les processeurs peuvent accorder une large part de leurs ressources au navigateur et à ses nombreux onglets. En intensifiant l'importance d'Internet dans notre quotidien, nous nous rendons prisonniers de nos fournisseurs d'accès. Mais nous avons aussi la chance de faire bien plus facilement le tri des services que nous utilisons, jusqu'à nous bloquer nous-mêmes dans nos pratiques avec des extensions "censeur" lorsque certaines mangent trop de notre précieux temps. Cette précieuse réflexion du "pouruoi nous passons du temps sur" demeure notre meilleur atout pour revenir aux fondamentaux des réseaux sans pour autant se couper de toutes les innovations.

Vive les navigateurs, et longue vie aux pages web.

Publié le 3 mai 2023

Contactez-moi

Si les "stacks" JS/VueJS/Nuxt ou Laravel vous intéressent, que vous souhaitiez en discuter avec moi ou me confier un de vos projets à créer ou à reprendre, vous pouvez utiliser le formulaire de contact, ou m'écrire directement par e-mail.
Je ne réponds pas toujours immédiatement à mon téléphone, mais si vous me laissez un message, je vous rappellerai.
Horaires d'ouverture

Du lundi au vendredi de 9h à 12h et de 14h à 16h
je travaille en dehors de ces créneaux, mais je réponds plus rarement au téléphone

Coordonnées

ecrire.a@scriptami.com(33) 638 056 100
10, allée des rossignols
74150 Rumilly
France