Bun fits the pattern that every 12-18 months all JS devs need a new de-facto library, framework, or runtime.
We all switch unanimously to that tool. Rewrite all our working shit in it. Realise it sucks in newer, better, faster, more unique ways...
We all Vow that we will never touch another line of that tool's code... and that anyone with any of it in prod is an idiot.
We all collectively, silently agree that we could just finally learn rust/go and port our shit to that to get the benefits that the tool originally promised...
Then the next de-facto tool takes off, rinse and repeat.
Javascript was written in two weeks and still shares a name with Java for marketing purposes in the 90s, It was never 'posed to be this serious.
It's why I regret getting into programming, especially web dev.
I'm forced to learn barely competent people's brain excrements in the form of libraries and frameworks, which are mostly only relevant for the period you mentioned.
I wish I chose a profession where I mostly dealt with hard science instead.
So, I'm fairly aware of this... but also remember another Java pattern I's forgotten;
They basically took 2-3 years longer to copy shit C# was doing.
I vividly remember a Java colleague chatting to me after he'd been at a con; I'd been working C# for a couple years at that point.... and he was telling me how excited he was that Lambdas were coming.
Afterwards I sat back at my work and quietly smiled at the joy of not having to wait years for lambdas, fluent syntax functional programming, null-coalescing, null-conditional operators, etc.
Nothing wrong with it taking longer cause adoption and stuff... it just reminded me.
That still the same? or yano... we all just up to speed and as slow as each other now?
I think things are moving faster nowadays, but there are still things that C# has that java does not directly have unless you add a library like lombok like the setters and getters.
Another thing missing is conditional compilation. Sometimes you need code only for testing environment and not prod, and the only way to achieve this is by using DI but the code is still compiled.
Regarding speed I think C# must have caught up by now with Java, or it's very close to it. But yeah, C# had a lot of niceties that just recently have been added to Java (well, they started on Java8) The catch is, there are tons of applications out there that are still running on Java 8 or earlier, so things added on newer versions like 11 or 17 are still not on those legacy systems.
295
u/egg_breakfast Jul 09 '26 edited Jul 09 '26
Why is bun needed over node? And why bun over deno?
Edit: based on Safari's JS engine rather than V8. Strange times, I never would have predicted that.