Comment vois-tu ton métier évoluer avec l'IA ? - RÉPONDEUR #3

Saison 2 • Épisode 3 31:48

"Vous êtes bien sur le répondeur de Human Coders !"

De nombreux outils basés sur les LLM ou d’autres concepts de machine learning sont en train de faire irruption dans notre quotidien. Dans ce troisième épisode, je te propose de nous expliquer comment tu utilises l’IA dans ton quotidien et comment tu vois l’évolution de notre métier avec ces dernières avancées.

•• TIMECODES ••

00:00:00 Introduction
00:01:34 Fabien et la différence entre le buzz et la réalité
00:06:48 Antoine et l’IA au service du DX et de l’UX
00:11:47 Jean-Philippe et les multiples avantages de l’IA
00:16:52 Yvann et la 4ème révolution industrielle
00:21:25 Vincent et les agents
00:31:16 Conclusion

•• NOS FORMATIONS ••

https://www.humancoders.com/formations

•• GUESTS ••

Fabien Zucchet, Cloud engineer spécialisé dans le serverless
https://x.com/FabienZucchethttps://www.linkedin.com/in/fabien-zucchet/https://www.genaidays.org/post/testing-genai-applications-addressing-the-challenges-of-non-deterministic-language-models https://github.com/mattzcarey/code-review-gpt https://gandalf.lakera.ai/intro

Antoine Salesse, Développeur logiciel
https://www.linkedin.com/in/antoine-salesse/https://coral.cohere.com

Jean-Philippe Baconnais, Consultant Zenika et organisateur des Human Talks de Nanteshttps://twitter.com/JPhi_Baconnais https://www.linkedin.com/in/jean-philippe-baconnais-931544116/

Yvann Vincent, Ingénieur en IA
https://www.linkedin.com/in/yvann-vincent-46b848226/https://fr.wikipedia.org/wiki/Industrie_4.0

Vincent Daubry, Développeur pour Human Coders et CTO de Corpogames
https://www.linkedin.com/in/vincent-daubry-74937428/https://x.com/vdaubry

Sommaire de l'épisode
00:00:00 Introduction
00:01:34 Fabien et la différence entre le buzz et la réalité
00:06:48 Antoine et l’IA au service du DX et de l’UX
00:11:47 Jean-Philippe et les multiples avantages de l’IA
00:16:52 Yvann et la 4ème révolution industrielle
00:21:25 Vincent et les agents
00:31:16 Conclusion
Transcription de l'épisode

Matthieu Segret : Bonjour à toutes et à tous, je suis Matthieu et vous êtes bien sur le répondeur des Human Coders. Je suis content d'être avec vous dans cette nouvelle édition de ce podcast où l'on va parler techno, pratiques de développement ou de sujets plus généraux, mais toujours en lien avec l'informatique.

Le concept de ce podcast est assez simple : dans chaque épisode, je vous pose une question et vous pouvez me répondre par vocal. Pour ce troisième épisode, j'aimerais que l'on parle de l'évolution de notre métier à l'ère de l'intelligence artificielle. De nombreux outils basés sur les LLM ou d'autres concepts de machine learning sont en train de faire irruption dans notre quotidien. Par exemple, ils peuvent nous expliquer d'où provient telle ou telle erreur dans notre programme, comment optimiser un algorithme ou tout simplement faciliter la génération de notre code. L'utilisation de modèles de données que l'on peut augmenter par la suite pour résoudre certains problèmes, ou encore l'apparition de nombreuses API et services utilisant l'IA, nous ouvrent de nouveaux horizons qu'il était encore impossible d'atteindre il y a quelques années.

Je vous propose de nous dire comment vous utilisez l'IA dans votre quotidien et comment vous voyez l'évolution de notre métier avec ces dernières avancées. Avez-vous une anecdote ou une expérience sympa à nous raconter ? Laissez-nous un message après le bip.

Fabien : Différencier le buzz de la réalité

Fabien Zucchet : Hello Matthieu, c'est Fabien Zucchet. Je suis Cloud Engineer spécialisé dans le serverless depuis deux ans, basé à Londres. Je m'intéresse de près au boom des IA, notamment l'IA générative et les LLM. Ça fait beaucoup de bruit, mais à mon sens, comme toute évolution technologique, il faut bien différencier le buzz de la réalité. L'exemple qui me vient en tête est la blockchain il y a quelques années, où l'on pensait que le Web3 allait totalement remplacer le web tel qu'on le connaît. Ça ne s'est pas vraiment réalisé, même s'il y a eu des impacts localisés.

Je pense que pour l'IA, c'est pareil. C'est un super outil avec pas mal d'applications désormais accessibles, mais ce n'est pas une baguette magique pour tout rendre facile. Un exemple concret pour les développeurs est l'écriture de code. On a des outils comme GitHub Copilot qui génèrent des snippets de code pour nous aider à avancer. Ça marche super bien sur de petits morceaux de code répétitifs. Par contre, si on demande à une IA de créer un site complet ou du code très complexe, la probabilité qu'elle ait des hallucinations et sorte quelque chose qui ne fonctionne pas est assez grande.

La preuve que ce n'est pas si facile d'avoir de la qualité avec les IA est l'émergence récente du métier de "Prompt Engineering". C'est très difficile car un LLM est un système chaotique : une petite modification peut avoir de grosses conséquences sur le résultat. Il y a deux limitations principales aujourd'hui : le temps de réponse, qui peut être long, et le manque d'outils récents. Un LLM est entraîné sur des données qui ne sont pas toujours à jour. Si vous utilisez une librairie très récente, votre LLM aura des problèmes.

C'est pour cela qu'on voit l'émergence des agents IA, qui sont une combinaison entre un LLM et un set d'outils. C'est là que réside le vrai pouvoir de l'IA pour aider le développeur dans le futur : automatiser des tâches asynchrones et répétitives, comme faire une première passe de code review (via des outils comme Code Review GPT).

Antoine : L'IA au service de la DX et de l'UX

Antoine Salesse : Salut Matthieu, c'est Antoine Salesse de Wiscale. Je suis développeur logiciel et je vois deux axes d'impact de l'IA : au service de l'expérience développeur (DX) et au service de l'expérience utilisateur (UX). Je vais te parler de l'expérience développeur car c'est là que je vois les pratiques évoluer dès à présent.

J'utilise deux types d'outils : des modèles conversationnels (exclusivement Cohere Command R+ en ce moment) et des modèles de génération de code intégrés à mon IDE IntelliJ (Copilot). Cette association a considérablement amélioré ma capacité d'apprentissage et d'adoption de nouveaux langages ou frameworks. J'ai trois usages principaux :
1. Comprendre la différence entre des concepts proches (Inversion of Control vs Dependency Injection).
2. Obtenir une explication consensuelle et non dogmatique sur un sujet (qu'est-ce qu'un code maintenable ?).
3. Obtenir une explication plus rapidement qu'en croisant des sources manuellement.

Copilot m'aide aussi à découvrir des concepts métiers et à gagner du temps de frappe grâce à l'autocomplétion. En gros, les LLM améliorent mon autonomie, la maintenabilité de mon code et ma performance de livraison. Attention toutefois, les résultats sont parfois à côté de la plaque mais toujours présentés de manière crédible. Comme dirait Thomas Durand : "Le confort cognitif d'une histoire bien écrite peut donner l'illusion de vérité".

Pour le futur, je vois deux axes : l'intégration locale des modèles dans nos outils pour éviter que le code transite sur le réseau, et l'amélioration continue de la qualité des réponses pour s'adapter aux évolutions ultra-rapides du logiciel. Un grand pouvoir implique de grandes responsabilités.

Intermède musical

(Chanson générée par IA sur le quotidien du développeur assisté par l'IA)

Jean-Philippe : L'IA comme compagnon de route

Jean-Philippe Baconnais : Salut Matthieu, c'est Jean-Philippe Baconnais, consultant chez Zenika et co-organisateur des Human Talks de Nantes. On entend souvent que l'IA va remplacer les développeurs. Peut-être, mais pas tout de suite. Pour moi, l'IA est un compagnon avec lequel on doit apprendre à travailler.

Notre manière de développer change. Dans les IDE, on a maintenant des suggestions de méthodes complètes. Mais on doit toujours garder un œil critique, notamment pour la sécurité des données et les licences open source. GitLab a mis en place le projet GitLab Duo qui intègre l'IA dans toutes les étapes du DevOps. C'est très appréciable pour résumer de longs fils de commentaires sur une issue ou expliquer du code issu d'un projet open source ou d'une autre équipe que l'on ne connaît pas.

Google propose aussi IDX, un environnement de développement dans le cloud avec l'IA Gemini intégrée. Cela évite d'avoir cinquante onglets ouverts. Une petite anecdote pour finir : au début d'Internet ou de Stack Overflow, certaines entreprises coupaient l'accès à ces sites. Aujourd'hui, si on nous coupe l'IA, on se rend compte qu'on a perdu un outil de productivité précieux. L'IA va faire partie de la palette d'outils indispensable du développeur pour répondre à des problématiques parfois hors de son domaine de prédilection, comme la sécurité.

Yvann : Une nouvelle révolution industrielle

Yvann Vincent : Salut Matthieu, ici Yvann Vincent, ingénieur en IA. Quand on parle d'IA et de LLM, on parle souvent de quatrième révolution industrielle. La première était mécanique (vapeur), la deuxième électrique (production de masse), la troisième électronique (automatisation), et la quatrième est celle de l'IA pour automatiser les tâches purement cognitives.

Pour que l'IA change réellement notre métier en profondeur, il faudrait qu'elle soit capable de remplir ce rôle d'automatisation cognitive. Actuellement, elle ne le fait que partiellement. Le gros défaut des IA génératives aujourd'hui est qu'elles sont des moteurs probabilistes complexes qui ne comprennent pas réellement les tâches ou le monde qui les entoure. Elles n'ont pas de modèle de représentation intuitif (par exemple, elles ne comprennent pas intuitivement la gravité dans une vidéo).

C'est pour cela qu'elles gèrent mal les cas extrêmes et les erreurs. En développement, on peut obtenir le squelette d'une solution très vite, mais on passe ensuite énormément de temps à corriger les erreurs et les mauvaises décisions architecturales du modèle. Pour l'instant, l'IA générative réalise le travail créatif d'idéation et nous force à nous concentrer sur la gestion d'erreurs technique. Dans un monde idéal, on voudrait l'inverse : se concentrer sur le créatif pendant que l'IA gère les tâches techniques pénibles.

Vincent : Vers l'ère des agents et des stagiaires virtuels

Vincent Daubry : Salut Matthieu, c'est Vincent. Je suis CTO de Corpogames et je développe aussi pour Human Coders. On utilise énormément les LLM depuis la sortie de ChatGPT, tant en back-office que pour le code au quotidien.

Comment je vois le métier évoluer ? On parle beaucoup des "agents" comme prochaine étape après le chat. On a déjà un avant-goût avec les plugins dans VS Code ou IntelliJ qui incluent une représentation de la codebase dans le contexte du prompt. Des outils comme Gemini Code Assist ou Cursor.sh changent la donne car on peut dialoguer avec le modèle sur l'ensemble du projet, pas juste le fichier ouvert.

GitHub Workspace permet même de générer une Pull Request directement à partir d'une issue. On se dirige vers un assistant personnel intégré. L'IA dans sa forme actuelle est comparable à un ou plusieurs stagiaires à qui l'on délègue du travail. En tant que développeur plus senior, on se concentre sur la conception et l'architecture, et on manage l'IA comme on managerait des profils juniors.

On peut imaginer un futur proche où l'on partagera notre écran avec l'IA pour qu'elle voit le rendu front-end ou les erreurs dans la console en temps réel, rendant le debug beaucoup plus fluide. On arrive sans doute à la fin de l'époque où des développeurs "pissent du code" sans challenge technique. Ce qui est intéressant, c'est que la frontière de ce qu'on considère comme "trivial" ne cesse de reculer. Avant, faire un site statique était un challenge ; aujourd'hui c'est automatisé. L'IA va rendre triviales des tâches qu'on trouve encore intéressantes aujourd'hui, et nous resterons à la frontière de l'innovation sur les nouveaux challenges techniques.

Conclusion

Matthieu Segret : Merci encore pour vos messages. J'espère que vous avez eu autant de plaisir que moi à les écouter. Si vous avez aimé ce podcast, n'hésitez pas à liker ou à nous suivre sur Spotify ou Apple Podcast. Nous construisons ce podcast avec vous, alors n'hésitez pas à nous proposer des idées pour les prochains sujets ou à participer aux prochains épisodes sur humancoders.com/podcast. D'ici là, prenez soin de vous et à bientôt !

Informations sur l'épisode
Date de publication
Saison
2
Épisode
3
Durée
31:48
Série
Human Coders Podcast