On October 9, Ryan Dahl announced that the entire Deno team is joining Cloudflare. Deno started in 2018 as Dahl’s answer to the problems he saw in Node.js, the runtime he had built a decade earlier, and for eight years it argued that a modern JavaScript and TypeScript runtime should ship with a permissions model, a built-in toolchain, and its own package registry instead of borrowing one. The announcement turns all of that into a prologue. “The progression from Deno to Deno Deploy to celld explains why this move makes sense to us,” Dahl wrote, tracing a line that ends not in a standalone runtime but in the Cloudflare Workers programming model.
The sentence that matters most to anyone actually running Deno is not in Cloudflare’s version of the post. Dahl’s post says it plainly: “We will support the Deno runtime for another year with monthly releases containing bug fixes and security updates. After that year we will end our development of the Deno runtime.” Deno stays open source, and the team says it welcomes anyone who wants to keep it going, which is a polite way of saying the project’s future now belongs to volunteers. Cloudflare’s announcement frames the same deal from the other side, as a way to “radically simplify self-hosting Workers and Durable Objects.” The runtime was never the prize. Making Cloudflare’s edge platform runnable on someone else’s hardware is.
The Hacker News thread, 1,110 points and 571 comments deep, found the buried clause quickly and did not take it well. Simon Willison flagged the asymmetry first: “I don’t like how that’s in the Deno post but gets no mention in the Cloudflare post. Seems like a pretty important detail!” Others read it as a conclusion Deno had already reached on its own. “We already have a winner (Bun) and it just means that Deno has admitted defeat,” one commenter wrote, and the replies spent the next hundred messages arguing about which runtime lost, which one is next, and whether anyone should have left Node.js at all. The sharpest line came from a developer who had watched companies migrate onto Deno and now watched them sit with the bill: “So many companies went all-in on Deno in recent years. They should hire a few devs to develop it then.”
🎩 Cask’s Take
The word nobody at either company used is acquihire, and it fits better than acquisition ever could. Cloudflare is not buying Deno’s users or its hosting business, both of which it already competes with through Workers and its own deploy platform. It is buying the people, and specifically Dahl’s team and their work on celld, a project built on top of Cloudflare’s own programming model. When the thing you are purchasing already runs on the buyer’s rails, the product is a formality. You keep the engineers and let the runtime wind down on a schedule, and a one-year support window is exactly what that schedule looks like.
What makes this worth writing about is not that a runtime died. Runtimes die. It is how cleanly the sequence was arranged. Deno spent eight years making a credible case that developers should not have to assemble their own toolchain, their own module system, their own security model, and it won converts. Some teams did the expensive thing and moved off Node. Then the runtime reached the scale where it mattered to a platform company, and the platform company absorbed it and folded the ideas into a model that runs best in one place. The open-source license survives, so the project looks protected, but the hands are gone. A license is not a maintenance crew.
There is a version of this where the community forks Deno and keeps it alive, and it is the answer every thread reaches for. It is also the answer that almost never happens at this level of complexity. Node survives because it has a foundation, corporate backers with a reason to fund it, and the inertia of a decade in production. A Deno fork would inherit none of that. “It’s open source. I’m hoping it gets picked up by the community,” one commenter wrote, and even they sounded unconvinced.
The lesson keeps getting relearned and keeps getting ignored, because the pull is real. The new runtime is faster, the developer experience is better, the old one is boring. Then a year passes, or three, and the thing that made the new runtime worth adopting turns out to be the enthusiasm of a team that has just been hired somewhere else. The reasonable posture, the one the thread kept arriving at without quite saying so, is to treat a runtime the way you treat any dependency you cannot replace: adopt it slowly, and keep a way out. Deno’s users have twelve months to find one.