4 points par GN⁺ 2025-11-17 | 4 commentaires | Partager sur WhatsApp
  • Les petites bibliothèques utilitaires JavaScript deviennent progressivement superflues à cause des capacités de génération de code des LLM
  • Par exemple, blob-util, un paquet npm vieux de 10 ans, est une boîte à outils de traitement des Blob, mais l’IA peut désormais générer à la volée un code similaire
  • Cette évolution permet moins de dépendances et un développement plus rapide, mais entraîne aussi la perte d’occasions d’apprentissage et de compréhension
  • Après l’extension des fonctionnalités intégrées de Node.js et des navigateurs, les LLM accélèrent la fin des petites bibliothèques
  • À l’avenir, la valeur de l’open source pourrait se maintenir dans des domaines créatifs, à grande échelle et spécialisés

Le déclin du petit open source et l’impact des LLM

  • blob-util, créé il y a 10 ans, est un ensemble simple d’utilitaires qui convertit l’objet Blob de JavaScript en chaîne de caractères ou en ArrayBuffer, et il est téléchargé plus de 5 millions de fois par semaine
    • L’auteur l’a créé en voyant que les utilisateurs de PouchDB avaient du mal à manipuler les Blob
  • Environ 80 % des développeurs utilisent aujourd’hui l’IA dans leur travail, ce qui permet aux LLM de remplacer des utilitaires simples
    • Exemple : Claude génère instantanément une fonction TypeScript qui convertit un Blob en ArrayBuffer
  • Le résultat produit par Claude ressemble à blob-util, mais il est plus verbeux, avec une validation de types excessive, tandis que la gestion des erreurs est améliorée
  • L’auteur note que cette évolution peut apparaître comme une réduction des dépendances et une amélioration de la robustesse du code

La perte de valeur de l’open source centré sur l’apprentissage

  • Le README de blob-util inclut un tutoriel mettant en scène le personnage Kirby ; au-delà de la simple fourniture de fonctionnalités, il visait aussi à aider à apprendre JavaScript
  • Dans un environnement de développement centré sur les LLM, les réponses immédiates passent avant la compréhension et l’enseignement, ce qui réduit le besoin de ce type d’open source pédagogique
  • Des initiatives comme llms.txt pour automatiser la documentation finissent par redéfinir le sens même de la documentation

Une nouvelle direction pour l’open source

  • L’auteur continue à faire de l’open source, mais estime que l’époque des petites bibliothèques à faible valeur est terminée
    • La tendance était déjà au recul avec l’extension des fonctionnalités intégrées de Node.js et des navigateurs (node:glob, structuredClone, etc.)
    • Les LLM ont décisivement accéléré ce mouvement
  • Même les bibliothèques qui jouaient un rôle pédagogique (comme Underscore.js) deviennent moins nécessaires
    • Une fonction simple comme le groupement de tableaux peut désormais être résolue avec les API standard

Les conditions de l’open source qui conserve de la valeur

  • La valeur se concentre sur des projets vastes, créatifs et spécialisés que les LLM ne peuvent pas générer facilement
    • Par exemple, le projet fuite et les recherches sur la détection des fuites de mémoire relèvent d’un travail créatif difficile à reproduire pour un LLM
  • À l’avenir, le sens de l’open source résidera dans les idées nouvelles et la créativité humaine
    • L’article mentionne par exemple le framework Ripple.js développé par Dominic Gannaway, en soulignant l’importance de l’esprit d’expérimentation humain

Conclusion

  • Les LLM ont rendu une partie de l’open source obsolète, mais il existe toujours de nouvelles possibilités de création open source
  • La créativité et l’esprit d’expérimentation des développeurs humains sont présentés comme les éléments clés de la pérennité de l’écosystème open source à l’ère de l’IA

4 commentaires

 
savvykang 2025-11-20

Je pense que c'est acceptable, tant qu'on peut empêcher les habitudes étranges de l'écosystème, comme left-pad.

 
shakespeares 2025-11-19

À mesure que l'époque offre un rapport effort/satisfaction de plus en plus faible, il semble que les petits utilitaires finiront par être délaissés, jugés sans assez de valeur au regard du travail (des efforts) nécessaire à leur maintenance.

 
GN⁺ 2025-11-17
Avis Hacker News
  • En ce moment, environ 80 % des développeurs utilisent l’IA dans leur travail
    Des utilitaires comme blob-util peuvent désormais souvent être générés directement par un LLM
    Mais cette approche est à double tranchant. Du code non vérifié laisse un fardeau de maintenance et peut échouer sur des cas limites
    C’est pourquoi, dans l’écosystème Java, des collections d’utilitaires standard fiables comme Apache Commons se sont imposées

    • Les anciennes bibliothèques utilitaires ont déjà été validées dans des environnements variés et sont stables
      À l’inverse, le code généré par un LLM semble logique en apparence, mais a de fortes chances de cacher des bugs étranges
  • Nous sommes entrés dans une époque où l’IA génère du code et des tutoriels à grande échelle, ce qui accélère la baisse de qualité et la spamification
    La motivation à créer un blog personnel ou une petite bibliothèque diminue

    • En réalité, le web déborde déjà depuis longtemps de spam de tutoriels de faible qualité
      Les textes produits par les LLM sont d’un niveau similaire, donc j’ai même l’impression qu’ils sont devenus plus faciles à filtrer
      Je teste la vraie valeur d’un tutoriel en exécutant le code dans un devcontainer. Si ça marche, ça vaut le coup ; sinon, je jette
    • Aujourd’hui, en cherchant un sujet précis sur YouTube, j’ai été surpris de ne voir défiler que des vidéos générées par IA
    • Dire que « l’ère du spam bas de gamme arrive » correspond déjà à la réalité
    • Un développeur web plaisante en disant que « maintenant qu’on va 10 fois plus vite, ça ne peut pas être mauvais pour l’humanité »
    • Quelqu’un lance en plaisantant du code assembleur en raillant : « si tu ne peux pas expliquer ça, tu n’es pas un vrai développeur »
  • L’enfer des micro-dépendances en JS était un cauchemar
    Maintenant que cette époque touche à sa fin, j’espère qu’on reviendra à une période où les développeurs réapprennent à coder

    • Regrouper de petits ensembles d’utilitaires dans un seul package, comme jQuery ou lodash, a donné les meilleurs résultats
    • Mais certains remettent en question l’idée que « tout est fini maintenant ». Au contraire, cela pourrait empirer avec le déluge de code généré par IA
    • Si le code LLM se multiplie, les fonctions faisant la même chose se disperseront en plusieurs versions, et chacun devra corriger les bugs de son côté
    • Utiliser un LLM ne pousse pas les gens à davantage apprendre. Quand un problème surgira, ils lui demanderont simplement de refactorer
    • « L’ère des vibe coders est arrivée », ajoute brièvement quelqu’un
  • Une question est posée : le « problème d’inverser un arbre binaire » existe-t-il vraiment ?

    • Cela semble faire référence au problème sur lequel le fondateur de Homebrew avait échoué lors d’un entretien chez Google
    • C’est probablement une simple erreur de l’auteur, et même si on le faisait, ce ne serait qu’un exercice sans intérêt consistant à inverser des opérateurs de comparaison
  • Certains adhèrent à l’idée que « l’ère des petites bibliothèques peu précieuses est terminée »
    Le langage Go n’a de toute façon jamais connu l’enfer des dépendances, et le problème de npm vient de facteurs culturels
    Désormais, il est plus utile et plus amusant de créer des produits qui fonctionnent réellement plutôt que des utilitaires

    • Comme le dit l’adage Go, « un peu de copie vaut mieux qu’un peu de dépendance » (Go Proverbs)
    • Une question apparaît aussi sur la fonctionnalité de Go qui aurait empêché ce type de problème de dépendances
  • Je pense que les micro-dépendances elles-mêmes n’ont aucun sens
    Il vaudrait mieux écrire la liste des fonctions dans un fichier Markdown pour que les gens les copient
    L’approche des petites bibliothèques en C basées sur des fichiers d’en-tête est plus pratique

    • En réaction mi-sérieuse mi-amusée, quelqu’un demande alors pourquoi on n’intègre pas directement ces bibliothèques d’en-tête dans la bibliothèque standard du C
    • Mais un contre-argument réaliste apparaît aussi : « avec le copier-coller, comment gère-t-on les mises à jour de sécurité ? »
  • La question se pose alors : quelle forme d’open source a encore du sens aujourd’hui ?
    Parce que le code publié finit de toute façon par être absorbé comme données d’entraînement pour l’IA
    Certains pensent donc qu’au lieu d’un FOSS complet, un modèle source-available pourrait être une alternative

    • D’autres rétorquent : « si davantage de gens peuvent l’utiliser, n’est-ce pas précisément l’avantage de l’open source ? »
      L’auteur souligne que le sens de la contribution va bien au-delà d’une simple mention de nom
    • Mais d’autres restent sceptiques en rappelant que « le source-available servira lui aussi à l’entraînement »
    • Certains affirment qu’« on n’a aucune obligation de donner gratuitement son savoir au monde » et qu’il faut refuser le partage sans réciprocité
    • D’autres estiment qu’« il est contraire à l’éthique de distribuer du code non libre » et qu’il faut préserver les principes du logiciel libre
    • Quelqu’un confie même avoir « perdu tout intérêt pour l’open source » et être passé à des projets entièrement privés
  • Je crois que l’open source ne disparaîtra pas et deviendra au contraire encore plus fort
    De vrais développeurs créatifs utiliseront l’IA pour produire des innovations que les entreprises ne savent pas créer
    L’open source reste le lieu de validation de la vraie valeur et un espace où l’on repousse ses limites grâce à l’IA pour apprendre

    • La véritable innovation viendra de l’open source
      Mais il prédit aussi que les gouvernements et les grandes entreprises tenteront de réguler les systèmes d’IA locaux, et qu’une frontière apparaîtra bientôt autour de « l’IA que les citoyens peuvent utiliser »
    • À l’inverse, les projets open source souffrent déjà des soumissions de code généré par IA
      Le temps perdu en revue et en discussions de politique augmente, et surtout dans des domaines complexes comme les compilateurs, l’IA n’aide absolument pas
  • Certains soulignent que « même sans être ajouté comme package, le simple fait de publier du code reste précieux »

    • Moi aussi, quand je tombe sur un petit bout de code, je le copie puis je l’adapte à mes standards. J’y vois le même esprit de partage que dans la démarche scientifique
      Si un LLM écrit le code à ma place, la charge d’apprentissage diminue et je peux me concentrer sur des sujets plus profonds
    • Les licences copyleft semblent préférables. Elles empêchent les entreprises de s’en emparer librement et les obligent plutôt à embaucher directement des personnes
    • Même sans exécuter le code, lire celui des autres a une grande valeur pour apprendre. La résolution de problème en elle-même est un cadeau
    • Mais l’open source reste au fond un investissement en temps et en travail
      Par exemple, quelqu’un explique avoir maintenu rubygems.org pendant 14 ans avant de partir, déçu par une structure devenue trop corporatisée
  • Certains font remarquer qu’« écrire du code avec l’IA est au fond une autre forme de dépendance »
    Faire du copier-coller sans vérification ne diffère pas vraiment de l’ajout d’une bibliothèque externe

    • Cependant, le code généré par un LLM peut être conçu de manière plus ciblée selon le besoin, ce qui réduit les fonctions inutiles et peut le rendre plus efficace
    • Il présente aussi l’avantage d’éviter les attaques de la supply chain et la charge des mises à jour fréquentes
    • En revanche, une bibliothèque se modernise automatiquement avec le temps, alors qu’un fragment de code produit par LLM ne le fait pas
    • Au final, le vrai problème n’est pas l’outil, mais l’habitude de copier-coller sans vérifier. Un développeur irresponsable obtiendra le même résultat quel que soit l’outil utilisé
 
haytsir 2025-11-18

Au début de 2024, en créant un petit projet,
j’avais demandé à Claude 3.5 de me fabriquer un module de gestion d’état utilisable en pur JavaScript,
et je me souviens avoir été surpris qu’il produise un code à la fois concis et capable de gérer jusqu’aux situations de migration.

Je pense que c’est un phénomène assez naturel si l’on considère que, plus une bibliothèque est petite, plus il existe de code publié par des gens ayant eu des idées similaires, et plus il est facile pour l’IA de le formaliser dans une structure standardisée.

Comme copyparty : quelque chose que tout le monde peut imaginer, mais qu’il est difficile pour une seule personne de maintenir sur la durée.
Je trouve un peu regrettable l’idée qu’il pourrait devenir plus difficile, à l’avenir, de voir émerger ces projets propres et soigneusement affinés, nés de personnes qui poussent ce type de projet jusqu’au bout.