Ico Chamois d"or
Ico Polémiquons
Ico Le saviez-vous ?
Ico Dossier
Ico Club de lecture
Ico Le Petit Geste du Jour
Ico Réseau
Ico Messagerie
Ico Navigateur
Ico Système
Ico Multimedia
Ico Divers

La Programmation Responsable (6) : des sites webs écologiques tu concevras

Date 16/12/2017
Ico Dossier
Ico Chamois d"or
Comms 0 commentaire
Où il est question de reverdir l'internet mondial, et où ça serait pas du luxe


"Un bébé moineau
Saute avec curiosité
Pour regarder mon coup de pinceau"

Mizuhara Shuoshi (1892-1981)

Nous terminons aujourd'hui notre grand dossier sur la responsabilité programmatique, ou le contraire, par un constat percutant qui risque d'en traumatiser plus d'un : non, l'internet mondial n'est pas cet univers éthéré où l'air est si pur et léger qu'il vole tout seul jusqu'aux étoiles, où tout est immatériel, écologique, mignon et gentil. Non, pour accéder à toutes ces merveilles/âneries (rayer la mention inutile), il faut bien que des machines pédalent silencieusement, ou du moins suffisamment loin de nos oreilles pour ne pas les entendre.

Autrement dit, l'internet fait mal à la planète au même titre que la plupart des activités humaines modernes, et ce n'est pas quelques plateformes collaboratives ou médias de diffusions d'idées écologiques qui y traînent qui vont équilibrer ce bilan alarmant. Alors, bien évidemment, on pointe toujours un gros doigt irrité en direction du consommateur irresponsable, ce vil coquin qui navigue de site en site sans aucun respect pour la belle terre sur laquelle il est né et le bien-être des ours polaires, mais il faut quand même bien de temps en temps s'adresser à ceux qui les conçoivent, ces fameux sites. Et c'est là que l'on te regarde droit dans les yeux, cher webdéveloppeur-lecteur, car oui cet article t'est directement consacré, youpi n'est-ce pas ?

Avant de commencer toute une série de considérations sur la forme, il faudrait tout de même parler du contenu et ainsi rappeler le problème de l'inondation de sites commerciaux, blogs, médias alternatifs, commentaires, photos, données en tout genre, qui est le quotidien de notre beau réseau d'échange mondial. Le développeur web, bien que souvent pauvre larbin chargé d'exécuter les moindres caprices d'un client ou d'une direction tyranniques, a tout de même une responsabilité en la matière, ne serait-ce que d'alerter les commanditaires sur le coût en ressources de leurs demandes importunes (et pourquoi j'aurais pas 13 vidéos en page d'accueil d'abord, en plus de mon carrousel de 2800 images ?).

Effectivement, comme me le rappelle la souris à lunettes d'un air navré, les Souris Vertes n'échappent pas à la tendance prolifératoire infernale, et contribuent à leur manière à la surenchère de contenu-personnel-à-propos-de qui caractérise notre douce époque. Ce qui ne nous empêchera pas de suggérer timidement que la diminution de l'impact écologique du net passe tout d'abord par un effort collectif pour arrêter d'y fourrer tout et n'importe quoi, et sous n'importe quelle forme numérique.

Dans cet esprit l'auteur-moi-même de cet article s'engage solennellement :
- à ne pas publier la photo de son chien, ni celle de souris même très mignonnes, la composition de son repas du midi ou sa marque de dentifrice préférée, bien que ces informations intéressent au premier chef l'ensemble des Français, et sans doute également le reste du monde.
- à dépublier ce blog de l'internet mondial lorsque son esprit et l'essentiel de son contenu aura largement été récupéré ou intégré par la société, autant dire vers 2100 si on suit les courbes de prévision des groupes d'experts sur le climat ou de suivi de la biodiversité.
- à maintenir l'empreinte écologique la plus basse possible pour ce blog, ainsi que pour toute autre réalisation informatique personnelle ou professionnelle qui serait amenée à être publiée sur l'internet mondial.

Et c'est justement ce dernier point que nous allons développer pour l'ultime article de notre fracassant dossier, pour permettre à tous les développeurs du monde, non pas de se donner la main, mais bien de concevoir des sites webs écologiques qui lavent encore plus vert que vert. On se lance dès qu'on a franchi notre petit haïku de mise en condition :

"Placardée sur la porte d'entrée
La photo
Du chat qui n'est jamais revenu"

Midoriro no Mausu (la Souris Verte)


Pas trop de multi dans le media

On commence sans tarder par le poste de dépense le plus important qui est, sans surprise pour nos lecteurs les plus fidèles, le contenu multimédia des sites web, celui-là même qui fait du mal à toutes les connections réseaux du monde. Lorsque l'internet a démarré, vu les vitesses de transfert et la bande passante abyssales que l'on rencontrait, l'essentiel d'un site web était constitué d'une page de texte, avec quelques liens et, si vraiment on était riche, agrémenté d'une ou deux images de faible taille. S'il nous est difficile de regretter l'austérité de présentation de cette époque antédiluvienne, force est de constater que nous avons foncé à corps perdu dans le contenu multimédia de tout poil pour en inonder nos sites toujours plus à la page (sans jeu de mots intentionnel), où il est parfois bien difficile de déceler un propos quelconque sous l'avalanche d'images, vidéos, sons et autres animations clignotantes. Le texte, lui, est passé à la portion congrue avec de moins en moins de rédaction, des commentaires ou explications toujours plus brefs, bref un rejeu grandeur nature de la guerre qui opposa la télévision à la presse écrite, avec à peu près les mêmes techniques qui triomphent.
 
Même si aux Souris Vertes, nous aimons le verbe, l'écrit, le haïku et tout ce que vous voudrez d'autre de la même famille, c'est surtout pour une raison écologique que nous soutenons qu'il faut changer de cap d'urgence. Comme nous l'avions montré dans notre excellent dossier sur les grandeurs numériques et l'un de nos tous premiers articles sur le stockage, la vidéo est incommensurablement plus consommatrice que l'image qui est incommensurablement plus consommatrice que le texte simple. Tout ce que vous écrirez sur les réseaux dans l'ensemble de votre vie ne suffira pas à produire autant de signes qu'une vidéo de quelques minutes postée sur internet, si si. En ce sens, le réseau social des petits oiseaux, Touiteur, qui limite la taille des commentaires mais incite les gens à laisser un tas de contributions multimédias, est l'antithèse absolue de l'écologie numérique. Il est d'ailleurs bien évident que cette limitation n'a pas été prise dans un souci écologique, mais plutôt pour assurer une dynamique instantanée à la discussion où les réponses fusent à la vitesse du pouce sur le téléphone portable. Hum, bon, ça n'est pas vraiment notre tasse de thé, mais comme ça n'a rien à voir avec notre sujet du jour, on revient bien vite à nos moutons qui bèlent en HTTP dans le texte.

Conséquence logique de toute ce qui précède, la première mission du Programmeur Web Responsable équipé d'une magnifique casquette avec des oreilles de souris vertes est de s'assurer qu'il n'y a pas trop de contenu multimédia dans son site web, notamment :
- qu'il n'y a pas de vidéos en streaming, dont nous rappelons au passage qu'il incarne le Mal Absolu en matière de consommation de ressources réseaux
- qu'il y a peu d'images, et qu'elles sont de dimensions modestes et aussi compressées que possible

Soulignons au passage l'hypocrisie ambiante qui consiste à minifier le moindre bout de javascript pour gagner une poignée d'octets, et ainsi se féliciter d'avoir économisé de la bande passante, pour ensuite abreuver nos pages web de photos grands formats et de vidéos.

Cela dit, une fois rendu à un serrage de ceinture multimédia bien senti, une bonne idée pour aller plus loin est de substituer dès que possible des icônes sous forme d'images par des caractères unicode qui représentent peu ou prou la même chose, mais n'induisent aucune consommation de bande passante particulière : on pourra ainsi trouver des caractères qui représentent des coeurs, des téléphones, des enveloppes, ou encore toutes sortes de flèches comme on pourra le voir ici, le choix est pléthorique en la matière. Dans la même veine, on essaiera de s'appuyer au maximum sur les possibilités intrinsèques de mise en page des navigateurs, à travers les directives CSS, pour éviter d'avoir à servir des bandeaux de couleur dégradée ou autre sous forme d'image.

Et surtout, il serait bien temps d'apprendre à mettre en valeur le texte sans avoir besoin d'un recours systématique à de la paillette multimédia dispendieuse. Il y a certainement tout un champ de recherche d'une ergonomie parcimonieuse du web à développer, que nous ne pouvons qu'inciter nos formidables lecteurs à créer et enrichir.


Le souci du dialogue


Il n'aura pas échappé à nos lecteurs judicieux que l'internet est le règne du connecté à toutes les sauces : et que tu me parles, et que je te réponds, et qu'on invite un troisième dans la discussion, etc. Ceci est vrai autant pour les humains que pour les machines, et, disons-le sans ambage, les machines sont encore bien plus bavardes que les humains, sans doute parce qu'elles sont capables d'aligner quelques millions de phrases dans le même temps que l'utilisateur amène son doigt jusqu'à la bonne touche du clavier.

Il est donc important de contrôler comment les machines communiquent entre elles, histoire qu'elles n'aillent pas gaspiller de l'octet à la tonne simplement parce que nous sommes trop lents pour suivre les échanges entre elles. Nous avons déjà vu un bel exemple de communication à réduire entre l'application et sa base de données. Ceci concernait plutôt le côté serveur web, mais c'est encore plus vrai si vous faites directement vos appels à la base de données à travers des APIs. On limitera donc au maximum des appels du client au serveur, du client à d'autres serveurs, et du serveur web lui-même à ses petits copains. Bien entendu, il ne s'agit pas de supprimer tous les échanges, simplement d'essayer de les mutualiser ou de les éviter dès que c'est possible.

Et s'il faut causer, autant que ça soit de manière la plus succinte possible, tout le contraire d'un article des Souris Vertes en gros, afin de limiter la bande passante réseau et les traitements de part et d'autre liés à la communication. Heureusement pour nous, la mode des années 2000 du XML partout, un des langages les plus verbeux de la terre, a succédé au standard d'échange JSON entre les applications, nettement plus léger.  On proscrira donc d'urgence tout ce qui est à base de XML ; alors oui, manque de chance, le code des pages web reste en HTML ultra redondant, mais en même temps on en transfère directement de moins en moins dans les pages de nos jours, pour préférer souvent le reconstruire à l'aide de code javascript.

Dernière chose, la tendance actuelle est de mettre des connexions sécurisées dès que possible (le fameux protocole HTTPS). Cette méthode de chiffrement est très importante lorsqu'il s'agit d'empêcher la lecture de mots de passe ou d'informations confidentielles qui transiteraient entre le navigateur de l'utilisateur inconscient du danger et le serveur web. Cependant, tout ceci s'avère relativement coûteux sur les canaux de communication, car le chiffrement augmente de manière non négligeable la quantité de données échangée, et demande un travail du processeur pour le produire à un bout comme pour le décrypter de l'autre. L'idéal serait donc que tous les sites ne passent en https que les pages vraiment confidentielles, comme l'endroit où vous tapez votre de carte bleue ou bien celle où vous révélez que vous présidez secrètement le fan-club local de Chantal Goya.


C'est le client qui paie


Et c'est bien la moindre des choses, non ? Notre dernier conseil est de faire travailler autant que possible la machine appelante, le client donc, à tous les sens du terme, et non le serveur lui-même. Pourquoi donc ? Tout d'abord, pour une question de justice sociale : c'est lui qui demande sa page peut-être super dispendieuse, il est normal qu'il en assume le coût informatique sous forme de consommation d'électricité, de chaleur et de cycles CPU.

D'autre part, en général seule une proportion minusculissime des ressources d'un ordinateur personnel sont mobilisées quotidiennement. Il serait donc dommage de s'obliger à construire des serveurs géants refroidis à l'azote liquide au lieu d'utiliser toute cette capacité de traitement disponible.  Enfin, de cette manière, vous êtes en mesure de servir nettement plus d'utilisateurs avec une consommation de ressources minimale de votre serveur. Si, au contraire, c'est le serveur qui pédale à chaque nouvelle requête pour construire une page super compliquée, si tout le monde s'avise de venir vous voir en même temps vous aurez du mal à assurer le service sans faire poireauter outrageusement le badaud.

De plus, tout déporter du côté du client va nous permettre d'éviter des ping-pong incessants entre client et serveur ; si on s'y prend bien, on peut envoyer toutes les informations nécessaires pour que la plupart des actions se réalisent dans le navigateur du client, sans aucun retour côté serveur. Malin, non ? En particulier, on prendra garde à ne recharger que les parties de page qui ont vraiment changé, afin de ne pas transférer inutilement le même contenu de requête en requête, et comme toujours à mutualiser les appels au(x) serveur(s) autant que possible. Donc, on garde comme horizon : les traitements se font du côté du client, le serveur ne faisant en général que servir le contenu à afficher, une seule fois de préférence, et les données contenues dans la page qui sont éventuellement rafraîchies en fonction des actions de l'utilisateur.

Il y a également une petite opération qui va nous permettre de libérer de la bande passante, c'est de compresser les fichiers texte envoyés (HTML, CSS, javascript). La plupart des serveurs web gèrent nativement le fait d'envoyer sous format gzip ces fichiers, et les navigateurs sont capables de les décompresser à la demande. Le serveur comme le client travailleront un tout petit peu plus à compresser d'un côté, décompresser de l'autre, mais le gain de compression est tellement énorme sur ce type de fichiers, particulièrement sur le HTML ultra redondant, que l'on aurait tort de s'en priver. A côté de cette mesure, la minification des fichiers javascript, qui supprime les espaces et autres symboles inutiles pour la syntaxe, fait figure de gagne-petit. On pourra toujours l'appliquer, ça ne coûte rien, mais il n'est même pas certain que le gain final sur un fichier compressé soit même visible à l'oeil nu.

Dernier point, une souris à ma droite me demande avec angoisse s'il vaut mieux faire le maximum possible en CSS, ou bien si on peut s'autoriser à faire du javascript même pour de l'affichage ou des petits composants qui existent nativement en HTML ? Eh bien, très honnêtement, je dois dire que j'aurais du mal à trancher pour l'une ou l'autre solution. En théorie, programmer uniquement en CSS devrait nous permettre d'être bien plus succinct que s'il faut coder en javascript, mais tout programmeur web sait que le CSS lui-même peut vite devenir aussi bavard que votre grand-père rappelant ses souvenirs de jeunesse au coin du feu les soirées d'hiver,  et comme la majorité des navigateurs interprètent aujourd'hui le javascript à la vitesse de l'éclair, il sera difficile d'affirmer que c'est moins efficace de recoder une fonction que d'utiliser une instruction native équivalente. Bref, à chacun de faire comme il le sent.


.Conclusion { title-text: "au revoir, petit dossier" };

Hum bon, ce titre n'est pas parfait niveau syntaxe, mais je n'ai pas le droit de mettre du faux HTML comme j'aurais souhaité le faire sans mettre le bazar dans l'affichage du blog, aussi vous excuserez la licence poétique .

Il est temps pour nous de dire au revoir à notre magnifique dossier au terme duquel tous nos lecteurs-programmeurs sont en mesure de sauver les espèces menacées chaque jour à grand coup de traitements informatisés efficaces. Au-delà des conseils généreusement dispensés, qui valent ce qu'ils valent comme on dit dans la cour de récré, c'est surtout la démarche proposée qui est importante : se poser, enfin, la question des ressources informatiques allouées pour faire tourner une application, web ou autre. Il restera à mettre lesdites ressources en regard de l'utilité sociale réelle et des bienfaits qu'elles procurent, mais ceci dépasse le cadre de la chaise en face du clavier pour déborder joyeusement dans l'arène de la décision politique collective.

En attendant de voir ces sujets polémiques à la une des journaux, on salue bien bas toutes les souris vertes qui ont participé au dossier, et on trépigne d'impatience de voir ce qu'elles vont encore pouvoir nous apprendre sur cet univers numérique qui regorge de surprises écologiques à tous les coins de rue !



Vous avez aimé ce billet ?

 

Vous aimerez peut être...
> La Programmation Responsable (1) : Ce dossier tu liras
> Le Petit Geste du Jour : je mets mes sites favoris... en favoris
> La Programmation Responsable (4) : de spammer ta base de données tu cesseras
> Le Petit Geste du Jour : je change la page de démarrage de mon navigateur
> La Programmation Responsable (3) : de déléguer la programmation tu éviteras
 

Mot-clefs de ce billet...
programmation web site

Commentaires


Aucun commentaire...


Ajouter un commentaire


La validation des commentaires se fait manuellement par l'administrateur du blog. La publication de votre commentaire se fera donc une fois que l'administrateur du blog l'aura accepté. Toutefois, si votre commentaire ne respecte pas les conditions d'utilisation ou s'il est considéré comme spam, il sera supprimé sans être publié.

Auteur
Email
 
(facultatif et caché)
Site web
 
(facultatif)
Message

Ico Valider


Infos blog

Des Souris Vertes

Derniers billets

Le Petit Geste du Jour   05/01/2018
Les 5 gestes totalement vraiment incontournables de l'écologie numérique
Le Petit Geste du Jour   22/12/2017
Le Petit Geste de Noël : je ne renouvelle pas ma panoplie numérique
Dossier   16/12/2017
La Programmation Responsable (6) : des sites webs écologiques tu concevras
Dossier   07/12/2017
La Programmation Responsable (5) : les structures de données tu maîtriseras
Dossier   28/11/2017
La Programmation Responsable (4) : de spammer ta base de données tu cesseras
Dossier   18/11/2017
La Programmation Responsable (3) : de déléguer la programmation tu éviteras
Dossier   04/11/2017
La Programmation Responsable (2) : de ricaner en cours d'algorithmique tu arrêteras
Le Petit Geste du Jour   24/10/2017
Le Petit Geste Du Jour : je nettoie ma boîte de messagerie
Dossier   16/10/2017
La Programmation Responsable (1) : Ce dossier tu liras
Réseau   05/10/2017
Mes données dans le cloud : écologique ou pas ?
Dossier   26/09/2017
Au secours, mon ordi est lent ! (8) : J'apprends à reconnaître et changer le matériel
Le Petit Geste du Jour   10/09/2017
Le Petit Geste De La Rentrée : j'arrête le streaming
Divers   25/05/2017
Les souris vertes s'invitent à la radio
Le Petit Geste du Jour   20/05/2017
Le Petit Geste Du Jour : je change les réglages de mon appareil photo
Dossier   11/05/2017
Au secours, mon ordi est lent ! (7) : Je réinstalle mon système tout seul comme un grand
Le Petit Geste du Jour   06/05/2017
Le Petit Geste Du Jour : j'écris un haïku pour me détendre
Divers   14/04/2017
Cultiver l'attente...
Club de lecture   25/03/2017
Les souris vertes ont lu pour vous : la convivialité d'Ivan Illich
Le Petit Geste du Jour   09/03/2017
Le Petit Geste Du Jour : j'enlève la signature automatique des messages
Polémiquons   27/02/2017
L'inquiétant mariage de la science et du numérique
Dossier   17/02/2017
Au secours, mon ordi est lent ! (6) : J'adapte mon système à mes besoins
Club de lecture   12/02/2017
Les souris vertes ont lu pour vous : une question de taille, d'Olivier Rey
Le saviez-vous ?   21/01/2017
Le saviez vous ? La voiture est un ordinateur sur roues
Dossier   10/01/2017
Au secours, mon ordi est lent ! (5) : J'apprends à ne pas perdre mes données
Dossier   30/12/2016
Au secours, mon ordi est lent ! (4) : Je nettoie Windows à grands jets
Polémiquons   23/12/2016
Le Petit Geste de l'Année : je ne commande rien d'électronique au père noël
Le Petit Geste du Jour   11/12/2016
Le Petit Geste Du Jour : j'utilise un bloqueur de publicités
Dossier   27/11/2016
Au secours, mon ordi est lent ! (3) : J'apprends à ne pas polluer mon ordinateur
Dossier   14/11/2016
Au secours, mon ordi est lent ! (2) : Je dégage l'antivirus à coup de pied
Dossier   05/11/2016
Au secours, mon ordi est lent ! (1) : les souris vertes à la rescousse
Le Petit Geste du Jour   23/10/2016
Le Petit Geste Du Jour : j'utilise le mode avion même à pied
Système   16/10/2016
L'ordinateur portable est-il plus écologique ?
Le Petit Geste du Jour   02/10/2016
Le Petit Geste Du Jour : je gère la durée de vie de ma batterie
Club de lecture   17/09/2016
Les souris vertes ont lu pour vous : l'âge des low tech, de Philippe Bihouix
Système   21/08/2016
J'apprends à gérer mes mots de passe
Le Petit Geste du Jour   08/08/2016
Le Petit Geste Du Jour : j'arrête d'inclure les messages quand je réponds
Polémiquons   30/07/2016
Ecole et numérique font-ils bon ménage ?
Le Petit Geste du Jour   19/07/2016
Le Petit Geste du Jour : j'arrête d'écrire mes mails en HTML
Chamois d"or   10/07/2016
Le saviez vous ? Il est possible d'être informaticien sous Windows sans se pendre
Messagerie   04/07/2016
L'incarnation du mal : la pièce jointe dans les mails
Le Petit Geste du Jour   26/06/2016
Le Petit Geste Du Jour : Je réduis la luminosité de mon écran
Divers   18/06/2016
Stop à l'imprimante jetable
Dossier   12/06/2016
Grandeurs du monde numérique (6) : Réseaux en folie
Le Petit Geste du Jour   05/06/2016
Le Petit Geste du Jour : j'éteins ma box quand je ne m'en sers pas
Le saviez-vous ?   31/05/2016
Le saviez-vous : Google n'est pas le seul moteur de recherche ?
Dossier   25/05/2016
Grandeurs du monde numérique (5) : Dans la jungle des écrans
Le Petit Geste du Jour   20/05/2016
Le Petit Geste du Jour : je mets mes sites favoris... en favoris
Le Petit Geste du Jour   15/05/2016
Le Petit Geste du Jour : je change la page de démarrage de mon navigateur
Dossier   14/05/2016
Grandeurs du monde numérique (4) : Les spectaculaires performances des jeux vidéos
Le saviez-vous ?   12/05/2016
Le saviez-vous : à quoi sert l'économiseur d'écran ?
Dossier   08/05/2016
Grandeurs du monde numérique (3) : Monsieur Herz mesure la solitude du processeur
Dossier   06/05/2016
Grandeurs du monde numérique (2) : Octets et compagnie, les rois du stockage
Dossier   05/05/2016
Grandeurs du monde numérique (1) : c'est gros, c'est petit ?
Divers   04/05/2016
Les souris partent à l'aventure


MP  Mighty Productions
> Blogs
> Des Souris Vertes
> Dossier
> La Programmation Responsable (6) : des sites webs écologiques tu concevras
 
RSS       Mentions légales       Comms  Haut de la page  
◄ ►