AWS a vu le jour en 2006 mais, 17 ans plus tard, pas moins de 90 % des dépenses informatiques sont encore liées à des déploiements sur site. Cette situation est en train de changer, et l'IA est l'un des principaux moteurs de ce changement, car la plupart des charges de travail liées à l'IA s'exécutent nécessairement sur l'infrastructure élastique qu'offre le cloud. L'IA fera les gros titres, mais c'est l'informatique dématérialisée qui facilite la gestion des données, de l'infrastructure, etc. C'est la tendance technologique la plus importante, bien que discrète, pour 2024 et les nombreuses années à venir.
L’IA aura un impact important sur les outils des développeurs en 2024
Si l’on demande à un développeur ce dont il a le plus besoin pour être productif dans son travail, la réponse la plus fréquente sera invariablement "une meilleure documentation". Avec des outils d’intelligence artificielle générative comme ChatGPT, nous disposons soudain d'un univers incroyablement riche, mais toujours problématique, de nouvelles documentations. Je dis "problématique" parce que les développeurs sont encore en train de comprendre comment utiliser efficacement des outils d'IA comme Amazon CodeWhisperer pour les inciter à concevoir un schéma optimal pour une application de suivi des stocks, par exemple, pour voir comment construire une application en Scala, alors que l'expertise d'un développeur est en Python.Au-delà de la documentation, la plupart des développeurs ont tendance à considérer les outils de GenAI sous l'angle de la génération de code. Pourtant, on peut soutenir que ces outils sont encore plus utiles pour l'analyse du code aujourd'hui. La clé est d'arrêter d'attendre des outils d'IA qu'ils fassent tout notre travail à notre place, et de les utiliser plutôt pour automatiser des tâches discrètes et ennuyeuses qui ne vont pas faire ou défaire une application, mais qui pourraient briser la confiance du développeur s'il est forcé d'apprendre et de faire tous les aspects de la programmation alors qu'un assistant de codage peut se charger de la poubelle de l'ennui, pour ainsi dire.
Pourtant on constate encore des obstacles à l'adoption de l'IA qui persisteront surement l'année prochaine
Le plus grand défi pour l'adoption de l'IA est finalement sa médiatisation croissante : à la fois trop et pas assez. Du côté de la médiatisation, le risque est que les développeurs s'attendent à ce que des outils d'IA générative fassent le travail à leur place, ce qui entraînerait des bogues ou d'autres problèmes. Si vous attendez d'un assistant de génération de code comme CodeWhisperer qu'il produise un code parfait que vous pourrez accepter et utiliser en gros sans modification, vous serez déçu. L'IA doit être utilisée pour renforcer les capacités d'un développeur, et non pour les remplacer. Cela signifie qu'un développeur doit apporter son expertise à la partie codage de l'IA : il devra être capable de repérer les erreurs de l'IA et savoir comment l'inciter à les corriger (ou le faire lui-même).Une autre hypothèse est qu’un certain nombre de personnes renoncent à l'utilisation d'assistants de codage et d'autres outils d'IA parce qu'elles ont vu les capacités de ces outils exagérées. Plutôt que d'attendre de l'IA qu'elle effectue notre travail de codage à notre place, il est temps de tester les différents LLM et les outils de codage qui leur sont associés. L’objectif ne doit pas être de déterminer lequel effectuera le travail à notre place, mais plutôt de découvrir leurs forces et leurs faiblesses, de les sonder et de les solliciter jusqu'à ce que nous sachions comment utiliser leurs forces et leurs faiblesses à notre avantage
Nous n'avons pas besoin de plus, nous avons besoin de mieux
Les principaux problèmes des développeurs sont toujours la connaissance et le temps. L'IA peut les aider dans les deux cas. Prenons l’exemple, les développeurs chargés de déplacer les charges de travail de l'infrastructure relationnelle vers une base de données nouvelle génération. C'est une excellente chose, mais cela implique, entre autres, la nécessité de mettre à jour les schémas. La conversion des requêtes SQL par l'IA permet de convertir les requêtes SQL et les procédures stockées en API de requête. L'énergie du développeur passe ainsi de la création de requêtes à la révision et à l'implémentation, ce qui lui permet de gagner du temps. Cela facilite également la tâche du développeur, qui peut s'appuyer davantage sur l'IA pour effectuer une conversion qu'il ne saurait peut-être pasfaire lui-même.
Dans la hâte de confier davantage de contrôle à l’intelligence artificielle, les décideurs doivent penser à leurs collaborateurs. Les personnes sont toujours nécessaires pour vérifier les faits et contrôler la qualité. Tant que nous utiliserons les outils de l'IA générique pour augmenter le nombre de personnes, mais pas pour les remplacer, nous en tirerons d'énormes avantages sans tomber dans des erreurs flagrantes.
Nous n'avons pas besoin de plus, nous avons besoin de mieux. Dans mon travail, j'encourage mon équipe à faire moins de choses, mais à un niveau plus élevé. Utilisés correctement, les outils de GenAI peuvent nous aider à faire précisément cela, en éliminant une partie des tâches routinières quotidiennes et en nous permettant de nous concentrer sur un travail réfléchi et de plus grande valeur.
Par Matt Asay, Vice President of Developer Relations chez MongoDB