Je suis désolé, vous constaterez probablement que cet article est très long. D’après le titre, vous pensez probablement que je suis sur le point de professer la gloire infinie de l’IA – ou de proclamer comment elle mettra progressivement fin au monde et vous prendra votre travail.
Mais je promets que ce n'est pas ça. En fait, puisque vous lisez ceci ici sur Dev.to, je promets de vous expliquer pourquoi vous êtes susceptible de réussir dans un monde post-IA.
Depuis que la programmation existe, une chose est restée constante : il s’agit toujours d’écrire du code. Malgré l’évolution de l’informatique au fil des décennies, une chose est restée la même : nous écrivons du code et la machine suit nos instructions.
Aujourd'hui, des outils comme Copilot, Cursor et ChatGPT bouleversent ce processus. L’IA ne se contente pas de suivre les instructions ; cela aide à les créer. Vous décrivez ce dont vous avez besoin, et il génère du code qui vous amène à mi-chemin, parfois plus loin.
C'est incroyable.
Mais cela soulève des questions troublantes. Si l’IA s’améliore dans l’écriture du code, que reste-t-il aux développeurs ? Est-ce la fin d’une carrière vieille de plusieurs décennies ou le début de quelque chose de bien plus grand ?
Les meilleurs programmeurs que je connais ne sont pas intimidés par les résultats hallucinés de ChatGPT et Claude. Mais l’histoire de l’informatique suggère que ces programmeurs ne devraient pas être si sûrs que le monde n’exigera pas qu’ils s’adaptent de toute façon.
Chaque changement dans l’évolution de la façon dont nous produisons des logiciels a été une histoire d’abstraction. La quantité de données nécessaires à la création d'une application n'a pas diminué avec le temps, elle a plutôt augmenté. Mais les mots que nous utilisons pour décrire ces données sont devenus plus expressifs et succincts.
Langage d'assemblage : fini les systèmes de cartes perforées ou la production minutieuse de code machine à la main. Avec l'assemblage, les développeurs pourraient écrire des instructions en utilisant une syntaxe plus lisible par l'homme, éliminant ainsi les subtilités binaires du matériel. Cela signifiait qu'ils pouvaient passer de la gestion des octets individuels à la conception et à la construction de systèmes plus complexes : systèmes d'exploitation, interfaces utilisateur rudimentaires et premières applications logicielles. Il s’agissait d’un premier pas important vers la programmation telle que nous la connaissons aujourd’hui : permettre aux humains de communiquer avec des machines sans avoir besoin de parler comme telles.
Langages compilés : le code portable de haut niveau a révolutionné la programmation. Au lieu d’écrire des instructions spécifiques au matériel d’une machine, les développeurs pourraient écrire du code dans des langages de haut niveau comme FORTRAN ou C, que les compilateurs traduisaient en code machine optimisé. Cette abstraction a permis aux développeurs de se concentrer sur la résolution de problèmes complexes plutôt que de se soucier des détails spécifiques au matériel. Le résultat ? L'essor des applications portables et évolutives, des systèmes d'entreprise aux logiciels qui alimentent notre vie quotidienne. Il ne s’agissait...
[Courte citation de 8% de l'article original]