IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

L'IA est en train de créer une génération de programmeurs illettrés
Par Namanyay

Le , par Namanyay

21PARTAGES

27  0 
L'IA est en train de créer une génération de programmeurs illettrés, par Namanyay

Il y a de cela quelques jours, Cursor est tombé en panne lors d'un arrêt de ChatGPT.

J'ai regardé fixement mon terminal, faisant face à ces messages d'erreur rouges que je déteste voir. Une erreur AWS est apparue. Je ne voulais pas la résoudre sans l'aide de l'intelligence artificielle (IA).

Après 12 ans de codage, j'étais devenu plus mauvais dans mon propre métier. Et ce n'est pas une hyperbole : c'est la nouvelle réalité des développeurs logiciels.

La décrépitude

Elle s'est insinuée subtilement en moi.

Tout d'abord, j'ai cessé de lire la documentation. Pourquoi s'embêter quand l'IA pouvait expliquer les choses instantanément ?

Ensuite, mes compétences en matière de débogage en ont pris un coup. Les traces de pile me semblent désormais inaccessibles sans l'IA. Je ne lis même plus les messages d'erreur, je me contente de les copier et de les coller.

Je suis devenu un presse-papier humain, un simple intermédiaire entre mon code et un LLM.

Auparavant, chaque message d'erreur m'apprenait quelque chose. Aujourd'hui ? La solution apparaît comme par magie et je n'apprends rien. La dopamine des réponses instantanées a remplacé la satisfaction d'une véritable compréhension.

La compréhension en profondeur est la prochaine chose qui a été affectée. Vous vous souvenez avoir passé des heures à comprendre pourquoi une solution fonctionne ? Aujourd'hui, je me contente d'appliquer les suggestions de l'IA. Si elles ne fonctionnent pas, j'améliore le contexte et je demande à nouveau à l'IA. C'est un cycle de dépendance croissante.

Viennent ensuite les changements émotionnels. Auparavant, la résolution de nouveaux problèmes faisait partie du plaisir de programmer. Maintenant, je suis frustré si l'IA ne me donne pas de solution en 5 minutes.


Le plus effrayant ? Je suis en train de construire un outil de développement alimenté par l'IA, mais je ne peux pas me débarrasser du sentiment que je contribue au problème même qui érode nos compétences collectives.

Le plan de désintoxication

Je ne propose rien de radical, comme de se passer complètement de l'IA - ce n'est pas réaliste. Je propose plutôt de commencer par des « journées sans IA ». Un jour par semaine où l'on :

  • Lit complètement chaque message d'erreur
  • Utilise à nouveau de vrais débogueurs
  • Écrit du code à partir de zéro
  • Lit le code source au lieu de demander à l'IA

Je ne vais pas mentir, c'est nul. Je me sens plus lent, plus bête et plus frustré.

Mais je vois aussi la différence. Je ressens un lien plus fort avec mon code et un sentiment de propriété, qui avait lentement disparu avec l'IA. De plus, j'apprends beaucoup plus.

La vérité (inconfortable)

Nous ne deviendrons pas des développeurs 10x plus performants grâce à l'IA.

Nous devenons 10 fois plus dépendants de l'IA. Il y a une différence.

Chaque fois que nous laissons l'IA résoudre un problème que nous aurions pu résoudre nous-mêmes, nous échangeons une compréhension à long terme contre une productivité à court terme. Nous optimisons les engagements d'aujourd'hui au détriment des capacités de demain.

Je ne suis pas en train de suggérer que nous abandonnions les outils d'IA - le mal est fait. Mais nous avons besoin de règles d'engagement. Voici quelques idées qui me viennent à l'esprit :

  • Pas d'IA pour les problèmes que vous n'avez pas essayé de comprendre d'abord
  • Lire et comprendre toutes les solutions proposées par l'IA
  • Des périodes régulières de codage sans l'aide de l'IA
  • Se concentrer sur l'apprentissage de modèles, et pas seulement sur la résolution de problèmes immédiats

Je ne mentirai pas, je ne pense pas être capable de suivre ces règles tout le temps. Mais c'est un début, et je crois fermement que toute personne qui débute en programmation devrait absolument suivre toutes ces règles.

En ce moment même, quelque part, un nouveau programmeur apprend à coder. Il ne connaîtra jamais la satisfaction de résoudre des problèmes par lui-même. Il ne connaîtra jamais la compréhension profonde que l'on acquiert en luttant pendant des heures contre un bogue.

Nous sommes en train de créer une génération de développeurs qui peuvent poser les bonnes questions à l'IA, mais qui ne peuvent pas comprendre les réponses. Chaque fois que l'IA tombe en panne, ils se retrouvent de plus en plus impuissants. Pour l'instant, l'IA n'est pas suffisamment capable de remplacer totalement les programmeurs, mais cela ne fera qu'empirer au fur et à mesure qu'elle s'améliorera. La vraie question n'est pas de savoir si l'IA va remplacer les programmeurs. Il s'agit de savoir si nous nous remplaçons nous-mêmes.

Essayez de coder sans IA pendant une seule journée. Les résultats pourraient vous surprendre.

Notre secteur est en pleine mutation et il est important d'en discuter les implications.

J'espère que mes écrits vous ont fait réfléchir.

Source : "AI is Creating a Generation of Illiterate Programmers", par Namanyay

Et vous ?

Quel est votre avis sur le sujet ?
Trouvez-vous ce point de vue crédible ou pertinent ?

Voir aussi :

Les défis croissants du code généré par l'IA : le code généré par l'IA pourrait augmenter la charge de travail des développeurs et accroître les risques, selon Harness

Les assistants d'IA de codage font-ils vraiment gagner du temps aux développeurs ? Une étude suggère que ces outils n'augmentent pas la vitesse de codage, mais augmentent significativement le taux de bogues

« Jusqu'à 90 % de mon code est désormais généré par l'IA », d'après Adam Gospodarczyk qui ravive le débat sur l'impact de l'IA et son aptitude à remplacer les humains dans la filière du génie logiciel
Vous avez lu gratuitement 4 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Pyramidev
Expert éminent https://www.developpez.com
Le 09/02/2025 à 2:00
Quand on écrit du code ou quand on configure des outils, on peut pousser la compréhension plus ou moins loin.

Le niveau zéro, c'est de copier-coller à l'arrache depuis un autre projet ou depuis ce que l'on trouve sur internet, d'adapter au minimum et de vérifier empiriquement si ça marche, sans forcément comprendre les détails de ce que l'on a copié-collé. Pour la maintenance, c'est pénible. Quand on voit quelque chose d'étonnant dans le code ou la configuration, on ne sait pas toujours si cela vient d'une bonne raison ou bien d'un manque de maîtrise des développeurs précédents.

Le niveau d'après, c'est de comprendre tout ce que l'on écrit. Cela permet au moins d'écrire des choses cohérentes.

Les niveaux au dessus, c'est d'accroître la maîtrise des technologies utilsées : accroître ses connaissances permet de choisir parmi un plus large éventail de possibilités et d'arriver à une solution plus adaptée.

Quel sera l'impact des modèles de langage sur le niveau de maîtrise des développeurs ?

Dans mon expérience, les entreprises ont souvent tendance à favoriser l'arrache. Si on code quelque chose au dessus du seuil de qualité attendu, alors il faut le faire suffisamment vite. Sinon, on fait face à des remarques du genre "Que fais-tu ? C'est bientôt la fin du sprint !" Les modèles de langage, qui offrent une nouvelle source de copié-collés pour coder sans comprendre, vont-ils inciter les entreprise à baisser le seuil de qualité attendu ? Je ne sais pas.

À part ça, je suis surpris de voir des gens utiliser des modèles de langage comme un remplacement de la documentation alors que tout le monde est supposé savoir que les modèles de langage peuvent halluciner. À ce rythme-là, il suffira de ne pas prendre pour argent comptant ce que sortent les modèles de langage pour se vanter d'avoir un esprit critique.
5  0 
Avatar de TJ1985
Membre chevronné https://www.developpez.com
Le 15/02/2025 à 9:37
Après plus de trente ans de carrière d'informaticien (à l'époque, ça voulait tout dire, depuis les contacts à Taïwan pour obtenir des PC compatibles performants et abordables à la résolution de problèmes sur des applications dont on ne connaissait pas l'existence avant la catastrophe en passant bien sûr par le développement d'applications en COBOL et autres langages "exotiques" sur grand système, utilisées par des milliers d'utilisateurs simultanés (oui, je sais. À l'époque, ça voulait dire beaucoup &#128521, j'apprécie la base documentaire que fournissent les IAs. Toujours à l'époque, bien avant internet, la doc disponible était souvent payante et pour le moins rébarbative. J'ai un souvenir ému d'une étagère pleine de la doc VMS...
L'arrivée de l'Internet a fait progresser les choses, et ChatGPT et Perplexity sont passées un cran au-dessus.
Toutefois, pour ce qui est de la production de code proprement dite, je dois être très bête mais au-delà d'exemples simplissimes, il ne se passe pas grand chose d'intéressant. J'utilise des outils généralistes, c'est peut-être une explication. Mais lorsque je lis qu'une plateforme de développement est en panne quand ChatGPT l'est, ça m'interroge.
Bref. Je crains que le nombre de développeurs au sens initial (analyste-programmeur geek, passionné, un peu style pizza+boutins+lunettes) s'amenuise rapidement.
Les survivants deviendront de plus en plus pointus sur des domaines de plus en plus restreints, et viendra un jour où ils sauront tout sur rien. À l'inverse, le management perd de plus en plus le contact avec la technique et utilise les couches techniques achetées à prix d'or comme alibi à son incompétence. A terme, ils ne sauront rien, mais sur tout. Ils seront devenus politiciens, quoi !
En conclusion, je pense que Yann LeCun a grandement raison lorsqu'il dit que les IA actuelles sont complètement idiotes et fonctionnent à des années lumières de nos cerveaux. La solution est de parvenir à ce que l'IA se fasse un vrai modèle du monde, qu'elle joue avec des concepts plutôt qu'avec des tokens.
NVidia devrait encore avoir quelques clients dans les prochaines années...
Ah, et cessez de vouloir réglementer l'IA ! On ne réglemente pas les tournevis, pourtant ils tuent sans difficulté si on les utilise pour ça !
3  0 
Avatar de air-dex
Membre expert https://www.developpez.com
Le 17/02/2025 à 20:19
L'IA n'est guère que la suite de StackOverflow et des forums d'antan. Y prendre du code c'est bien, savoir se l'approprier et l'adapter (ce qui est déjà un premier pas vers sa compréhension) c'est mieux. La différence par rapport à avant est qu'on ne va plus sur le même site.
3  0 
Avatar de smarties
Expert confirmé https://www.developpez.com
Le 18/02/2025 à 11:58
Citation Envoyé par air-dex Voir le message
L'IA n'est guère que la suite de StackOverflow et des forums d'antan. Y prendre du code c'est bien, savoir se l'approprier et l'adapter (ce qui est déjà un premier pas vers sa compréhension) c'est mieux. La différence par rapport à avant est qu'on ne va plus sur le même site.
Il y a aussi les commentaires StackOverflow qui peuvent être pertinents. Est-ce que l'IA s'en sert pour donner des réponses pertinentes ?

Sur le gros projet sur lequel je travaille, je ne trouve pas que l'IA me fait gagner beaucoup de temps car il y a 80% du temps des choses à corriger. La complétion normale est aussi efficace. La doc générée est trop basique donc je rédige quand même les règles métier pour compléter. Pour les tests c'est plutôt 50% d'efficacité et ça aide à augmenter la couverture de code.

Globalement je n'utilise plus l'IA, je refais quand même des essais de temps en temps quand même pour voir l'évolution.
1  0 
Avatar de stanis_konan
Nouveau Candidat au Club https://www.developpez.com
Le 19/02/2025 à 23:03
Moi je suis en apprentissage de coding et loin de moi l'idée d'utiliser l'IA car je veux comprendre les grands principes et être autonome au lieu de déléguer tout à l'IA. L'IA n'est pas mal en soi mais l'humanité a mon sens n'a pas encore atteint la maturité nécessaire pour encadrer ce truc qui selon moi n'augure rien de bon pour l'avenir qu'un asservissement pur et simple.
1  0 
Avatar de jmricher49
Membre à l'essai https://www.developpez.com
Le 20/02/2025 à 8:04
Effectivement la dépendance à l'IA est un problème
notamment pour les apprenants (collègiens, lycéens, étudiants). La tentation est grande de demander
à une IA de donner la réponse, sans comprendre et interpréter ce qui nous est retourné.

Ceux qui vont chercher à apprendre vont progresser, les autres non.

Je vois également avec Copilot sous Visual Studio Code que l'IA permet de nous simplifier la vie lorsque
par exemple j'écris des commentaires concernant le fonctionnement de telle ou telle fonction. Pour le code
cela peut être dangeureux dans certains cas et introduire des "bugs" ou des pertes d'efficacité comme par
exemple le code du tri rapide (quicksort).
1  0 
Avatar de tpericard
Membre éclairé https://www.developpez.com
Le 19/02/2025 à 12:26
Citation Envoyé par air-dex Voir le message
L'IA n'est guère que la suite de StackOverflow et des forums d'antan. Y prendre du code c'est bien, savoir se l'approprier et l'adapter (ce qui est déjà un premier pas vers sa compréhension) c'est mieux. La différence par rapport à avant est qu'on ne va plus sur le même site.
Oui, mais les commentaires de Stack Overflow peuvent aider grandement à comprendre. Et du coup à faire progresser le développeur.
0  0