26 points par GN⁺ 2026-02-02 | 1 commentaires | Partager sur WhatsApp
  • antirez définit le processus d’écriture de logiciels avec l’assistance de l’IA comme de la « programmation automatique » (Automatic Programming), et estime que cela deviendra bientôt le standard de la production logicielle
  • Même avec le même LLM, le résultat peut varier fortement selon l’intuition humaine, la conception et les ajustements continus de direction
  • Le vibe coding consiste à laisser l’IA faire sans grande compréhension, tandis que la programmation automatique suppose une vision claire et un contrôle du développeur
  • Même le code généré par l’IA repose sur des données de préapprentissage accumulées par les humains et sur leur jugement, et la propriété du résultat revient au développeur
  • La programmation s’automatise de plus en plus, mais les idées et la vision restent encore du domaine humain

Définition du concept d’Automatic Programming

  • Le processus consistant à écrire des logiciels avec l’aide de l’IA est appelé programmation automatique (Automatic Programming)
  • Cette approche deviendra bientôt le processus standard d’écriture de logiciels

Différence avec le vibe coding

  • Le vibe coding est une manière de générer un logiciel avec l’IA sans participer du tout au processus
    • Si l’on décrit ce que l’on veut en termes très généraux, le LLM produit alors la première idée / conception / code qui lui vient naturellement, en fonction de ses données d’entraînement et de l’échantillonnage propre à cette exécution
    • Au mieux, le vibe coder se contente de signaler ce qui ne fonctionne pas ou ce qui diffère des attentes
  • La programmation automatique vise une haute qualité et suit rigoureusement la vision logicielle du producteur
    • Cette vision est multicouche : elle va de la manière exacte d’exécuter une tâche donnée jusqu’au fait d’indiquer directement à l’IA comment écrire une fonction précise
    • Ce qu’il faut faire est aussi un élément central

Importance du facteur humain

  • Même avec le même LLM, les résultats varient fortement selon l’intuition, la conception, les ajustements continus de direction et les idées sur le logiciel de la personne qui pilote le processus
  • Dire « Claude a fait ce logiciel en vibe coding » n’est pas une formulation appropriée
  • Si l’on comprend ce qui se passe et que l’on produit réellement le logiciel, alors il s’agit bien du logiciel que l’on produit soi-même

Point de vue sur la propriété du code

  • Les données de préapprentissage ne sont pas la seule chose qu’apprend un LLM (le RL a aussi un poids important), mais elles sont produites par les humains
    • Il ne s’agit donc pas de s’approprier quelque chose d’autre
  • On peut considérer le code généré par l’IA comme « à nous », et on est en droit de le faire
  • Le préapprentissage est un cadeau collectif qui permet à beaucoup de personnes de faire des choses qu’elles ne pourraient jamais accomplir seules
    • Comme si l’on était relié, d’une certaine façon, à un esprit collectif
  • Le code généré par programmation automatique est votre code, votre résultat, votre production, et vous pouvez en être fier

Le cas de Redis

  • Redis n’a rien de particulièrement novateur sur le plan technique
    • À ses débuts, ce n’était rien de plus qu’un assemblage de structures de données de base et de code réseau qu’un programmeur systèmes compétent aurait pu écrire
  • Pourtant, il est devenu un logiciel extrêmement utile grâce aux idées et à la vision qu’il contient

Conclusion

  • La programmation est désormais automatisée, mais la vision ne l’est pas encore

1 commentaires

 
GN⁺ 2026-02-02
Avis Hacker News
  • Avec plus de 30 ans de carrière dans le secteur, je me suis récemment plongé à fond dans le développement piloté par les spécifications (spec-driven development)
    J’utilise Claude Code et GPT-5.2 (CoPilot) pour générer les exigences, puis j’affine les specs en répétant plusieurs cycles d’auto-revue (self-review)
    Une fois la spécification finalisée, Claude Code rédige le plan d’implémentation et le code, et les fonctionnalités principales sont prêtes en 20 minutes
    Cela me rappelle la méthode waterfall de mon époque dans l’industrie de la défense, mais grâce à l’IA, j’ai l’impression qu’une approche bien plus rapide et raffinée d’« augmented cascade » est désormais possible

    • Pour que le waterfall fonctionne bien, il faut une vision de long terme et que l’auteur des spécifications soit aussi le développeur
      L’agile était une réponse de survie pour les entreprises incapables de réunir ces conditions et devant livrer vite
    • Moi aussi, je pense que l’avenir de la programmation sera centré sur les spécifications
      Je me demande s’il existe des exemples publics de specs qui vaillent le détour. Comme la génération précédente admirait le code de Quake de John Carmack, la suivante célébrera peut-être d’excellentes spécifications
    • Même la spécification la plus sophistiquée a du mal à éviter les frictions avec la réalité
      Les humains ne peuvent pas anticiper toute la complexité et tous les cas particuliers. Quand on construit réellement, il y a toujours un moment où l’on se dit : « à ça, je n’avais pas pensé »
    • L’agile est une manière de trouver progressivement la bonne direction dans un environnement où les exigences changent
      Si les exigences sont déjà claires, ce n’est pas vraiment nécessaire
    • Cette approche ressemble au fond à une version moderne du concept de Design by Contract
      La différence, c’est qu’on utilise des LLM au lieu d’équipes en dessous
      Références : Design by Contract (Goodreads), PDF original
  • Je ne suis pas d’accord avec l’expression selon laquelle le pré-entraînement (pre-training) serait « le cadeau collectif de l’humanité »
    Si c’est volé, ce n’est pas un cadeau
    Même si un code est généré par un LLM, si j’en prends la responsabilité et que je le maintiens, alors je considère que c’est mon code
    Le problème apparaît quand l’auteur se dérobe à sa responsabilité

    • L’expression « cadeau volé » m’a instinctivement rebuté
    • Le savoir ne se vole pas. De la même façon qu’on ne dit pas qu’on a volé les mathématiques, je pense que le partage de la connaissance est au cœur même du progrès humain
  • En utilisant Claude Code et Opus 4.5, je suis arrivé à une conclusion similaire
    J’appelle cela le « zen coding ». On traite la base de code comme un jardin zen, on conçoit soigneusement les spécifications et on relit ligne par ligne
    L’IA ne doit pas agir comme concepteur, mais comme outil
    Celui qui dispose de spécifications claires peut obtenir un code de bien meilleure qualité avec l’IA
    Le vibe coding est une expérimentation intuitive, le zen coding est une discipline d’artisan

  • Quand j’entends des formulations du genre « Claude me l’a donné », j’ai tout de suite l’impression que le code a encore un côté brouillon
    Il ne faut ni blâmer l’outil ni s’en excuser : il suffit d’améliorer le résultat

    • Le problème, c’est qu’on peut désormais aller déjà très loin sans vraiment se soucier de l’architecture ou de la qualité du code
    • C’est justement pour cela qu’il faut relever nos attentes et utiliser l’automatisation pour améliorer la qualité des applis codées en mode vibe
  • L’expression « le pré-entraînement est un cadeau de l’humanité » me met mal à l’aise
    Beaucoup de développeurs open source ne voulaient pas que leur code serve à l’entraînement des LLM
    Une partie du code généré par les LLM reprenait parfois presque mot pour mot du code que j’avais vu dans des livres ou des blogs
    À minima, je pense qu’indiquer la source est une question d’éthique

    • Tout développement s’appuie sur les épaules de ceux qui nous ont précédés. Il n’existe pas de création totalement indépendante
    • Les licences open source et le domaine public sont juridiquement différents
      Si un LLM a été entraîné sur du code GPL, on peut défendre l’idée que ses résultats devraient eux aussi être publiés sous GPL
    • L’histoire regorge d’œuvres utilisées contre la volonté de leur créateur
      Par exemple, Kafka avait demandé qu’on brûle ses manuscrits, et ils sont aujourd’hui devenus des classiques de la littérature
    • D’autres répondent : « Quand tu implémentes Quicksort, tu cites Hoare ? »
    • Les droits de propriété intellectuelle non plus ne sont pas absolus, et peuvent si nécessaire faire l’objet d’une appropriation sociale (expropriation)
  • Dans les années 1950-60, l’« automatic programming » désignait en réalité les compilateurs
    Les 4GL des années 1980 étaient des langages de haut niveau spécialisés par domaine, et les LLM d’aujourd’hui n’en sont encore qu’au stade de la génération de brouillons à partir de spécifications en langage naturel
    Au final, les humains doivent toujours améliorer le résultat par itérations successives et changements de conception

  • Nous sommes peut-être en train d’assister à la dernière génération de développeurs-artisans (artisanal coders)
    Des artisans comme Antirez manipulent des concepts qui dépassent les limites humaines ordinaires et produisent des logiciels simples et élégants comme Redis
    L’IA peut générer du code à une vitesse impossible pour les humains, mais ce n’est ni le pinceau ni la toile
    La nouvelle génération sera artisan d’une manière complètement différente
    Moi aussi, cela m’inquiète, mais j’accueille ces nouveaux outils tout en expérimentant une nouvelle ère de l’artisanat

    • Aux échecs aussi, les humains ne peuvent plus battre les ordinateurs, et pourtant le jeu reste très populaire
    • Antirez est désormais plus proche d’un influenceur IA, mais coder reste malgré tout une activité plaisante
    • Même si les LLM aident à écrire du code, une compréhension des concepts fondamentaux et de la structure reste indispensable
      La seule nouveauté, c’est qu’il faut en plus savoir bien manier l’IA ; les connaissances existantes ne deviennent pas inutiles pour autant
  • J’ai trouvé marquante, dans le texte d’Antirez, la distinction claire entre « vibe coding » et « automatic programming »
    C’est un changement comparable au passage, en architecture, du dessin manuel au BIM et à la CAO
    À l’ère de l’IA, les développeurs ne codent pas moins : c’est le centre de gravité de la valeur qui change

  • « vibe coding vs automatic coding » n’est pas une dichotomie, mais un spectre
    On peut mélanger plusieurs niveaux d’approche dans un même projet

    • La sortie d’un LLM varie selon le niveau technique et l’intention de l’utilisateur ; au final, le résultat lui revient donc
      L’essentiel est d’utiliser l’outil avec esprit critique et de l’améliorer en continu
    • L’IA ressemble à un instrument de musique dont on peut jouer de multiples façons
      Certains appellent cela le « spec strumming »