Numérique Responsable
Comment lier performance et écologie ?
@doc_roms
Romuald
Twitter : @doc_roms
LeadDev
- Performance
- Qualité (éthique, sécurité… )
- Eco-conception
- Ecologie
- Numérique Responsable
- Inclusion & Accessibilité
Etat des lieux du numérique
Un service numérique est constitué d’un ensemble de logiciels, matériels, réseaux et infrastructures, et d’autres services numériques.
Le numérique ?
Qu'est-ce qui se passe ?
Ce n'est PAS "immatériel"
Ex : le Bitcoin
Electriquement, une même fonctionnalité n'aura pas le même impact d'un pays à l'autre !
Et le problème n'est PAS qu'éléctrique !
Petit(s) rappel(s) sur les métaux :
Il y en a beaucoup... partout !
l'extraction pollue énormément
L'impact n'est PAS qu'environemental
Petit(s) rappel(s) sur l'ACV :
Petit(s) rappel(s) sur le numérique :
L'impact c'est principalement NOUS
Petit(s) rappel(s) sur le numérique :
La caméra connectée – Le thermostat connecté - Le climatiseur connecté –Les prises électriques connectées - La montre connectée - La poubelle connectée - Le système d’éclairage connecté - La balance connectée - La boîte à œufs connectée - La brosse à dents connectée - Le porte papier toilette connecté…
Trop de numérique ?
Petit(s) rappel(s) sur le numérique :
Le terme « écologie » vient des mots grecs « oikos » (la maison) et « logos » (discours, science, connaissance).
Il désigne la science qui étudie les conditions d’existence et les relations entre les organismes et leur milieu.
L’écologie pose comme principe que chaque être vivant est en relation continuelle avec tout ce qui constitue son environnement.
Dans ce cadre, elle étudie les flux d’énergie et de matières qui circulent dans un écosystème.
Ecologie ?
Performance?
Une application rapide !
Une application qui ne rame pas !
Une application qui ne plante pas !
?
>>> FOCUS Vitesse <<<
Performance?
Pourquoi c'est pas forcément "GREEN" ?
<link rel="prerender" href="https://example.com/next-page.html">
Scalabilité
Le fameux "plus de serveurs"
Le LazyLoading
ISO 25010 - qualité logicielle
Performance?
Norme ISO ? International Standard Organisation
Tests de performance
Temps de réponse
Capacité
Utilisation de Ressource
Rafale
Consomme 185,2 l /min
Réservoir de 5875 litres
2222Km/h (1200 nœuds)
3700 Kms de rayon d'action
une Clio à un réservoir de 45 l
Qu'est-ce qu'on fait ?
Sobriété
Nouveau meilleur pote ❤
Moins de fonctionnalités
A quoi va-t-elle me servir ?
Puis-je faire autrement ?
N'ai je pas déjà une fonctionnalité similaire ?
Est-elle essentielle pour mes utilisateurs ?
Moins de dépendances
Puis-je faire sans ?
Quel est son poids ?
Avec une dépendance que je possède déjà ?
En natif, sans utiliser de dépendance ?
Est-ce que ça ne va pénaliser mes utilisateurs ?
Même avec un débit réduit ?
Moins de ressources
Une iframe gMap ?
Une font custo ?
Une gallerie d'images ?
Une image ?
Et pourquoi pas :
Une image cliquable
Une font système
Une seule image
Une icône
Une icône ?
Pas d'icône
Moins de ressources
3 écrans / 4 téléphones de tests / 2 PCs
Et pourquoi pas :
1 écran (ou 0) / 1 abonnement BrowserStack / 1 PC
Sur nos envs aussi !!
Moins de ressources
Moins de ressources
Une connaissance de mes utilisateurs et utilisatrices
Quel est le parcours ?
Que font-ils ?
Pourquoi sont-ils là ?
Peut-il être optimisé ?
Utilisent-ils toutes les fonctions?
Ils se sont peut-être planté ^^
Ok, j'ai compris, j'agis avec sobriété ! Mais pourquoi ?
Pour réduire l'impact de notre applicatif !
Coté Back
Moins de charge serveur
Moins de CPU utilisé
Moins de mémoire allouée
Moins de stockage utilisé
Sur le réseau
Moins de données transmises
Coté Front
Moins de données stockées
Un applicatif plus léger
Des téléchargements plus rapide
Il faut absolument éviter l'obsolescence logicielle de nos applicatifs
OK ! Et concrètement ?
1/ Ecoconception
«Intégrer l'environnement dès la conception des produits et des services» ISO 14062
OK ! Et concrètement ?
Ecoconception
« De la conception à la fin de vie du produit ! »
Analyse de cycle de vie (ACV)
ISO 14040/44
Multicritères
Conséquentiel?
2/ Choisir son hébergeur
Energie bas carbone
Réutilise les anciens composants
Utilise la chaleur générée pour autre chose
Fait des achats durables
Evite le Greenwashing en se disant "neutre en carbone" ;)
+ Bonne gestion de l'énergie (ISO 50001)
Prise en compte des problématique écologique (ISO 14001 / BC ?)
Bonus : Sécurité des donnés (ISO 27001)
Bonus : Sécurité des donnés (ISO 27001)
3/ Choisir son language
/!\ Ce n'est pas ULTRA impactant :)
!= Energie finale consommé
!= Temps d'execution
!= mémoire utilisée
4/ Mettre en place des bonnes pratiques
Les bonnes pratiques de vos langages / Frameworks
Vous pouvez contribuer !
https://github.com/cnumr/best-practices
4.1 / Exemples
#1 Éliminer les fonctionnalités non essentielles
#2 Quantifier précisément le besoin
#5 Favoriser un design simple
#85 Mettre en place un plan de “fin de vie”
4.1 / Exemples
#9 Limiter le nombre de requêtes HTTP
#18 Limiter le nombre de domaines servant les ressources.
#34 Redimensionner les images en dehors du navigateur
#37 Utiliser le chargement paresseux (lazy-loading)
4.1 / Exemples
#40 N’utilisez que les portions indispensables des bibliothèques JavaScript et CSS
#56 Mettre en cache les données calculées souvent utilisées
#72 Éviter d’effectuer des requêtes SQL à l’intérieur d’une boucle
#114 Adopter les vidéos aux contextes de visualisation
#99 Utiliser un cache HTTP
5/Conseils \o/
Tester vos applications en bridant votre connexion
Monitorer tout ça !
https://ecoIndex.fr
Empreinte environnementale
Poids et complexité
Grade (A - G)
https://web.dev/measure
Informations d'amélioration
Metrics WebPerf
Grades (0 - 100)
https://webpagetest.org
Informations d'amélioration
Metrics WebPerf
Paramètres
- Repeat
- Limitation du réseau
- N°1 infos WebPerf
https://dareboost.com
Informations d'amélioration
Metrics WebPerf
Infos Technologies
Grade (0 - 100%)
Coup de ❤️ Qualité
Et beaucoup d'autres...
Outils "d'analyse statique"
Outils de "profilage"
http://validator.w3.org/
Petite mise en perspective
2T CO2eq (GIEC)
#ShowYourStripes Merci le Numérique ❤️
Petite mise en perspective
Le Numérique est utile !
Il n'est pas indispensable.
TOUT le monde peut changer les choses !
Merci !
@doc_roms
Des questions ?
Comment lier performance et écologie ?
By Romuald Priol
Comment lier performance et écologie ?
- 884