GoSuda

Méthodologie de développement AI natif : une circulation bidirectionnelle du contexte au-delà de l'utilisation d'outils

By gosunuts views ...

L'IA et les développeurs

La perception qu'ont les développeurs de l'IA est complexe. L'IA a rendu possibles une augmentation de productivité et une acquisition d'informations sans précédent, mais dans le même temps, le rôle des développeurs est en train de changer fondamentalement. Certains prédisent que l'IA évoluera vers l'AGI et remplacera la majorité des développeurs, tandis que d'autres déprécient l'IA en la qualifiant d'outil surévalué et affirment que la valeur essentielle des développeurs ne changera pas. Cette attitude, bien qu'elle paraisse diamétralement opposée en apparence, ressemble étonnamment à celle-ci en ce qu'elle juge l'IA à l'aune des modes de pensée existants.

Toutefois, l'essentiel ici n'est pas de juger ou d'évaluer l'IA. Le véritable enjeu réside dans la manière dont la pensée du développement doit évoluer en partant du principe de l'IA, ainsi que dans la façon dont les rôles des développeurs et des organisations doivent être restructurés en fonction de ce changement. À cette fin, la méthodologie de développement assistée par l'IA a été organisée selon une analyse en trois étapes ci-dessous.

Développement dépendant de l'IA

Le développement dépendant de l'IA est une étape où l'IA est érigée en sujet du jugement et où ses résultats sont acceptés sans esprit critique. Le développeur à ce stade perçoit l'IA comme un être qui organise ses idées et les met en œuvre, et va jusqu'à l'accepter comme un substitut auquel il peut déléguer le jugement et la responsabilité.

Cette approche semble, en surface, avoir multiplié la productivité de manière explosive. En réalité, cependant, elle accumule rapidement du code qui ne peut ni être expliqué ni être assumé. Lorsque des problèmes surviennent, personne ne peut porter de jugement assuré sur les raisons pour lesquelles cette structure a été adoptée ni sur le choix qui serait le bon.

À ce stade, l'IA ne produit que des résultats peu fiables, et le développeur se limite au rôle de consommateur de ces résultats. Il en résulte que l'IA et le développeur sont employés de manière dissipative, sans que la moindre compétence réelle ne s'accumule nulle part.

Développement utilisant l'IA

Le développement utilisant l'IA est une étape que l'on observe chez les développeurs plus expérimentés. À ce stade, le développeur perçoit l'IA non comme un substitut au jugement, mais comme un outil puissant qui accroît la productivité. Le développeur de ce stade demeure le sujet de la conception et du jugement final, et délègue à l'IA les tâches répétitives et coûteuses telles que la génération de code, le refactoring, le débogage et la synthèse de documents. Cette approche réduit fortement la part du travail répétitif du développeur et permet d'accroître la productivité de manière spectaculaire tout en préservant la confiance.

Cependant, cette approche présente une limite structurelle : le contexte de conception et le jugement ne circulent pas. Comme l'orientation du développement et le processus de jugement restent confinés à la réflexion personnelle du développeur sans être partagés avec l'IA, l'IA ne peut pas accumuler les évolutions et la croissance du développeur. Il en résulte que le contexte de conception et la capacité de jugement se trouvent isolés chez le développeur.

Par conséquent, aucun cycle d'apprentissage ne se forme entre le développeur et l'IA, et la capacité d'utilisation de l'IA ne s'étend pas au-delà des compétences existantes du développeur. La croissance demeure attachée à l'individu et, avec le temps, l'écart de compétences entre les développeurs se creuse. En outre, cette capacité révèle une limite : il est difficile qu'elle s'accumule ou se reproduise à l'échelle de l'organisation.

Développement natif de l'IA

Le développement natif de l'IA dépasse l'étape où l'on fait confiance à l'IA ou où on l'utilise comme outil ; il désigne une structure dans laquelle l'IA est intégrée à la structure de développement et au processus de jugement, et où l'IA et les humains interagissent et progressent mutuellement. À ce stade, l'IA fonctionne comme un membre qui partage le jugement et le contexte du développeur et interagit avec lui.

L'élément central de cette structure est que l'IA et le développeur circulent dans les deux sens et non à sens unique. Le développeur partage en permanence avec l'IA l'intention de conception et le fondement de ses jugements, et l'IA accumule ainsi la pensée du développeur et le contexte de l'organisation. Il en résulte que l'IA évolue au-delà du simple rôle d'outil traitant des requêtes : elle propose des options adaptées à l'organisation, et elle assiste et corrige le jugement du développeur.

Le développement natif de l'IA ne dépend pas de la maîtrise ou des astuces d'un individu particulier. Même si les membres changent, si le contexte de l'IA est maintenu, il est possible de poser à propos d'un même problème des questions de perspective similaire, et de poursuivre des décisions plus pertinentes en s'appuyant sur les choix passés et leurs raisons. La capacité de développement n'est plus attachée à l'individu ; elle s'accumule et devient reproductible à l'échelle de l'organisation entière.

En définitive, ce que vise le développement natif de l'IA n'est pas une architecture ou une méthodologie de développement particulière, mais le processus de développement lui-même, dans lequel le jugement et l'apprentissage de l'IA et de l'humain se renforcent continuellement. Au sein de cette structure, le développeur et l'IA ne se remplacent pas mutuellement. Ils partagent au contraire le même espace de problèmes et évoluent vers une relation où, ensemble, ils construisent de meilleurs jugements et des structures plus solides.