I know on HN we don’t always love CEOs, and that’s okay… the ethos of startups has changed over the past 10 years, and tech has shifted away from tinkerers and more toward Wall Street. But Ryan Dahl isn’t doing that; he’s a tinkerer and a builder.
I dunno, I just don’t like this vibe of “what have you done for me recently” in this post, especially given he skipped over the company and is calling out Ryan directly for some reason. Ryan is responsible for many of our careers; Node is the first language I really felt at home with.
Comparing him to Nero is gross.
Deno might not succeed as a project, especially with strong competition from Bun as an alternative to Node, but I would say that Deno has been more a force for bettering the ecosystem than not.
Many of those at Deno, including Ryan as well as some of those who have apparently left or been let go have been major contributors to the web development ecosystem. Thank you all for your work — we’re better off for your contributions.
As a founder who built all my prototypes and side projects on Deno for two years, I personally think Deno’s execution was just horrible, and avoidably so. Head-scratchingly, bafflingly bad decision-making.
I was the first engineering hire at Meteor (2012-2016), and we made the mistake of thinking we could reinvent the whole app development ecosystem, and make money at it, so I have the benefit of that experience, but it is not really rocket science or some insight that I wouldn’t expect Ryan Dahl and team to have, in the 2020s.
They were stretched thin with too many projects, which they were always neglecting or rewriting, without a solid business case. They coupled together runtime, framework, linting, docs, hosting, and packaging, with almost all of these components being inferior to the usual tools. The package system became an absolute nightmare.
If the goal was to eventually replace Node and NPM with something where TypeScript was first-class, there was better security, etc, they could have done a classic “embrace and extend.”
Since then, I know that it's there and that it's more secure than Node in some applications, and I can see using it being a good option. But it sounds like it might be too little too late? Going by this article, at least.
Seems so. All the breaks from the first system in the name of “we’re doing it right this time” probably killed the momentum.
https://en.wikipedia.org/wiki/Second-system_effect
Even the best and brightest of us are still human.
Eventually the reference implementation gets good enough, and that is it.
In JavaScript case, the first error was to ignore compatibility with native addons and existing nodejs modules.
The second was not providing a business value why porting, with the pain of compatibility, one because "it feels better" doesn't release budgets in most companies.
Hundreds of hours? I'm sorry but if you truly needed that much time to find your way around an incredibly straightforward runtime that's on you. Skills for Deno, Node.js, Bun, Cloudflare Workers, browser-based JS and all the rest are like 99% transferable. If Deno doesn't work for you then use something else. It would probably be simpler to switch than writing all these aggressive blog posts.
Their initial baffling stance about package.json was the first bad sign. I almost can't imagine the hubris of expecting devs to abandon such a large eco-system of packages by not striving for 100% support out of the gate. Of course they had to relent, but honestly the damage was done. They chose ideology over practicality and that doesn't bode well with devs.
I think they saw Rust and thought that devs were willing to abandon C++ for a language that was more modern and secure. By touting these same benefits perhaps they were hoping for similar sentiment from the JavaScript community.
Deno has some really good ideas (e.g. the library KV interface). I agree with a lot (but not all) of Dahl's vision. But the whole thing is just a bit too quirky for me to invest anything critical into an ecosystem that is one funding round away from disappearing completely.
> Despite the initial hype, Rome tools, Deno & Bun will be quasi abandoned as the ecosystem outpaces their release cycle and the benefits don’t merit the headache of migration.
hmm, blog author doesn't know about Anthropic's Bun acquisition, and consequently shouldn't comment on "the entire AI industry"
My choice ranking is Deno Deploy > Fly.io > AWS for new projects, depending on complexity and needs. They also have a new Deno sandbox feature which is great for running untrusted code, AI agents, etc.
The real question is can they adapt to customer feedback fast enough, focus priorities, adequately market & grow, make it profitable, etc. Bumpy road but definitely not doomed.
I assume the author is aware that Ryan Dahl created that too?
Not that it would make him immune to criticism, but the author comes off extremely petty.
Pray you never have a “good enough” competitor.
I felt it should have aimed to be a 100% drop in replacement for nodejs then innovated on top of that.
I agree with all the comments saying this is unnecessarily critical. We're getting an amazing tool totally for free. Quit complaining.
I would not be surprised if they get bought by one of the big AI players anyway, given the weird purchases of Bun and Astral.
So here is what is going to happen:
Deno is going to 100% get acquired.
Ryan Dahl is obviously rare talent and any company that gets Ryan would be incredibly lucky.
He has already done a Google Brain Residency so it makes sense for him to go to OpenAI or another AI lab for developing AI agents.
I never heard of Deno until today. So perhaps this was a marketing failure.
Who cares? Why does the world need so many fringe tools/runtimes? So much fragmentation. Why does every project have to be a long-term success? Put some stuff out if its misery. Don't waste the time of the already few open-source contributors who pour hours into something for no good reason.
But I need to have everything in a mono repo for agents to properly work on in.
Cloud functions and weak desperation between dev and prod is a mess, even more so with agents in the loop.
At that point I was left wondering -- if Bun and Deno have essentially the same strategy/approach, why would I pick the less mature option?
And so I ported everything to Bun