Comment faire de l'IA son alliée dans le développement logiciel?

Le débat est intense dans la communauté du développement logiciel. Quels sont les meilleurs cas d'usage pour faire appel aux IA quand on code ? Allons-nous progressivement oublier comment faire notre travail, ou au contraire allons-nous connaître de nouvelles frontières cognitives ? Comment les débutants en développement vont-ils suffisamment se démarquer par rapport à ce qu'une IA peut faire ? Comment prendront-ils le recul nécessaire sur leur compréhension du domaine quand l'outil peut souvent répondre à leur place ? Les logiciels développés avec IA vont-ils bien mûrir ou va-t-on découvrir des océans de dette technique dans les temps à venir ?
Mon opinion à date, naturellement sujette à évolution. L'IA :
- est efficace pour un certain nombre de tâches à basse valeur ajoutée, dans des bases de code de complexité contenue
- permet de progresser rapidement sur des outils qui ne nous sont pas familiers, pour franchir les frustrantes premières étapes
- ne sera pas en position de force pour faire de découvertes fondamentales, étant une sorte de moyenne des savoirs existants
- est un danger pour son propre esprit critique et ses compétences en développement si on y a trop recours, quoique les prérequis pour le métier sont en train d'évoluer
- pourrait altérer le plaisir de coder et le niveau de compréhension que l'on peut avoir sur une base de code
- n'est pas une formule magique pour augmenter la productivité au long terme d'une équipe, quoi qu'en disent les prophètes sur LinkedIn
- est néanmoins à inclure de façon proactive dans les habitudes de travail, pour identifier les bons cas d'usage et écarter ceux qui ne sont pas concluants
- est à utiliser en collectif, car elle tend à isoler ses utilisateurs.
Morceaux choisis d'opinions publiées ces dernières semaines:

(see also https://xcancel.com/METR_Evals/status/1943360399220388093)






Bonus
