Étonnamment, même dans l’informatique, la nature est bien faite ! En effet quand un siteweb est bien conçu et que le développeur a fait en sorte de respecter quelques règles pour optimiser le chargement du site, il n’y a pas que le ressenti utilisateur qui est amélioré, son impact sur l’environnement est aussi amoindri.
Comment un site internet peut-il polluer ?
Tous les sites polluent, c’est un fait.
Coté serveur l’utilisation de la machine (processeurs, disques…) consomme de l’énergie, et plus le site est gourmand et fait des requêtes complexes, plus il consomme… C’est très simplifié, mais c’est l’idée.
Côté client, sur votre écran, le site peut aussi consommer plus ou moins d’énergie. Là encore, les opérations complexes sont l’une des sources majeures de surconsommation. Mais il y a aussi la taille et le nombre des fichiers à télécharger qui influent sur le temps de chargement du site, et donc sur la consommation d’énergie.
Bref comme dit en intro, plus un site est optimisé, plus il sera « rapide » et moins il consomme d’énergie côté serveur et côté client. Faire de l’optimisation éco-responsable, c’est donc intéressant pour tout le monde !
Comment optimiser un site et commencer sauver la planète ?
Bon ok, je me suis peut-être un peu trop ambiancer sur le titre… Cela dit, on pourrait faire un gros bouquin rien que sur ce sujet. Alors en attendant que j’écrive un livre intitulé « code et sauve la planète » voici quelques pistes pour diminuer l’impact environnemental de vos sites web :
Les fichiers eux-mêmes
N’utilisez pas de fichier de plusieurs Mo, surtout si c’est pour une image en résolution 2000×1500 pixels affichée en 200×150… J’exagère, mais c’est relativement courant !
N’oubliez pas non plus de compresser correctement vos fichiers images et de minifier vos CSS et JS, le but là encore grapiller quelques octets a envoyer et a télécharger. Car même un simple octet de gagné, multiplié par des millions de vues, ça fait des Mo de gagner et autant d’énergie économisée.
Autre optimisation, pour les petites images répétées sur toutes les pages, pensez à faire un « sprite ». En clair, il s’agit de rassembler tous ces logos et autres pictos dans un même fichier en laissant le moins d’espace possible entre les images. C’est ensuite au niveau du CSS que se fera le redécoupage. De nombreux sites proposent de créer ce genre de fichier, à titre personnel, j’utilise celui-ci. Là encore, le fait d’agréger ces fichiers permettra un chargement plus rapide, moins de requêtes HTTP, et donc moins de pollution, même si effectivement le découpage prendra plus de ressources coté client.
Sous le code
L’autre aspect de l’optimisation éco-responsable, c’est donc le code lui-même. À la différence des fichiers, c’est beaucoup plus complexe pour vérifier que le code est correctement écrit. En effet non seulement il faut de l’expérience pour savoir quelle fonction utiliser à la place d’une autre, mais en plus, il ne suffit pas d’un passage sur des outils comme gtmetrix pour savoir ce qu’il est possible d’optimiser ! Il faut tester, faire de nombreux tir de performance, revoir sa copie, retester et définir ce qui est le plus gourmand en ressource pour pouvoir le modifier.
Sans renter trop dans le détails, il faut évidemment limiter les boucles imbriquées, écrire noir sur blanc les tests logiques à effectuer avant d’écrire des conditions trop longues et pas toujours… logique.
Par exemple, ne pas vérifier une condition puis vérifier son contraire alors qu’un simple « else » suffit.
Alors évidemment la mise à jour d’un site ça prend du temps, et de l’argent, mais là encore si tous les devs y pensent en codant, ce sera autant d’énergie économisé pour la planète !