- Deno initially seemed like something a number of us were clamouring for: a restart of the server JS ecosystem. ES modules from the start, more sensibly thought out and browser compatible APIs, etc etc
- that restart is incompatible with the business goals of a VC funded startup. They needed NPM compatibility but that destroyed the chances of a restart happening.
I’m just sticking with Node. I know Deno and Bun are faster and have a few good features (though Node has been cribbing from them extensively as time has gone on). I just don’t trust a VC backed runtime to keep velocity in the long term.
I hope nodejs copies these features. They're great.
bun is not bad, but for me consistently slower than pnpm for dependency management, and unfortunately I hit a very strange async runtime bug with it, so ended up just going with node
But once you add that NPM compatibility layer the incentives shift, it just isn’t worth anyone’s while to create new, modern modules when the old ones work well enough.
It all feels similar to the Python 2 vs 3 dilemma. They went the other way and hey, it was a years long quagmire. But the ecosystem came out of it in a much better place in the end.
Or like Wayland and X.Org Server.
Quite different than an alternative that comes out of nowhere, expecting users to migrate.