32 points par GN⁺ 2025-08-08 | 14 commentaires | Partager sur WhatsApp
  • Rust, Python et TypeScript devraient s’imposer comme les langages centraux du développement logiciel à l’avenir
  • Avec la généralisation des outils de codage IA, la fidélité des développeurs à un langage s’affaiblit, et les langages pratiques dotés d’un solide écosystème sont de plus en plus privilégiés
  • Le paradigme de la programmation orientée idée (idea-oriented programming) émerge : les développeurs se concentrent sur la conception et la revue, tandis que l’implémentation est confiée à l’IA
  • Ces trois langages disposent à la fois de systèmes de types avancés et de puissants écosystèmes de gestionnaires de paquets, ce qui les rend favorables à l’usage de l’IA, à la collaboration et à la prévention des erreurs
  • La qualité des messages d’erreur, l’écosystème et l’intégration aux plateformes deviennent elles aussi des critères de plus en plus importants

Pourquoi Rust, Python et TypeScript montent en puissance

  • Rust excelle dans le logiciel système, les domaines exigeant de hautes performances, ainsi que la sûreté des types et l’efficacité mémoire
  • Python est idéal pour l’expérimentation, le prototypage et l’exploitation de bibliothèques mathématiques et scientifiques, ce qui permet de valider rapidement des idées
  • TypeScript s’applique immédiatement au web, au navigateur et à diverses plateformes, et gagne en extensibilité grâce à son puissant système de types et à l’écosystème npm

Le paradigme de développement transformé par l’IA : la programmation orientée idée

  • Avec la généralisation des outils de codage IA (Large Language Model), la programmation évolue vers un schéma « conception de l’idée → implémentation par l’IA → conception/revue par l’humain »
  • Le vibe coding se rapproche d’instructions improvisées et floues, tandis que l’idea-oriented programming met l’accent sur la conception, la structure et des principes durables
  • Le développeur définit les orientations et la conception principales, tandis que l’IA prend en charge les tâches répétitives et d’implémentation ; une relation comparable à celle d’un architecte et d’un apprenti

L’évolution des critères de choix d’un langage

  • Autrefois, on travaillait rapidement dans le langage que l’on maîtrisait le mieux (par ex. Rust), mais avec l’IA, les bibliothèques disponibles, les performances et l’intégration aux plateformes deviennent plus importantes
  • Selon le projet, on choisit le langage le plus adapté à la situation : Python (machine learning), TypeScript (web, extension VSCode), Rust (choix par défaut)

L’importance croissante des systèmes de types

  • Dans un environnement de développement assisté par l’IA, les systèmes de types avancés prennent encore plus d’importance
  • Rust et TypeScript imposent au niveau du code la validité des états et des données, ainsi que la prévention des erreurs, ce qui réduit aussi la probabilité d’erreurs de l’IA
  • Python peut également renforcer sa sûreté de typage via des outils comme mypy ou pydantic

La montée en valeur des écosystèmes et des gestionnaires de paquets

  • Développer avec l’IA facilite l’usage de grandes bibliothèques, si bien que la taille de l’écosystème et la qualité du gestionnaire de paquets deviennent encore plus importantes
  • Rust (cargo), TypeScript (npm) et Python (uv, etc.) disposent tous de gestionnaires de paquets modernes

La petite syntaxe et les contournements comptent moins, mais la qualité des messages d’erreur et de la documentation reste essentielle

  • Les LLM (IA) corrigent rapidement les erreurs de syntaxe répétitives, mais des messages d’erreur et des guides clairs restent nécessaires pour permettre une correction efficace
  • Comme les efforts de la communauté Rust en matière d’ergonomie du langage, l’IA exploite elle aussi de bons messages d’erreur pour produire un meilleur code

Conclusion : les LLM ouvrent à tous l’accès à de puissants outils de développement

  • À l’ère de la programmation orientée idée, même un junior peut acquérir une expérience de conception et de pilotage proche de celle d’un Principal Engineer
  • Certains s’inquiètent d’une réduction du « flow » propre au codage, mais une expérience de développement centrée sur la conception et les idées devrait gagner en valeur

► À l’ère du travail avec l’IA, Rust, Python et TypeScript s’imposent comme des standards du développement grâce à leurs types robustes, à leur écosystème et à leur support des plateformes

14 commentaires

 
pcj9024 2025-08-09

Parmi les trois, celui qui m’est familier, c’est TS, celui que je sais utiliser, c’est Python, et celui que je ne connais pas bien mais que j’ai envie de faire, c’est Rust...
Quoi qu’il en soit, le plus rassurant dans tout ça, c’est que Java ne fasse pas partie de ces trois-là

 
charva856 2025-08-08

Dans l’évolution de l’expérience, de codeur => développeur qui conçoit l’architecture fonctionnelle => architectures plus vastes (système, réseau, sécurité) => planification,
on a l’impression qu’il y aura moins d’occasions pour les codeurs d’apprendre sur le terrain.

Si la programmation centrée sur les idées devient la norme,
j’ai le sentiment qu’au minimum, savoir gérer seul une stack full-stack basée sur l’IA deviendra la base pour un codeur, etc.

 
ceruns 2025-08-08

Je ne trouve toujours pas de raison suffisante pour passer de C à Rust pour du code haute performance. Quelque chose comme Zig, avec une syntaxe au moins un peu plus simple, me semble mieux adapté au développement de bout en bout, et pour le reste, de toute façon, l’architecture consiste à profiler puis à n’implémenter que les parties appelées depuis un langage de haut niveau (en tant qu’utilisateur de Python). Avec Rust, les coûts de développement liés à l’interaction avec d’autres langages, comme le contrôle du GIL, sont étonnamment assez élevés. C, à la base, est justement ce que les autres langages attendent.

 
ztaka 2025-08-12

S'il faut utiliser Zig, autant utiliser C haha...

 
bichi 2025-08-11

Je soutiens Zig :)

 
allinux 2025-08-08

Si l’on passe de C à Rust, je dirais en réalité que la raison est la productivité. Le support de la sûreté mémoire est appréciable, mais rien qu’en considérant cargo, je pense que c’est déjà une raison suffisante pour franchir le pas.
Quand on crée un module d’extension Python, la gestion du GIL est toujours délicate, quel que soit le langage. C’est pareil en C/C++ ; bien sûr, il y a des exceptions quand on utilise des bibliothèques ou des outils qui aident à écrire des modules d’extension, et Rust dispose lui aussi d’un excellent crate appelé PyO3.
Par ailleurs, du point de vue d’un développeur C, il est naturel que Zig soit facile à manier. Fondamentalement, Zig est aussi un compilateur C, au point qu’on peut simplement importer et utiliser directement des fichiers d’en-tête.

 
ceruns 2025-08-08

On peut aussi le voir comme ça. D’après mon expérience, par rapport à PyO3, python.h — ce qui explique aussi pourquoi zig peut être une bonne alternative — permettait beaucoup plus facilement de descendre au niveau de l’OS ou de la vectorisation puis d’en remonter ; en revanche, du point de vue de l’absence de souci de gestion mémoire, au-delà d’une certaine échelle Rust peut offrir une meilleure productivité à long terme.

Si le C est facile, c’est parce qu’il constitue la base des grands langages modernes — Python/TS/Go/PHP/Java — ou qu’il en partage une syntaxe proche ; autrement dit, ce n’est pas seulement que sa syntaxe est simple, mais aussi que c’est une langue que l’on finira par rencontrer, ou que l’on a déjà rencontrée un jour. À l’inverse, Rust se situe à l’opposé, si bien que malgré sa grande valeur, son adoption dans une équipe demande des efforts considérables. Je pense que c’est parce que c’est moins un langage évolutif qu’un langage innovant.

 
barca105 2025-08-08

On dirait que c’est un article écrit par la personne qui a créé la crate rayon de Rust.
Python et TypeScript semblent bien être encore aujourd’hui des langages centraux, mais...
Rust n’occupe pas encore vraiment cette place. Je me dis que c’est peut-être à cause de sa réputation de difficulté.
J’espère que les LLM feront baisser la barrière à l’entrée et permettront aussi à Rust d’émerger comme un langage central.

 
shoyuvanilla 2025-08-08

Niko Matsakis occupe une position qui fait de lui, au-delà de rayon, une figure presque paternelle de Rust. Bien sûr, Graydon Hoare en est le fondateur, mais on peut dire que c’est Niko qui a le plus contribué aux parties les plus importantes du langage.

 
onestone 2025-08-08

En tant que développeur Rust, vous avez naturellement plus d’affection pour ce langage, donc l’information est peut-être un peu biaisée !

Merci de partager ces informations.

 
bonobono 2025-08-08

PHP déchire.

 
tested 2025-08-08

Mais chez nous, c’est Java, non ?

 
overthinker1127 2025-08-08

On dirait que Go a été écarté à cause du GC.

 
lallablah 2025-08-08

Les trois grands, carrément incroyable