L’un des outils les plus importants d’un développeur logiciel est sans aucune doute l’IDE1 (Integrated Development Environment) dont le composant principal est un éditeur de texte dédié à l’écriture du code.
L’arrivée du développement assisté par IA bouleverse entièrement notre façon de développer des logiciels et pourtant tous les IDE actuels, anciens comme nouveaux, sont construits avec la méthode traditionnelle de développement comme fondation.
De l’IDE à l’ADE
La plupart de ces outils viennent greffer l’IA et son écosystème sur cette approche de développement traditionnelle tandis que d’autres prônent un retour à la ligne de commande.
Une nouvelle proposition utilisant l’IA comme fondation, l’ADE2 (Agentic Development Environment) est en train d’émerger. L’IA remplace alors l’éditeur de texte comme principal composant.
Revisiter notre manière de développer
La place de la programmation étant moins importante dans le développement assisté par IA, il est primordial de revoir notre manière de développer ainsi que la place des différents aspects qui la compose.
Ma vision actuelle des concepts principaux du développement assisté par IA, revus par ordre d’importance, est la suivante: Documentation, Conversation, Validation et Exploration.
Documentation
La documentation prend la place la plus importante dans cette manière de développer. Elle permet de guider le développement assisté ainsi que de minimiser le risque de dette cognitive3.
Conversation
Le language naturel étant l’interface principale de communication avec l’IA, il est normal que l’aspect conversationnel soit intégré de manière centrale.
Validation
Le développeur doit aussi être capable de valider que l’IA respecte le cadre de construction qui lui est imposé tout autant que de valider le résultat final produit.
Exploration
Notre degré de confiance dans le code généré par IA est encore faible à l’heure où ces lignes sont écrites, il doit donc toujours être possible d’explorer et d’évaluer le code généré. Cependant, cette technologie évolue très rapidement et il est possible que cela ne soit même plus nécessaire d’ici peu.
Le code est passé de la dimension la plus importante du développement logiciel traditionnel à celle la moins importante dans le développement assisté par IA.
Une note sur l’expérience utilisateur
L’expérience actuelle pour le développement assisté par IA repose encore trop sur l’aspect conversationnel à mon goût et l’introduction d’une méthode d’annotation profiterait grandement à un système qui repose principalement sur l’importance du contexte.