Un article critique sur Bun.
Pas mal de bashing un peu gratuit et de demi vérité:
- performances: tout ce qui est lancé en local avec Bun est instant vs plusieurs secondes avec une stack Typescript standard
- pas de version manager: Bun vient d'être release et il y a litéralement 3 versions donc pas vraiment besoin, be patient ^^
- moins de backward compat que Node: en même temps on attends pas la même chose de Bun, et au moins les features sortent :)
Bref en tout cas je ne pense pas que Bun puisse un jour remplacer Node côté serveur car il y fallut plusieurs années pour que l'industrie fasse confiance à Node et que Node se montre suffisamment mature.
Par contre en local il n'y a rien à dire, bosser dans l'écosystème actuel c'est juste HORRIBLE entre les bundler, les builders, les compilers et les fichiers de config de la mort j'étais à la limite de craquer et heureusement Bun vient régler tout ça.
Pas de tsconfig.json, pas de webpack.config.js, pas de ts-node, pas de jest.
It just works ©
En plus bonus: c'est instantané de lancer un script ou de run +100 tests unitaires
Bun est sorti en version 1.0 et ça s'annonce très prometteur.
Finit les prises de tête de l'écosystème Node.js, ça règle tous les problèmes de toolchain de run Typescript, de build en tout genre, de test runner, de module mjs/esm, de require vs import, de package manager en fournissant un seul outil qui just works
Même pas besoin de "risquer" une utilisation en prod, juste le fait de l'utiliser comme toolchain backend fait gagner en productivité.
C'est toujours bien de voir émerger d'autres runtime car cela amène de nouvelles idées et concepts.
Par contre il ne faut pas se voiler la face, il y a très peu de chances que Deno ou Bun puissent remplacer Node.js.
L'industrie a mis des années avant de faire confiance à Node.js et aujourd'hui je vois difficilement les entreprises se tourner vers un nouveau runtime simplement pour des histoires de design ou quelques % de perfs en plus sachant que le coût d'adoption à l'échelle industriel est très élevé.
Deno annoncent quelques changements avec notamment le support des packages JS en provenance de NPM!
Ils annoncent aussi qu'ils souhaitent être le moteur JS le plus rapide.
Je ne serais pas surpris que cela soit poussé par la sortie de Bun.js qui a de très bonnes performances, supporte le typescript et les packages NPM
Bun, le runtime Javascript qui se présente comme une alternative à Node.js, a levé 7 millions de dollars.
Ils recrutent maintenant pour sortir une version stable de leur produit.
A suivre de très près !
On commence à voir des tests des performances de Bun par rapport à Node.js.
Pour l'instant il manque encore trop de compatibilité à Bun avec les lib Node.js pour pouvoir aller très loin (pas de child_process
) par exemple.
Dans cet article, l'auteur note un gain sensible de performances avec Bun.
Un autre runtime Javascript côté serveur concurrent à Node.js.
C'est assez intéressant car Bun est développé from scratch (en Zig), et il n'est pas basé sur le moteur Javascript v8 de Chrome mais sur JavascriptCore, celui de Safari.
Dans les promesses de Bun:
- Plus rapide et moins de mémoire consommé que Node.js
- Transpiler et bundler intégré
- Compatible avec l'écosystème (node_modules et NPM)
Le projet est encore en cours de développement (voir ce qu'il manque) et donc pas encore recommandé pour de la production.