Les IAs peuvent-elles vraiment un jour remplacer les devs' ou resteront-elles simplement un outil supplémentaire à leur disposition ?
Dans cet article, on a discuté avec deux CTOs pour parler de cette révolution, et des changements que l'on peut s'attendre à voir émerger dans les prochaines années. On te donnera aussi des conseils pour te préparer et t'adapter à cette nouvelle réalité en tant que dev'.
Ce que tu vas trouver dans cet article
- Les IAs génératives sont impressionnantes, mais elles sont encore loin d'être totalement fiables. Elles auront probablement toujours besoin d'une supervision humaine.
- Si elles ne remplacent pas les devs', elles vont néanmoins améliorer leur productivité et leur capacité à écrire du code de qualité.
- Comme pour les révolutions technologiques précédentes, on peut s'attendre à voir émerger de nouveaux métiers. Les profils tech devront s'adapter en développant de nouvelles compétences.
- Pour finir, on te donnera des conseils et des ressources pour rester pertinent dans ton métier à l'ère des IAs génératives.
- Paul Vidal, ancien développeur chez Datadog, il est aujourd'hui CTO de Collective, la première plateforme dédiée aux collectifs de freelances.
- Sébastien Lefort, CTO de Primaa, une entreprise qui développe des logiciels basés sur l'IA afin d'améliorer la détection du cancer.
Allez, entrons dans le vif du sujet !
1. L'IA peut-elle remplacer les devs' ?
La question se pose forcément lorsque l'on voit la démo de ChatGPT-4 de Greg Brockman il y a quelques semaines, le Président co-fondateur de OpenAI. Dans cette vidéo, il montre comment une IA générative peut créer un site web à partir d'un dessin réalisé sur un bout de papier.
Ce type de démonstration peut légitimement amener à se demander si les IAs ne finiront pas, à terme, par remplacer complètement les développeurs.
Pour Paul Vidal, il faut rester mesuré sur cette question : "Chaque génération a sa révolution technologique. Avant l'IA, c'était Internet et Google, avant cela, la télévision, le téléphone et l'électricité. Nous pensons que c'est nouveau, mais ce n'est vraiment pas le cas" .
Chacune de ces révolutions a apporté des changements et a nécessité une adaptation humaine. Google a modifié notre façon de rechercher des informations et d'apprendre, passant des bibliothèques au Web. Les IA génératives représentent la prochaine étape.
Sebastien Lefort partage cette opinion : "Il ne fait aucun doute que ces outils auront un impact, mais pas dans l'ampleur qui est annoncée aujourd'hui"
Nos deux CTOs sont donc bien d'accord : la technologie est impressionnante, mais elle ne remplacera pas les développeurs. Et ce, pour deux raisons 👇
Raison #1 : Les IAs ont besoin d'une supervision humaine
Les IAs génératives ne sont pas à 100% fiables. OpenAI, l'entreprise qui a créé ChatGPT, mentionne d'ailleurs clairement les limitations de ChatGPT :
“Parfois, ChatGPT écrit des réponses qui semblent plausibles mais qui sont incorrectes ou dénuées de sens.”
Ce manque de fiabilité a conduit Stack Overflow à interdire l'utilisation de textes générés par ChatGPT sur sa plateforme, "car le taux moyen d'obtention de réponses correctes de ChatGPT est trop faible."
“La publication de réponses créées par ChatGPT est préjudiciable au site et aux utilisateurs qui posent des questions et recherchent des réponses correctes.”
- Déclaration officielle de Stack Overflow
Alors, on peut se dire que l'on n'en est qu'au début et que les IAs finiront par être totalement infaillibles. Pourtant, chez OpenAI, on affirme que les solutions pour rendre les IAs totalement fiables ne sont pas si simples à trouver. L'un des principaux problèmes est le manque de sources communément acceptées sur laquelle la machine pourrait apprendre. Cela rend donc difficile la validation objective des réponses.
Du coup, il est très probable que les IAs génératives aient toujours besoin d'être accompagnées par des humains sur certains points, notamment pour différencier une réponse fausse d'une réponse vraie.
“À mesure que la technologie s'améliore, nous pouvons nous attendre à ce que certains problèmes soient résolus, mais fondamentalement, il y aura toujours un certain degré d'inexactitude. Ces outils n'ont tout simplement aucun mécanisme pour valider objectivement leurs réponses.”
- Josh Comeau, Full Stack engineer et formateur, ex-Gatsby et DigitalOcean, sur son blog The End of Front-End Development
Raison #2 : Les IAs manquent de subjectivité
Tout comme nous, l'IA peut apprendre par elle-même, s'autocorriger et devenir progressivement autonome. Mais il est important de ne pas oublier une chose essentielle : les machines ne sont pas et ne seront jamais des êtres humains.
Ce qui rend un produit ou un service excellent, c'est sa capacité à résoudre de manière efficace les problèmes auxquels nous, en tant qu'êtres humains, sommes confrontés dans nos vies. Pour créer cette valeur, il est nécessaire d'avoir une expérience de vie, de comprendre ce que signifie être humain, ce qui nous rend heureux, en colère et tout ce qui se trouve entre les deux. En réalité, tout cela requiert de la subjectivité, là où l'IA tend à être la plus objective possible.
Cette "expérience" ne peut pas être acquise simplement en lisant un texte pour en déduire des réponses. Elle découle de l'expérience de la vie elle-même, de la vie en société, avec sa propre culture, héritée de milliers d'années d'évolution humaine, de l'existence d'amis, d'une famille, d'un travail, et du processus de vieillissement. Aucune IA ne peut acquérir une telle expérience.
“L'IA ne vise pas à automatiser entièrement la production de contenu de A à Z. Elle vise à offrir aux professionnels et aux créatifs les outils pour travailler plus rapidement, les libérant ainsi pour se concentrer sur ce qu'ils font de mieux.”
- Charlie Beckett, London School of Economics, dans the Guardian
Nos deux CTOs partagent ce point de vue. Ce qui est attendu des développeurs, au-delà de leurs compétences techniques, c'est leur capacité à faire preuve de créativité face à l'inconnu, ce qu'ils considèrent tous deux comme une qualité propre aux êtres humains.
“Le rôle d'un dev' reste le même : créativité, pragmatisme et aptitude à résoudre des problèmes.”
- Sébastien Lefort
2. L'IA, une incroyable ressource pour améliorer ta productivité
Loin de remplacer les devs', l'IA va plutôt leur permettre de devenir meilleurs. Sur ce point, Paul Vidal est particulièrement enthousiaste sur le gain de temps et de productivité que peuvent offrir ces outils :
“Sans aucun doute, les développeurs vont désormais coder avec l'IA. ChatGPT m'aide à résoudre des problèmes qui m'auraient demandé quelques heures en quelques minutes seulement. C'est évident que cela aura un impact sur les performances des développeurs. Il y aura ceux qui savent utiliser l'IA et ceux qui ne le savent pas.”
- Paul Vidal
GitHub a récemment annoncé GitHub Copilot X, la nouvelle version de GitHub Copilot, et affirme déjà permettre aux développeurs de coder 55% plus rapidement. L'autocomplétion du code était seulement une première étape. GitHub Copilot X inclut également :
- Une expérience similaire à ChatGPT intégrée à VS Code, l'IDE de Microsoft, qui peut fournir une analyse de code approfondie, rédiger des tests unitaires et proposer des corrections de bugs.
- Une assistance basée sur l'IA pour les pull requests.
- Des réponses générées par l'IA sur la documentation pour les langages et les bibliothèques utilisées par un projet.
Et ce n'est que le début. De plus en plus d'outils alimentés par l'IA voient le jour chaque semaine, notamment pour faciliter la vie des devs'.
Jetons un coup d'œil à ce qui pourrait à ce qui pourrait changer pour toi dans un futur proche :
1️⃣ Tes outils
Erica Brescia, ancienne COO de GitHub, a déclaré lors d'une conférence en ligne de Sourcegraph en mars dernier que des domaines tels que les tests et les revues de code deviendront principalement automatisés et générés par l'IA.
Pour Paul Vidal, "chaque dev' code aujourd'hui dans un IDE qui offre un certain niveau d'assistance. Que ce soit le formatage avec Prettier, la vérification avec ESLint ou la saisie avec TypeScript. Les outils comme GitHub Copilot représentent simplement le niveau supérieur de l'IDE."
Pour Sébastien Lefort, le domaine du DevOps peut également bénéficier de l'IA pour des tâches telles que la configuration spécifique d'une infrastructure sur AWS. Ce qui fera gagner à la fois du temps et de l'argent.
2️⃣ La manière dont tu recherches des infos
Les outils de recherche d'informations évoluent à vitesse grand V, à tel point que Google a déclaré un "code rouge" après la sortie de ChatGPT l'année dernière. Microsoft s'est aussi lancé dans la course en investissant plusieurs milliards de dollars sur plusieurs années dans OpenAI et a annoncé de nouvelles versions de son moteur de recherche Bing et de son navigateur web Edge.
“L'IA va fondamentalement changer toutes les catégories de logiciels, à commencer par la plus importante d'entre elles: la recherche”
- Satya Nadella, Président-directeur général de Microsoft
3️⃣ Tes process de recrutement
La façon dont les entreprises recrutent des profils tech et les compétences qu'elles recherchent pour certains postes pourraient évoluer.
Les entreprises cherchant à s'appuyer sur l'IA pour améliorer leur produit vont probablement rechercher une expérience dans l'utilisation de telles API dans les CV des devs'. Pour ce qui est des tests techniques, il pourrait y avoir moins de place pour les exercices à domicile et davantage de place pour la programmation en direct.
“Les petits exercices à la maison ne seront probablement plus la bonne façon d'évaluer les compétences.”
- Paul Vidal
3. L'IA va créer de nouvelles opportunités pour toi
The US Bureau Of Labor Statistics prévoit une augmentation massive de 25 % des emplois des développeurs pour la décennie 2021-2031. A titre de comparaison, le taux de croissance moyen (rapporté par la même source) pour toutes les professions est de 5 %.
De nouveaux métiers vont naître
Les deux tiers des métiers actuels n'existaient pas en 1940. Nous avons dû nous adapter et changer notre manière de travailler. Les métiers de Data Engineers, Analysts, Scientsts, par exemple, sont nés avec l'augmentation exponentielle de la quantité de data à traiter. De même, avec le nombre croissant du nombre de développeurs, des métiers comme "developer advocate" se sont créés.
Il en sera de même dans les prochaines années, avec la création de nouveaux métiers qui répondront aux nouveaux enjeux liés à l'IA. Alors, même si, aujourd'hui, la notion de "Prompt Engineering" te fait sourire, il se pourrait qu'elle soit devenue commune dans les prochaines années, aux côtés de dizaines d'autres nouveaux métiers.
“Il n'y a jamais eu de révolution technologique qui ait détruit plus d'emplois qu'elle n'en a créés.”
- Tsedal Neeley, auteur et professeur à la Harvard Business School sur CNBC
Les industries existantes vont continuer de grandir
En plus des nouvelles opportunités de carrière, les domaines existants, qui connaissent déjà une demande croissante depuis plusieurs années, devraient continuer sur leur lancée.
Le domaine de l'IA, premièrement, qui est déjà "tendance" depuis des années, va grandir avec la nouvelle vague d'IA générative. La demande va augmenter, car toutes les entreprises dans l''IA se lanceront dans la course pour fournir le service le plus fiable.
L'industrie du cloud devrait également continuer à croître pour répondre aux besoins en infrastructure qui augmenteront nécessairement. Cela signifie davantage d'ingénieurs cloud, d'ingénieurs DevOps, d'ingénieurs en infrastructure, d'ingénieurs de bases de données, etc.
4. Quatre conseils pour rester pertinent l'ère de l'IA
Avec l'arrivée de tous ces nouveaux outils IA qui aident les devs' à délivrer du code de manière plus efficace, nous entrons dans une nouvelle ère. Et selon Paul Vidal, c'est un wagon que tu ne peux pas te permettre de manquer. Voici nos 4 conseils pour monter dans le train dès maintenant :
🤔 Sois curieux
Paul insiste, pour les développeurs, rester à la page fait partie de la fiche de poste : “La technologie évolue à un rythme fou. C'est inhérent au domaine. Ce qui fait un bon ingénieur, c'est sa capacité à rester à jour. Vous devez vous tenir informé, vous former et être proactif. L'une des principales qualités d'un ingénieur est la curiosité. La curiosité vous pousse à vous pencher sur les nouvelles technologies lorsqu'elles sortent et à évaluer leurs avantages. Ne pas être curieux, c'est risquer de prendre du retard.”
“Les deux qualités fondamentales de l'ingénieur de demain resteront les mêmes que celles de l'ingénieur d'aujourd'hui : la curiosité et le pragmatisme.”
- Paul Vidal
🛠 Commence à utiliser des outils IA
Tout comme tu as l'habitude de chercher des solutions sur Google, Stack Overflow et dans la documentation, il est important que tu commences dès maintenant à intégrer des outils IA dans ton workflow.
Il y a bien sûr ChatGPT et GitHub Copilot, mais aussi Tabnine et Codesnippets qui complètent ton code dans ton IDE (et bien plus encore), Mintlify qui t'aide à documenter ton code avec des commentaires générés par l'IA, ou AutoRegex pour ne jamais avoir à écrire une expression régulière toi-même.
📝 Apprends à écrire des prompts comme un pro
Un bon point de départ est d'apprendre à tirer le meilleur parti de ces outils d'IA en apprenant à les interroger de manière efficace. OpenAI et DeepLearning.AI ont publié un cours gratuit pour les développeurs sur le Prompt Engineering. Dans ce cours d'une heure, tu apprendras quels prompts écrire pour le développement d'applications, les nouvelles façons d'utiliser les LLM et tu pratiqueras l'écriture et l'itération de prompts en utilisant l'API d'OpenAI.
👩💻 Apprends les fondamentaux des IAs génératives
L'utilisation des API d'IA générative n'est pas une mince affaire. Supabase a implémenté l'API d'OpenAI dans sa documentation et a publié sa méthodologie dans un article de blog et une vidéo, qui sont parfaits pour découvrir comment les API d'OpenAI sont utilisées dans un cas réel.
À partir de là, tu peux passer à l'apprentissage de l'utilisation de ces API par toi-même. Voici trois cours pour te lancer :
- Le cours gratuit de 5 heures de freeCodeCamp où tu apprendras à utiliser des modèles de complétion de texte, à créer des images avec le modèle DALL-E, et bien plus encore.
- Un cours complet sur les API Python d'OpenAI par Colt Steele, l'un des formateurs en programmation les plus populaires sur Udemy.
- Le cours gratuit de Scrimba pour créer des applications d'IA avec ChatGPT, Dall-E et GPT-4
Pour finir, cet article rassemble de nombreuses ressources sur l'IA, des livres aux cours en passant par les comptes sociaux à suivre.
Sans nécessairement devenir toi-même spécialisé·e en IA, acquérir une compréhension globale des concepts sous-jacents peut t'aider à te forger ta propre opinion sur le sujet et à rester à la page.