
« S'il vous plaît... dessine-moi un mouton ! »
Dans le roman Le Petit Prince d'Antoine de Saint-Exupéry, le jeune héros avait demandé à un aviateur (le narrateur) de lui dessiner l'animal qui pourrait brouter les pousses de baobabs qui menaçaient d'envahir sa minuscule planète. Si l'aviateur avait eu un agent conversationnel sous la main, il aurait peut-être obtenu en quelques secondes une image similaire à celle ouvrant cet article, générée par ChatGPT avec cette laconique instruction : « Dessine-moi un mouton ».
Pour autant, aurait-on pu affirmer que l'aviateur avait lui-même dessiné ce mouton ? Bien sûr que NON. En revanche, l'aurait-il imaginé, formulé la demande avec ses propres mots, comparé plusieurs propositions, éventuellement demandé des retouches pour finalement retenir le plus joli mouton ? Absolument !
C'est cette même nuance qui depuis quelques années alimente une question similaire (et crispante) dans le milieu informatique : lorsqu'on demande à une intelligence artificielle d'écrire tout ou partie du code d'un programme, peut-on toujours parler de programmation ?
Plutôt que de s'enfermer dans des réponses simplistes et réductrices (« l'IA fait tout », « ce n'est plus programmer »...), essayons de voir un peu plus loin que des slogans qui se crêpent le chignon et invitons la nuance à participer à la discussion. Puis posons la question : quelle est réellement la part du programmeur dans la création d'un logiciel lorsqu'il fait appel à l'intelligence artificielle ?

Cet article va faire appel à la notion d'abstraction. Késako ?
En informatique, ce qu'on appelle l'abstraction consiste à simplifier la représentation d'un problème ou l'utilisation de l'outil destiné à le résoudre, sans pour autant faire disparaître la complexité initiale. La complexité est toujours là, mais on évite à l'utilisateur d'avoir à s'en préoccuper en masquant les détails techniques que la machine peut gérer à sa place (ça peut par exemple se traduire par une interface plus simple). Dit autrement : plus le niveau d'abstraction est élevé, moins l'utilisateur a besoin de mettre les mains dans le cambouis ! Le niveau d'abstraction ultime ? Vous pensez à votre prochaine création, et une machine matérialise votre pensée. Un superbe prototype est apparu au cinéma en 1956, avec Robby le robot (dans le film Planète interdite). Bon, il fallait verbaliser ce qu'on voulait (du whisky, des pierres précieuses, de la bouffe...), mais c'était un chouette début !

Programmer, qu'est-ce que ça signifie ?
Il existe au moins deux sens raisonnables du mot programmer :
- Au sens strict, programmer consiste à élaborer des instructions exécutables, notamment des algorithmes, et à les exprimer dans un langage de programmation. Dans ce sens, une personne qui fait exclusivement générer le code par une IA ne programme pas nécessairement elle-même.
- Au sens plus large, le terme peut aussi désigner l'ensemble du travail intellectuel permettant de concevoir, développer, tester et faire évoluer un logiciel. Dans ce sens, une personne qui fait exclusivement générer le code par une IA peut parfaitement exercer une activité de programmation, à condition de participer réellement à la conception, aux décisions ou aux vérifications.
Depuis toujours, nous inventons des machines pour travailler à notre place
L'être humain a de tout temps fabriqué des outils, des mécanismes, et maintenant des robots complets, pour déléguer à ces travailleurs silencieux et jamais râleurs les tâches répétitives, dangereuses, chronophages, ou de façon plus pragmatique, terriblement chiantes.
L'étymologie du mot robot est d'ailleurs presque une déclaration d'intention à elle seule. Le terme apparaît pour la première fois en 1920 dans la pièce Rossum's Universal Robots de l'écrivain tchèque Karel Capek. Il vient du tchèque robota, « travail forcé », « corvée ». Dans cette pièce, les personnages artificiels ne sont ni plus ni moins que des robots fabriqués pour travailler à la place des humains.

Autrement dit, bien avant ChatGPT et Cie, l'idée même du robot portait déjà en elle celle de la délégation du travail. Et toute l'histoire technique pourrait presque se lire de cette manière : à chaque fois, la machine absorbe une partie du travail afin que l'être humain puisse consacrer davantage de temps à ce qui demande jugement, décision, adaptation ou créativité. Et l'informatique n'a pas échappé à cette logique.
Les bibliothèques logicielles sont déjà une forme de délégation

Bien avant l'apparition du BASIC, les premiers programmeurs devaient intervenir au plus près du fonctionnement physique de la machine. Vous avez déjà essayé de faire des trous dans des cartes perforées à 80 colonnes d'IBM ? Les cartes étaient perforées par des opératrices spécialisées qui travaillaient à partir de « bordereaux de saisie ». Certaines opératrices expérimentées parvenaient à produire 250 à 300 cartes à l'heure ! Le travail était ensuite contrôlé par d'autres opératrices chargées de vérifier les perforations. Ça force le respect !
Depuis, les outils ont considérablement évolué : le programmeur en assembleur n'a aujourd'hui plus besoin de percer des trous dans un carton ou d'écrire directement des suites de chiffres binaires. Celui qui utilise le C confie à un compilateur la traduction de son programme en instructions exécutables par la machine. Avec Python, certaines opérations complexes se résument à quelques lignes. Aujourd'hui l'écosystème du développement logiciel regorge de langages de haut niveau, de compilateurs, de frameworks d'interface, de bases de données, de moteurs graphiques, sans oublier les RAD (Rapid Application Development) et autres joyeusetés et couches d'abstraction dont le programmeur ignore volontairement le fonctionnement interne. Depuis longtemps déjà, l'appel d'une simple fonction encapsulée dans les profondeurs d'une bibliothèque peut déclencher l'exécution de milliers de lignes de code écrites par d'autres et la génération de milliers d'autres.
Et cela ne choque PERSONNE !
Parce que programmer n'a jamais imposé de tout fabriquer soi-même, jusqu'au moindre rouage. On peut parfaitement concevoir un programme en s'appuyant sur le travail d'autres programmeurs. Mais ce n'est en rien de la paresse ! C'est simplement que l'ingénierie progresse. On capitalise sur ce qui existe déjà pour concentrer son travail sur un problème nouveau. Exiger que chacun réinvente la roue avant de fabriquer une voiture ne produirait pas de meilleurs ingénieurs. Cela produirait en revanche beaucoup de roues.
Avec l'intelligence artificielle, cette délégation a franchi une nouvelle étape. Il ne s'agit plus seulement d'utiliser des fonctions existantes : l'IA peut désormais générer elle-même une partie du programme, voire sa totalité. Mais contrairement à une bibliothèque logicielle classique, une IA générative produit du code dont la structure et les erreurs éventuelles ne sont pas nécessairement prévisibles. Si la délégation est donc plus profonde, elle est aussi plus difficile à contrôler.
Question : pourquoi faudrait-il soudain considérer que cette délégation devient illégitime précisément au moment où elle atteint le langage naturel ?
L'histoire de la programmation n'est qu'une longue histoire d'amour avec l'abstraction
En informatique, une grande partie des progrès de la programmation consiste à éloigner le programmeur de la mécanique brute de la machine. Avec l'IA, le programmeur n'est plus confiné à l'envoi d'instructions à la machine, il peut désormais lui en confier l'écriture. Ce qui disparaît progressivement n'est donc pas nécessairement la programmation, mais une partie du travail intermédiaire nécessaire pour passer de l'idée à la machine.
C'est ce niveau supérieur d'abstraction qui modifie profondément la nature du travail. Une partie de l'effort autrefois consacrée à mémoriser une syntaxe, à rechercher une fonction, à consulter des documentations parfois interminables (et si possible actualisées), à explorer les dépendances, à écrire du code répétitif, à résoudre des problèmes techniques déjà rencontrés par des milliers d'autres programmeurs, à gérer la mémoire, les performances, la sécurité, etc. (la liste de contraintes est longue), peut désormais être consacrée à l'essentiel : définir avec précision ce que le programme doit réellement faire, comment il doit se comporter et quels résultats il doit produire.
Cette couche de facilité supplémentaire ne signifie pas que l'IA supprime toutes les difficultés. Loin de là ! Mais la répartition du travail change profondément : celui qui conçoit le programme peut consacrer davantage de temps à sa logique, à son fonctionnement, à son ergonomie et à ses améliorations, plutôt qu'aux innombrables détails techniques nécessaires à sa réalisation.
Utiliser des outils n'a jamais annulé une compétence
L'idée selon laquelle l'usage d'un outil puissant retirerait sa compétence à celui qui s'en sert résiste assez mal dès qu'on l'applique à d'autres domaines :
- Un architecte n'a pas cessé d'être architecte lorsqu'il a abandonné la planche à dessin pour la CAO.
- Un photographe ne perd pas son regard de lynx parce que son appareil photo mesure automatiquement l'exposition et effectue la mise au point en une fraction de seconde.
- Un ingénieur n'est pas moins ingénieur parce qu'un logiciel réalise en quelques secondes des calculs qu'il aurait autrefois effectués pendant plusieurs jours.
Personne ne demande à un développeur de réécrire le fonctionnement d'une souris, d'un disque dur ou d'une fenêtre de son système d'exploitation chaque fois qu'il crée une nouvelle application, avant de lui accorder le droit de se déclarer programmeur. L'intelligence artificielle pousse simplement cette logique beaucoup plus loin.
Le clavier n'est pas le centre de la programmation
La compétence ne se mesure pas à la quantité de travail mécanique évitée. Elle se mesure davantage à la capacité de produire volontairement un résultat maîtrisé.
Imaginons deux personnes.
- La première tape elle-même 3 000 lignes de code mais suit mécaniquement un tutoriel qu'elle comprend à peine.
- La seconde définit avec précision l'architecture d'une application puis fait générer 80 % du code par une IA et contrôle son fonctionnement.
Laquelle a réellement exercé le plus d'activité de programmation ? Vous avez dix secondes.
La question montre immédiatement la faiblesse du critère « qui a tapé le code ». Le clavier est un moyen d'entrée. Ce n'est pas le siège de l'intelligence du programme. Le pourcentage de caractères frappés au clavier n'est pas une unité très sérieuse pour mesurer la réalité du travail intellectuel accompli.
« Fais-moi une application » ne suffit pas - L'essentiel reste humain
La programmation assistée par IA ajoute donc un intermédiaire capable de traduire une partie des intentions du programmeur en code. Mais si une description précise favorise généralement un meilleur résultat, elle ne le garantit pas. Inversement, une IA peut aider à clarifier une demande confuse, proposer des solutions techniques et suggérer une architecture. La qualité du dialogue et des vérifications compte donc autant que la qualité de la première demande. Là où les bavards du clavier sont ravis, les taiseux de la touche sont contrariés.
Écrire :
« Fais-moi un gestionnaire de fichiers »
peut certes produire quelque chose. Même beau. Mais surtout basique et banal. En revanche, écrire :
« Garantir la persistance de la multi-sélection après tri, la réversibilité des opérations (Undo), l'intégrité des noms Unicode et la gestion non bloquante des fichiers verrouillés ; effectuer les déplacements inter-volumes par copie puis suppression conditionnée au succès de la copie ; exécuter tous les traitements de façon asynchrone, sans bloquer le thread UI. »
fait sortir du bac à sable ! Bon, je reconnais, j'ai un peu poussé le prompt pour illustrer le propos 😊.
L'IA peut ÉCRIRE le code correspondant. Elle ne dispense pas de CONCEVOIR le système. La mécanisation ne supprime d'ailleurs jamais systématiquement l'intervention humaine : elle ne fait que déplacer le centre de gravité.
Pendant longtemps, une personne pouvait parfaitement savoir ce qu'elle voulait construire sans posséder suffisamment de connaissances techniques, de temps ou de moyens pour le réaliser. L'intelligence artificielle réduit désormais cette distance entre l'idée et son exécution.
Cela ne signifie pas que tout le monde devient instantanément ingénieur logiciel grâce à ChatGPT. Cela signifie qu'un nombre beaucoup plus important de personnes peut désormais transformer une idée suffisamment précise en un programme fonctionnel. L'IA ne supprime toutefois pas les difficultés : elle en déplace certaines. Le travail change. Il ne s'évapore pas.
Le programmeur sur IA n'est pas pour autant moins créatif, moins ingénieux, plus fainéasse. Il est simplement aidé pour mener son projet à terme et balayer les contraintes auxquelles il faisait face jusqu'à maintenant. Le vrai progrès technique ne consiste pas à préserver religieusement les difficultés d'hier, mais à les supprimer.
Une IA peut-elle vraiment créer un logiciel complet ?
Il y a encore quelques années, demander à une IA d'écrire un logiciel complet relevait davantage de l'expérimentation que d'une méthode de travail sérieuse. En 2026, la situation a bien changé. Affirmer qu'une IA (ChatGPT, Claude...) serait incapable de développer une application complète ne correspond plus à la réalité. Mais jusqu'où peut-on aller ? Et surtout, peut-on vraiment se passer de connaissances en programmation ?
OUI. Il est désormais possible de créer des logiciels sans nécessairement maîtriser le langage dans lequel ils sont programmés. Avec une différence de taille : ce qui peut aujourd'hui se réaliser en quelques heures ou quelques jours exigeait autrefois des semaines, des mois, voire bien davantage, selon les compétences de départ et la complexité du projet.
Mais, comme on l'a vu plus haut, cela ne signifie pas que le travail disparaît. Il change simplement de nature. Et, contrairement à ce qu'on pourrait croire, décrire précisément le fonctionnement d'un logiciel n'est pas toujours plus facile que d'en écrire le code. Savoir s'adresser à une IA ne signifie pas simplement savoir lui parler. Cela suppose de savoir analyser un problème, organiser sa pensée, formuler des exigences précises, anticiper les difficultés et distinguer ce qui est souhaité de ce qui est techniquement réalisable. Inutile de se faire du mal avec un tel prompt :
« Wesh frérot, fais-moi une appli de ouf, genre un truc qui fait tout, super stylé, sans bugs et tout, tu vois le délire ? »
La différence entre une pensée formulée vaguement et la même formulée avec précision fait tout !
Les connaissances en programmation restent évidemment précieuses. Elles permettent de comprendre plus rapidement les erreurs, de prendre de meilleures décisions techniques et de repérer certains problèmes que l'IA pourrait laisser passer. Mais elles ne constituent aujourd'hui plus nécessairement un préalable à la création d'un logiciel.
Même si les capacités des IA ont considérablement progressé, leurs performances varient selon la complexité des tâches, et la fiabilité des logiciels produits dépend également de la qualité des vérifications et des tests réalisés. Il est donc prudent de bien distinguer la génération du code, la résolution de problèmes, et la fiabilité d'un logiciel complet.
Qui plus est, il existe de véritables objections techniques à l'utilisation de l'IA en programmation. Elles concernent la sécurité, les dépendances, la maintenance, le contrôle du code et la difficulté à évaluer des systèmes qu'on ne comprend pas entièrement.
BONUS : quelques règles simples pour travailler efficacement avec une IA
- Ne pas demander à l'IA de deviner ce qu'on a en tête.
- Décrire le projet aussi précisément que possible, puis le faire évoluer progressivement.
- Il n'est pas indispensable de tout prévoir dès le départ. On peut commencer par une première version fonctionnelle, essayer les différentes commandes, repérer ce qui manque et demander les améliorations nécessaires.
- Une bonne méthode consiste à soumettre le programme à un second fil de discussion, voire à un autre modèle d'IA, en demandant de rechercher ce qui pourrait poser problème dans le code.
- Ne pas oublier qu'un programme qui semble correct n'est pas nécessairement un programme qui fonctionne. Et un programme qui fonctionne n'est pas nécessairement un programme fiable. Cela vaut d'ailleurs aussi pour le code écrit par des développeurs humains. L'IA n'a pas inventé les bugs, même si elle sait parfois en produire sans honte et avec une efficacité redoutable. Et ne vous fiez pas à sa feinte repentance à chacun de ses « Je suis désolé ! ».
Conclusion
Programmer avec l'assistance d'une intelligence artificielle n'est pas identique à programmer comme en 1985, pas plus que programmer en BASIC en 1985 n'était identique à programmer une machine des années 1950. Les outils changent. Le niveau d'abstraction monte. Certaines compétences perdent de leur importance, d'autres en gagnent. La syntaxe peut être davantage déléguée. Mais la conception, la logique, l'organisation, l'évaluation et la capacité à définir précisément ce que l'on veut restent déterminantes.
La nouveauté n'est donc pas que les ordinateurs savent exécuter nos instructions. Ils le font depuis des décennies. C'est qu'ils deviennent capables de nous aider à transformer nos idées en instructions exécutables.
En 2026, il est donc devenu possible de développer des logiciels parfois très élaborés sans écrire soi-même une seule ligne de code. Cela ne signifie pas que tout le monde peut réaliser n'importe quel programme, ni que les développeurs professionnels seraient devenus inutiles. Car sans le travail des programmeurs de bas niveau, point de bibliothèques de haut niveau ! Les compétences techniques restent essentielles pour les projets exigeants, et l'intelligence artificielle ne dispense personne de réfléchir, de tester ou de vérifier ce qu'elle produit. C'est la répartition du travail qui est profondément modifiée.
De plus, si l'IA ne transforme pas automatiquement son utilisateur en programmeur, elle ne retire certainement pas ce statut à celui qui l'utilise réellement pour programmer. Mais refuser une évolution au motif qu'elle facilite le travail reviendrait à considérer qu'un outil devient suspect dès qu'il est efficace. On peut évidemment continuer à s'éclairer à la bougie, mais l'électricité n'a jamais empêché personne d'avoir de bonnes idées.
Et c'est probablement là l'apport le plus intéressant de l'intelligence artificielle : elle n'annule pas la créativité humaine, mais transforme aussi la manière dont elle s'exerce et lui donne davantage de moyens de s'exprimer.
J'en ai rêvé, Sony l'IA l'a fait.




0 commentaire