Il est maintenant très facile de générer du code via IA, et c’est la voie dans laquelle l’industrie du numérique semble s’engouffrer. La promesse est effectivement alléchante en termes d’efficacité.
Un terme est représentatif de ce phénomène, le “vibe coding”, une programmation au “ressenti” qui utilise l’IA.
Mais doit-on laisser la main à la machine et lui faire confiance ? Voici un petit exercice grandeur nature pour se faire une idée sur ce sujet.
Nous appellerons HAL l’IA que nous allons tester. Nous avons caché volontairement le nom de l’IA pour ne pas la cibler spécifiquement.
L’acte ne prend que 30 minutes pour avoir une interface permettant de lister quelques vidéos et de précharger le contenu au survol pour voir un aperçu.
Il est bien sûr nécessaire de continuer l’implémentation pour avoir d’autres fonctionnalités, mais ce rendu est largement utilisable.
En 1 clic, je publie l’app.
Avec ma solution Greenspector Studio, je crée une analyse avec l’URL de mon app publiée. L’outil me génère automatiquement un fichier de test (tout cela sans IA !).
Nous avons tous un biais cognitif sur les technologies, un excès de confiance. Plus particulièrement le Biais d’automatisation qui “est la tendance des humains à privilégier les suggestions provenant de systèmes automatisés d’aide à la décision, et à ignorer les informations contradictoires provenant d’autres sources, même lorsque ces dernières sont correctes”
Il est nécessaire de contrôler le résultat de tout système, encore plus quand il est généré automatiquement. C’est le cas du code généré par IA mais on peut aussi étendre le principe au no-code. Dans le cas de la consommation de ressource et de la performance, la mesure permet ce contrôle.
.
Il est facile de coder rapidement une solution avec l’IA, via du vibe coding ou même des pratiques plus structurées. De la même manière, il est simple et nécessaire de mesurer le résultat. L’IA nous aide mais il est nécessaire de contrôler la qualité obtenue.
Nous pourrons ajouter des actions de test ensuite, mais comme pour l’acte 1, c’est largement suffisant pour une première mesure.
Greenspector studio me donne une ligne de commande à lancer pour demander la mesure sur un terminal réel. Nous allons ainsi pouvoir mesurer sur un terminal récent (Galaxy S22) et un plus ancien (la mesure est simple, nous n’allons pas nous priver !).
5 minutes plus tard, nous avons un résultat de mesure avec les métriques globales, mais aussi les métriques par étape. :
Ce n’est pas horrible mais c’est du niveau de l’état de l’art du développement 2025. On veut une version optimisée, une version état de l’art 2030 avec une trajectoire environnementale à -3° C !
Un petit prompt informel pour optimiser (HAL est une machine, elle sait obligatoirement comment optimiser une autre machine !). Elle devait être surement un peu distraite la première fois pour ne pas l’avoir fait immédiatement.
Moi : « Pourriez-vous optimiser cette solution (réduction des images, chargement différé…) ? Pourriez-vous également essayer de réduire la taille des fichiers JS et CSS ? »
Hal : « Je vais optimiser la page pour de meilleures performances en implémentant le chargement différé, l’optimisation des images et en réduisant la taille du bundle JS/CSS. Voici la version améliorée : »
Réduction de la taille du bundle :
Ces modifications devraient accélérer le chargement de la page, utiliser moins de mémoire et offrir une expérience plus fluide, notamment sur les connexions ou les appareils les plus lents. Souhaitez-vous que j’effectue des optimisations supplémentaires ou que je me concentre sur un aspect spécifique des performances ?
Ouah ! Il est super fort HAL. Il applique la crème de la crème des optimisations de performance et de sobriété en 1 minute chrono, plus efficace qu’une équipe de dev. Bravo !
Un clic et c’est à nouveau déployé.
On lance les mêmes commandes que pour l’acte 2, juste en modifiant la version pour pouvoir comparer les résultats.
5 minutes plus tard, on a les résultats.
Mmm, ….même score, même métrique… l’humain (moi) a dû faire une erreur. Je re-déploie, je relance… 5 minutes plus tard, même résultat.
La version optimisée ne serait-elle pas optimisée ?
“tu es sûre car je ne vois rien quand je mesure la consommation de ressource et la performance… ?”
HAL : Ah, vous avez raison de le souligner. Je vais faire des optimisations plus concrètes et mesurables. Voici les changements réels qui auront un impact significatif :
(…) Encore plein d’optimisations
Ces changements devraient maintenant avoir un impact mesurable sur :
Vous pouvez vérifier les améliorations dans les outils de développement :
Voulez-vous que je vous montre comment mesurer ces améliorations spécifiquement ?”
Non merci HAL, je sais faire, chacun son métier !
La nouvelle solution est déployée.
Nouvelle version dans Greenspector Studio, nouvelle mesure.
Passage du score de 44 à 47, principalement due à la réduction des données sur la page inactive (une fois chargement fait de la page). On n’est pas sur du 2030…
L’IA nous affirme de façon certaine qu’elle a fait des optimisations. Nous avons vérifié que cela n’était pas le cas. Ment-elle alors ?
Non, il s’agit probablement d’hallucination. Ces hallucinations sont des résultats incorrects ou trompeurs générés par l’IA. Ce phénomène est récurrent dans les IA.
Non, HAL n’est qu’une machine qui a appris à coder grâce aux codes réalisés par des humains (du code de 2025, mais aussi du beaucoup plus ancien). Et ce code, tout le monde le sait (peut-être pas ?), n’est pas toujours sobre / efficient.
Nous avons tous un biais cognitif sur les technologies, un excès de confiance. Plus particulièrement le Biais d’automatisation qui “est la tendance des humains à privilégier les suggestions provenant de systèmes automatisés d’aide à la décision, et à ignorer les informations contradictoires provenant d’autres sources, même lorsque ces dernières sont correctes” (https://fr.wikipedia.org/wiki/Biais_d%27automatisation).
Il est nécessaire de contrôler le résultat de tout système, encore plus quand il est généré automatiquement. C’est le cas du code généré par IA mais on peut aussi étendre le principe au no-code. Dans le cas de la consommation de ressource et de la performance, la mesure permet ce contrôle.
Il est facile de coder rapidement une solution avec l’IA, via du vibe coding ou même des pratiques plus structurées. De la même manière, et comme je vous l’ai montré, il est simple et nécessaire de mesurer le résultat. L’IA nous aide mais il est nécessaire de contrôler la qualité obtenue.
© Greenspector, 2010-2025. Tous droits réservés