À l’ère de l’IA, l’ascension de TypeScript : les éclairages d’Anders Hejlsberg, architecte en chef
(github.blog)- La raison qui l’a poussé à commencer à travailler sur TypeScript en 2012 était que JavaScript manquait de scalabilité pour les grandes bases de code développées par plusieurs équipes, et que les équipes gérant des millions de lignes de code faiblement typé avaient besoin d’un outil pour maîtriser la complexité des systèmes
- En 2025, TypeScript est le langage le plus utilisé sur GitHub, dépassant pour la première fois JavaScript et Python, avec plus d’un million de développeurs ayant commencé à contribuer en TypeScript cette année seulement (soit une hausse de 66 % sur un an)
- Le succès de TypeScript tient à la compatibilité entre son système de typage statique et la génération de code par l’IA : lorsque l’IA apprend et génère à partir de grands volumes de code, les types jouent le rôle de vérificateur de vérité, en renforçant la fiabilité et la maintenabilité
- Le compilateur a été réécrit en Go, permettant un gain de performance de 10x ; la moitié vient de l’exécution native, l’autre moitié de la concurrence à mémoire partagée, tout en préservant parfaitement le comportement existant pour garantir la compatibilité avec la communauté
- À l’ère de l’IA, l’IDE évolue pour devenir un environnement destiné aussi aux agents, pas seulement aux développeurs, et le système de types structurel de TypeScript fournit la base permettant aux agents de refactorer en sécurité et de raisonner de façon déterministe sur une base de code
Contexte de naissance et objectifs de TypeScript
- En 2012, JavaScript était déjà au cœur du web, mais manquait de scalabilité pour le développement à grande échelle
- Les équipes déployaient des millions de lignes de code faiblement typé, et plus les systèmes devenaient complexes, plus il devenait difficile de raisonner dessus
- L’objectif de TypeScript n’était pas de remplacer JavaScript, mais de rendre possible le développement à grande échelle en y ajoutant des types, des outils et des capacités de refactoring
- Anders pensait que « si 25 % de la communauté JavaScript s’y intéressait, ce serait déjà un succès », mais le niveau atteint aujourd’hui dépasse largement ses attentes
- « C’est étonnant de voir combien de personnes en dépendent chaque jour. Toute l’équipe en est encore surprise. »
Les caractéristiques clés de TypeScript
- Un surensemble de JavaScript fondé sur les types, compilé en JavaScript standard
- Ajoute la vérification statique des types, les interfaces, les génériques et des fonctionnalités modernes du langage
- Les informations de type sont supprimées à la compilation, ce qui permet au code de fonctionner partout où JavaScript s’exécute
- Pourquoi les développeurs l’utilisent :
- Détection des erreurs de type avant l’exécution
- Amélioration de l’autocomplétion dans l’IDE et du refactoring
- Maintenance possible de grandes bases de code entre plusieurs équipes
- Intégration fluide avec les frameworks et les outils assistés par l’IA
- Principaux cas d’usage : frameworks frontend (React, Angular, Vue), systèmes backend (Node.js, Deno), SDK, design systems et frameworks d’agents basés sur l’IA nécessitant un typage fort
La domination de TypeScript sur le marché
- En 2025, presque tous les frameworks frontend modernes (React, Next.js, Angular, SvelteKit) génèrent par défaut des projets en TypeScript
- Résultat : des bases de code plus sûres, une meilleure autocomplétion et moins de sessions de débogage d’
undefinedà 3 heures du matin
- Résultat : des bases de code plus sûres, une meilleure autocomplétion et moins de sessions de débogage d’
- « La magie, c’était de faire en sorte que TypeScript ressemble à JavaScript, tout en lui donnant des superpouvoirs. »
Réécriture du compilateur
- TypeScript était à l’origine auto-hébergé (écrit en TypeScript), ce qui préservait sa portabilité et sa facilité de bidouillage
- Mais les performances sont finalement devenues un problème
- « Renoncer à l’auto-hébergement a été douloureux, mais nous avons compris qu’il n’y avait plus rien à tirer en matière de performances. »
- Après avoir expérimenté avec C# et d’autres langages, le choix s’est porté sur Go
- Gain de performance de 10x : moitié grâce à l’exécution native, moitié grâce à la concurrence à mémoire partagée
- « On ne peut pas ignorer un facteur 10. »
- Le nouveau compilateur est une copie parfaite de l’ancien, bugs compris
- « La communauté n’aura rien à jeter. »
- Cette philosophie d’amélioration des performances sans changer le comportement est l’une des raisons pour lesquelles les développeurs font confiance à TypeScript
- Ce n’est pas un système réécrit de zéro tous les quelques années, mais un système évolutif qui préserve la compatibilité
Philosophie de l’open source
- Anders voit l’open source comme un écosystème qui reflète la sélection naturelle
- « L’open source a été une grande expérience. Personne n’a vraiment trouvé comment le financer correctement, mais nous y sommes. C’est plus grand que jamais et cela ne disparaîtra pas. C’est de l’évolution capturée dans le code. »
- Les données d’Octoverse vont dans ce sens : en 2025, les développeurs ont poussé près de 1 milliard de commits (en hausse de 25 % sur un an)
- 1,12 milliard ont été envoyés vers des dépôts publics et open source
- Le dépôt TypeScript est une archive vivante de l’évolution du langage, avec 12 ans d’issues, de pull requests et de notes de conception
- « Douze ans d’histoire sont capturés sur GitHub. Tout est consultable. C’est de l’évolution qu’on peut
grep. »
- « Douze ans d’histoire sont capturés sur GitHub. Tout est consultable. C’est de l’évolution qu’on peut
Pourquoi TypeScript prospère à l’ère de l’IA
- La donnée la plus marquante d’Octoverse 2025 : l’IA est en train de modifier les préférences de langage
- Les développeurs se tournent vers des langages typés qui rendent le code assisté par l’IA plus fiable et plus maintenable
- Selon Anders : « La capacité de l’IA à écrire du code dans un langage est proportionnelle à la quantité de ce langage qu’elle a vue. L’IA est une grande machine à reproduire, avec un peu d’extrapolation. Elle a vu énormément de JavaScript, de Python et de TypeScript, donc elle écrit bien du code dans ces langages. Les nouveaux langages partent en réalité avec un handicap. »
- Cette familiarité avec les données, combinée au système de typage statique de TypeScript, le rend particulièrement adapté aux workflows IA-first
- « Si vous demandez à l’IA de traduire 500 000 lignes de code, elle peut halluciner. Mais si vous lui demandez de générer un programme qui effectue cette traduction de façon déterministe, vous pouvez obtenir un résultat fiable. C’est précisément le problème pour lequel les types ont été créés. »
- Message central : dans un monde où humains et machines écrivent tous deux du code, les types ne sont pas de la bureaucratie, mais un vérificateur de vérité
De l’IDE aux agents
- L’essor des grands modèles de langage change la signification même des “outils pour développeurs”
- L’IDE évolue pour devenir un environnement pour les agents autant que pour les développeurs
- « L’IA a commencé comme assistante. Désormais, elle exécute des tâches et vous supervisez. L’IA n’a pas besoin d’un IDE comme nous ; elle a besoin de services. C’est pourquoi le travail autour du Model Context Protocol est intéressant. »
- Le rapport Octoverse décrit ce changement ainsi : « l’IA recompose les choix, pas seulement le code »
- Les langages typés comme TypeScript fournissent la structure nécessaire pour que les agents puissent refactorer en sécurité, répondre à des requêtes sémantiques et raisonner de manière déterministe sur les bases de code
- « L’objectif est d’encadrer les workflows IA avec suffisamment de déterminisme pour qu’ils restent utiles sans sortir de leur trajectoire. »
Un langage qui continue d’évoluer
- De Turbo Pascal à C#, puis à TypeScript, le travail d’Anders s’étend sur plusieurs décennies
- Ce qui impressionne, c’est la constance : construire des langages qui facilitent le raisonnement sur des logiciels complexes
- « Il n’y a rien de plus satisfaisant que de travailler sur quelque chose qui fait une différence. TypeScript continue d’évoluer, mais revient toujours à la même chose : aider les développeurs à exprimer clairement leur intention »
- Cette clarté peut expliquer pourquoi, en 2025, un nouveau développeur s’inscrit sur GitHub chaque seconde, et pourquoi une part croissante d’entre eux commence avec TypeScript
- L’histoire de TypeScript n’est pas seulement celle du design de langage, mais aussi celle de l’évolution
- Ce projet, né comme une solution pragmatique au problème de scalabilité de JavaScript, est devenu l’un des fondements de la manière dont les développeurs — et désormais l’IA — écrivent du code ensemble
1 commentaires
Le fait que l’IA soit performante parce qu’elle a vu beaucoup de langages est bien sûr un facteur important.
Mais au-delà de ça, je trouve que des choses comme les types inline en TS sont vraiment intéressantes.
Avec les caractéristiques de l’IA, je ne sais pas exactement comment l’attention est apprise dans le code,
mais j’imagine qu’elle respecte mieux les types quand ils sont proches du code, non ?
Sinon, il faudrait probablement utiliser un outil en interne pour lire les définitions de types et les rajouter une fois de plus au contexte (prompt),
et dans ce sens, je pense que c’est un vrai avantage.