On voit beaucoup de choses sur l’IA ces dernières années, et ce qu’on peut dire, c’est que ça bouge et impact grandement notre travail. J’avais d’ailleurs déjà discuté du sujet il y a quelques mois avec Maxence et Mathieu dans notre podcast DansLaTech.
Donc, je ne vais pas revenir sur l’ensemble de l’épisode (tl:dr: ça va changer beaucoup de choses, mais pas mettre plus de monde au chômage dans d’autres domaines). Ici, je vais vous parler de l’utilisation quotidienne dans le contexte SRE / DevOps.
Je ne vais volontairement pas aborder les “intégrations” IA dans 90% des softs web ou autre qui sont juste contre-productifs et ne sont ni efficaces ni utiles.
IA et complétion de code dans l’IDE
On commence avec le point qui m’a donné envie d’écrire cet article. Je constate que beaucoup utilisent et surtout voient l’IA comme une sorte de complétion de code assez basique. Et je pense que cette utilisation est inefficace et, sur celle-ci, l’IA n’apporte que peu, voire pas de valeur.
Mais au quotidien, les intégrations IDE c’était quand même une épine dans le pied, et l’IA aussi bien intégrée qu’elle soit est assez inefficace sur ce type de tâche très récurrente dans nos métiers. Cas classique, vous voulez créer un nouveau cronjob qui fait un refresh de DNS.
Soit vous définissez un minimum de contexte à l’IA et vous attendez qu’elle réponde. Puis vous adaptez tant bien que mal. Même si aujourd’hui, c’est relativement rapide, cela alourdit trop mon workflow et mon expérience de développement, mon travail.
Soit vous le faites à la main, alors je vous passe le taux d’erreur et la lenteur de cette solution.
Je me suis moi-même fait avoir, depuis quelques mois, ma configuration Neovim était incomplète, il me manquait les snippets. Vous connaissez ces structures que vous pouvez enregistrer et réutiliser facilement et rapidement. Et j’avoue que je ne trouvais pas le temps de le corriger, l’IA en général me donnait une base.
Mais j’ai pris le temps de corriger ma configuration et de recréer une base de snippets. Je ne peux que constater ce que j’avais oublié, la combinaison LSP (dont je vous parlais ici : De Vim à NeoVim, l’ère de la modernité) et Snippet est ultra efficace et ultra personnalisable.
Typiquement voilà ce que ça donne avec la création d’un namespace et d’un deployment :

Ici c’est un exemple basique, bien sûr, mais entre ça et les LSP, notamment sur le code, c’est d’une efficacité redoutable. Snippet, créer fonction, variable, LSP tiens, j’ai telle option, etc. Sans parler de la non-dépendance externe, de la fluidité, de la personnalisation. SI vous avez des structures que vous faites régulièrement, par exemple, vous pouvez les enregistrer.
Néanmoins, le fait que l’IA ne surpasse pas les solutions existantes à ce niveau, on peut se poser la question des autres usages.
Là où l’IA excelle
Une partie d’entre vous se dit : “Ah ça y est encore une personne qui refuse le changement”, ne mentez pas je vous vois !
La réponse est non, au contraire, j’utilise au quotidien l’IA et j’aime beaucoup l’utiliser, d’ailleurs, cette première partie coup de gueule était plus là pour en venir au cœur du sujet, comment l’IA a impacté mon quotidien de SRE.
Mon nouveau collègue
D’ailleurs, même si le Lua qui est utilisé par Neovim est cool, ben j’ai parfois du mal à m’y retrouver. Donc, comment je me suis motivé à corriger ma configuration ? C’est simple, je n’ai pas travaillé seul dessus.
J’ai fait un travail sur le dossier avec un collègue, Claude code :

Et oui, je n’ai pas d’IA directement dans mon éditeur. J’ai testé, mais l’impact sur mon fonctionnement était négatif. J’ai trouvé une solution qui me convient mieux : configurer mon Neovim pour être le plus autonome possible. Objectif : ne pas perdre de temps à être réactif. Et quand je dois travailler sur un sujet plus complexe. Split de terminal, mon éditeur d’un côté, mon collègue Claude de l’autre.

Du coup, comment je vois son utilisation ? Je lui délègue les tâches, par exemple, dans ma configuration Neovim je voulais :
- Ajouter les snippets
- Update Neovim
- Update les plugins
- Ajouter 2 options
- Corriger les warning
Ben je lui ai délégué les parties chiantes, où il est plus efficace que moi. Résultat ? Pendant que j’update les plugins et nettoyais le bordel de l’upgrade, il ajoutait les snippets et corrigeait les warnings en parallèle. Pendant ce temps, je pouvais aussi lui demander des reviews de mon code.
Mais l’important, c’est que Claude Code est un agent, il est autonome. Typiquement, j’ai demandé de corriger un warning suite à l’upgrade vers Neovim 0.11.5. Il a corrigé le pin dans ma configuration, relancé l’update, puis relancé Neovim pour vérifier les logs. Tout seul. Cette utilisation est bien plus efficace que de travailler avec un chat au quotidien avec les allez retour que ça implique.
Cette manière de travailler avec l’IA, la faire dégrossir des sujets, review debug, faire des corrections mineures, c’est une des parties que je trouve le plus efficaces.
Beaucoup d’éditeurs intègrent notamment Claude Code, dans ma vision des choses, je préfère que celui-ci soit indépendant de mon éditeur. Je considère que c’est une brique à part et, pour l’instant, je n’ai pas vu de bénéfice personnel à utiliser un couplage plus fort de ce côté.
Cette utilisation séparée me permet aussi de mieux contrôler deux aspects fondamentaux. Premier aspect : la confidentialité. Avec un outil séparé, je vois clairement quand je partage des informations. C’est moins évident avec une intégration IDE. Second aspect : le coût. Je surveille mieux ma consommation de crédits. L’IA devient vite coûteuse sur des codebases volumineuses.
dans le cadre personnel, j’utilise Claude Code que je trouve génial, néanmoins j’utilise d’autres agents (TUI et modèle) comme Crush dans le cadre professionnel notamment. Qui, lui aussi est agréable au quotidien.
Un canard sous stéroïde

Le second scénario dans lequel je trouve l’IA très efficace, c’est celui de “canard”. Quand on debug c’est souvent impossible d’avancer efficacement seul. En général, on utilise la technique du canard, le but est surtout de revoir le problème de base et de tout repasser en revue.
L’IA en général se montre particulièrement efficace pour ça. Déjà, la phase de retranscription, contextualisation du problème, remplit souvent ce rôle du canard. On a parfois même pas besoin d’appuyer sur la touche entrée.
En général, dès que j’appuie sur la touche Entrée, il identifie rapidement le problème ou me met sur la piste. Je ne compte plus le nombre de fois où il trouve des soucis d’échappement des paramètres de fonction mal traitée, des conditions mal définies.
Bref, il fait gagner un temps fou de debug et mon seul regret n’est pas encore d’avoir le réflexe de l’utiliser systématiquement sur ces points. Le nombre de fois où j’ai perdu 30, 50 minutes sur un bug “con” et que l’IA me le spot en quelques secondes, c’est rageant.
Un aide de camp
Au quotidien, l’IA, c’est aussi mon aide de camp, très scolaire, mais elle ne rechigne jamais à la tâche.
Besoin de dégrossir une tâche, de trouver des solutions pour gérer un cas d’utilisation. En quelques minutes, elles proposent un ensemble de pistes qui pourront ensuite vous servir à approfondir le sujet. Bien sûr, il faut garder un esprit critique et challenger ses réponses. Cela dit, pour les reviews basiques, l’IA évite de perdre du temps humain sur les premiers retours.
Vous avez une idée, vous voulez la challenger avant d’aller plus loin, là encore, elle pourra repérer les points faibles de votre solution. Pensez tout de même à la conditionner à la pensée critique, au risque de finir avec un “You’re absolutly right”.

Attention aussi à la fraîcheur de l’information. Dans le cas de recherches, je coche systématiquement les options permettant à Claude d’effectuer des recherches directement sur internet.
POC et automatisation jetable
Dans nos métiers, un des enjeux les plus importants reste l’automatisation. Et globalement, on script au maximum, pour éviter les erreurs et gagner du temps. Néanmoins il est très difficile de trouver le bon équilibre, passer des heures à automatiser une tâche basique peut s’avérer contre-productif, surtout s’y on ajoute le debug.

L’IA sur ces sujets s’avère là encore très efficace. Ces projets / scripts ont souvent un contexte assez resserré et une code base relativement faible (ce qui limite le coût). Cette balance et le niveau de temps à gagner avant de sortir l’automatisation ont donc grandement baissé. Ce qui limite un peu plus le nombre de tâches manuelles avec peu de valeur ajoutée à faire manuellement.
De même pour les POC. L’IA fait gagner un temps précieux. Permettant au terme de retrouver son intérêt. On passe souvent trop de temps sur un POC. Résultat : des coûts irrécupérables qui nous poussent à choisir la solution même si elle ne convient pas vraiment. C’est sûr que quand on a investi des jours de travail, c’est dur d’admettre qu’il faut tout jeter. L’exercice devient facile quand c’est l’IA qui y a passé quelques heures, et non lorsque vous y avez passé une semaine.
Apprendre / approfondir
Un des derniers exemples d’utilisation, d’ailleurs, l’un de ceux qui m’ont le plus impressionné et dont je n’entends pas beaucoup parler.
L’apprentissage est souvent un point très chronophage et dépend beaucoup de personnes. Certaines préfèrent écouter, d’autres faire des exercices. Il existe un outil par IA qui, pour moi, représente le plus le futur de la recherche Web. Je ne dis pas ça au hasard, car il s’agit bien d’un outil de Google, NotebookLM.
Si vous ne connaissez pas, je vous invite à minima à le tester (il existe sur le web et en application). C’est un outil divisé en trois sections : à gauche, il y a les sources, au centre, on trouve le prompt, et à droite, ce sont les formats de sortie.

Du coup, vous pouvez vous faire un podcast en un clic, un résumé, plus classique, mais aussi des vidéos et le plus intéressant pour la mémorisation, des quizz et des fiches de révision. Certains formats restent néanmoins plus faibles, notamment le format vidéo.
Bien sûr, l’ensemble est paramétrable et le fonctionnement est très intuitif. Je ne détaillerai pas plus. Si vous êtes intéressé, je ne peux que vous conseiller de tester.
Globalement, c’est un des outils où j’ai eu le moins d’erreurs, ou d’hallucinations. Néanmoins, je ne peux que conseiller de surveiller les sources.
En bref
Aujourd’hui il est compliqué de penser que nos métiers pourront continuer sans utilisation de l’IA au quotidien. Même si je ne pense pas que l’ensemble du métier disparaîtra (ou clairement pas dans les premiers), ça reste une question d’ordre plus social que je ne souhaite pas aborder ici.
En ce qui concerne la confidentialité, j’utilise Claude en partie pour cela, il est assez clair sur les données qui sont utilisées ou non sur l’entraînement. Néanmoins, j’évite les dossiers sensibles et j’anonymise les données.
Avec la frénésie autour de l’IA je vois beaucoup d’utilisation de celle-ci inefficace ou encore mal intégrée. Parfois, les éditeurs ont intégré de l’IA dans l’urgence, alourdissant juste les pages pour permettre un appel à l’API de ChatGPT en un clic. Et ces usages-là n’ont à mon sens qu’une valeur très faible.
De même, certains usages n’apportent pas de vraie valeur. La génération automatique de fonctions ou la complétion de code, par exemple. Après plusieurs mois d’usage, je réussis à en tirer le meilleur pour avancer plus efficacement. Même si, par moment, les lenteurs et les hallucinations viennent casser un rythme idéal.
Si vous n’avez pas encore intégré pleinement l’IA à votre métier, particulièrement dans la tech, testez, adaptez. Ne jugez pas l’IA sur une seule application ou une mauvaise intégration dans un logiciel. Et si vos tests datent de plusieurs mois, répétez-les. Investissez du temps, il en faut pour trouver ces marques.
Ma configuration NeoVim est toujours disponible librement sur Github : DamyrFr/neovim-config
Head photo by Eric Krull sur Unsplash