I didn’t like the tone of this. Building a company is hard. Building an VC-backed open source product is really, really hard.<p>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.<p>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.<p>Comparing him to Nero is gross.
Agreed about the article tone. I'm a Deno lifer over here, and will definitely not try to cover up the mistakes they've made along the way or the trouble their deploy product has had over the past few months. Ryan Dahl is obviously polarizing as a personality for many people, always has been since he decided to "hate almost all software" or even before that when he created Node.js.<p>I don't use Fresh. Serverless is kind of a weird offering that forces developers to do a lot of work to adjust their programs to running all over the place. I even wish Deno had never supported NPM because that ruined their differentiator.<p>I'm going to keep using Deno and I hope they use this opportunity to refocus on their core product offering so that I can move back to using it from this VPS that is hosting all of my Deno servers right now.
I'm planning on using Deno long term too and have also made some contributions to their standard library. But I completely disagree with you on NPM support. I think that gap early on contributed to bun's success. I almost quit using it because of how difficult it was to use react with Deno. Now it's pretty easy to use react and other npm packages with Deno. Before that, a lot of the most popular packages were just forks of npm packages adapted for Deno, but not as well maintained since less people were using them. Then deduping dependencies was just harder when they were all urls. If your package had a dependency using a different version url, you'd need an import map just to remap them all to using the same version. I'm pretty happy with the current deno.json with jsr and npm compatibility.
As someone who has mostly just tinkered with this stuff (while using Node extensively at work) I see two truths:<p>- 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<p>- 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.<p>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.
Personally I've moved to bun. Its basically identical to node out of the box - almost all nodejs projects just work. But its usually faster. And it can run typescript files directly. And it has a JS bundler & minifier built in. And it can --watch for changes.<p>I hope nodejs copies these features. They're great.
Would something else that wasn't a VC-funded startup really work better? The technical problem seems fundamental.
Yes, the technical problem is fundamental. But if Deno managed to be a truly great runtime that solved a lot of people’s gripes with Node <i>and</i> made ES modules etc the price of admission for using it there would have been momentum to create a new module ecosystem.<p>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.<p>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.
As an early Deno purist I must invoke the 10 Mistakes talk that Ryan gave when he launched Deno: <a href="https://m.youtube.com/watch?v=M3BM9TB-8yA&t=11s&pp=ygUScnlhbiBkYWhsIG1pc3Rha2Vz" rel="nofollow">https://m.youtube.com/watch?v=M3BM9TB-8yA&t=11s&pp=ygUScnlhb...</a>
Agreed. It is very easy to criticise if you've never been in the hot seat, and if you've never had to make tough decisions like this. As far as I can tell this person has never run a business with actual employees.<p>If Dahl had posted the typical layoff announcement people would be criticising that too.
Yeah, the tone felt off to me too. It felt a bit too much like a celebration of "look how right I was" concerning their earlier posts.
True! Love to Ryan from my heart. He came around the corner with Node just in the right moment when ActionScript3 started to die and I seamlessly could continue my career and building things. Still to today.. Things with Deno are very ambitious and hard to establish in this space. The blog post is embarrassing.
Agreed. I was skeptical of Deno and I think their package management story was a mistake. But the people were still trying to make JavaScript better and doing so out of genuine love for the language. I especially feel for the employees who put in several years of their life, with the resulting opportunity cost.
Is there a good example of an Open Source project that was born out of VC money? Not a failed attempt of hockey-stick growth that open-sources its code upon shutting down commercial operation, but a genuinely healthy FOSS project that started as a VC-funded company, and still is going strong?<p>In my opinion, FOSS and VC have opposite goals and attitudes: openness, organic growth, staying free vs moat, meteoric growth fueled by marketing, turning a huge profit. I don't see how they could be compatible in the long term, unless the FOSS project is a gateway drug into a proprietary ecosystem.
Yeah, on top of that bringing in social media politics into it is weird, makes it hard to take this as pure/useful criticism
> calling out Ryan directly for some reason<p>Accountability starts and stops at the top. Many CEOs (CxOs) get called out. Personally, I want to write something similar about Bluesky leadership, who have fumbled hard multiple times since peaking, and have now "raised funding" from Bain Capital (private equity).
These things are easy to say but just because someone has the title CEO doesn't mean they're automatically void of human feelings. I'm sure you understand there's a big gap between a Ryan Dahl and a Satya Nadella, despite them sharing the same job title.
Well the people who get laid off also have feelings, not sure why we should care more about the ceo's feelings so much that we shouldn't criticize them
I'm not saying that we should care more for the CEO, but that we should have empathy for someone who is, ultimately, an engineer who built something and gave it away for free, watched everyone else around him get rich off the back of his hard work, and then tried to do something worthwhile again <i>and still chose to give it away for free</i>. There's a lot of immoral CEOs out there, I'm yet to see evidence that Dahl is one of them.
> There's a lot of immoral CEOs out there, I'm yet to see evidence that Dahl is one of them.<p>I don't see any such claim in the post. The criticism is about Ryan the CEO, not Ryan the person.<p>Besides the title, from the end of the post:<p>> I’m not trying to hate on Dahl but c’mon bro you’re the CEO. What’s next for Deno? Give ~me~ ~users~ anyone a reason to care.<p>Perhaps you know Ryan and read too much into the criticism?
> void of human feelings<p>What if we reframe this about how the CEO treats their users and employees? Why does Ryan deserve to be free from criticism?
Do you have any special insight here or are you speculating? I'm not saying that he should be free from criticism, but that we should try and have some empathy for people who try things even if they fail, particularly when they've offered their services to the community for free for the last 5+ years (much longer when considering node.js)
> Do you have any special insight here or are you speculating?<p>I'm trying to understand why you carve an exception for this one individual.<p>When I worked in restaurants, the owner and I had a very interesting conversation after hours, and with beers, about his thoughts and feelings being responsible for the well being and livelihood of everyone that worked there. It was a positive moment, I thought I had a great boss, I work my ass off for him.<p>A year later I found he was trimming hours off of my paycheck. I quit on the spot. Months later I heard he did the same to the waitstaff tips and it wasn't much longer before it all fell apart.<p>People can appear very different publicly than privately, and they can change over time.
its so strange to see so many people who will never be handed 5 million dollars to write a vm jumping in front of criticism for one guy that did. sorry but when you become a public figure in this way you should <i>expect</i> to be subjected to a different sort of public scrutiny than, say, a rank and file employee who they pay.<p>i will begin to care about a CEOs feelings when they put the wellbeing of their employees before their own. not saying that the Deno CEO has done anything on the order of the raw aggression we see from other CEOs in our industry but, as they say, if you cant take the heat stay out of the kitchen.
Some businesses don't need to be VC backed though.<p>That is the problem.
Agreed. But building something new takes capital, and it’s really hard to find it for an open source tool.<p>FWIW, it worked for Bun (at least for the VCs and employees), so there is a model there that works.
I'm just annoyed that decimation would be a 10% layoff; standard if even weak-sauce these days. Too many people use "kill one in ten" to mean "kill them all, let God sort it out."
Be careful to check whether you're in a glass house before throwing stones - "layoff" used to mean a temporary release from employment for seasonal labour before it meant a permanent one (<a href="https://www.etymonline.com/word/layoff" rel="nofollow">https://www.etymonline.com/word/layoff</a>). "Standard" as an adjective also used to mean "being held to a standard of excellence" rather than "normal" or "average". It's ok for words to change meaning over time.
Semantic drift has always happened and will always happen in languages.<p>Decimation has been commonly used as a synonym for absolute destruction for a long time, being annoyed by it is wasted energy, better to let it go and accept the new meaning.
at a practical level that word hasn't meant "one in ten" for like, decades. probably just need to get used to it.
Etymology is not usage though. I get where you're coming from, but fighting vernacular is all but useless outside of academia.
Fuck this blog post.<p>I'll say it.<p>This author is being an asshole and punching good people when they're down.<p>We live in a land of goddamned hyperscalers and megacorps trying to minimize how much they pay us (or get rid of us). Trillion dollar Zeuses that skirt by antitrust regulations for decades on end, crushing any would-be competition. Pilfering from open source while encrusting it in proprietary systems that cost an arm and a leg. Destroying the open web, turning every channel into an advertising shakedown, monitoring us, spying on us, cozying up to the spy apparatus in every country they do business in...<p>How dare anyone throw rocks at an open source effort?<p>I don't even like JavaScript, but I applaud what these folks are trying to do.<p>At least they're trying.<p>Can't even get a decent round of applause.
Yeah, I was being nice, but this writer upset me. He sees Ryan Dahl as Nero, but he’s a lot closer to Robin Hood.
> We live in a land of goddamned hyperscalers and megacorps trying to minimize how much they pay us (or get rid of us). Trillion dollar Zeuses that skirt by antitrust regulations for decades on end, crushing any would-be competition. Pilfering from open source while encrusting it in proprietary systems that cost an arm and a leg. Destroying the open web, turning every channel into an advertising shakedown, monitoring us, spying on us, cozying up to the spy apparatus in every country they do business in...<p>> How dare anyone throw rocks at an open source effort?<p>According to the article, Deno raised over $25 million from venture capital. Unless you're disputing that, it seems a bit disingenuous to criticize corporations but call this an "open source effort"
I'm sick of open source "purism" too.<p>It's almost all caused by the OSI.<p>The OSI is owned and operated by the hyperscalers, who benefit from this in-fighting and license purity bullshit.<p>Is the only open source free labor? Some people think so.<p>Are open core and fair source licenses invalid? Yeah - let's make everything BSD/MIT so managed versions can go live inside AWS and GCP and make those companies billions, while the original authors see limited or no upside.<p>The fact is - open source needs salients to attack the hyperscalers. It needs to pay its engineers. It needs to expand and grow. One of the ways to do that is building a business around it. Another way is building an open core plus services that drive revenue to sustain and grow the business.<p>Having VC money doesn't invalidate what's being done. It helps the experiment evolve faster.<p>Nobody's here complaining about Google and Microsoft and Amazon, yet that's where 99.9% of our ire should be directed. And yet we're pouring venom on this small and valiant effort.<p>We dump on Redis and Elastic while they're being torn to shreds and eaten by trillion dollar giants.<p>This entire conversation has become perverted to the point we're no longer talking about what matters: freedom to operate independently of the giants that control the world.<p>Instead we're complaining about people taking a risk, trying to actually do something impactful that matters.
sorry but your post makes no sense.<p>Open source is a kind of licenses.
Hyperscalers are a kind of service providers.<p>You cannot oppose these 2, these are completely unrelated concepts.
That's cute to think that they're unrelated, but open source is fundamentally about freedom.<p>The walls around us are constantly being built up and caving in. Hyperscalers are trying to own more and more of the commons.<p>The web is becoming atrophied, search is a sales funnel, communication is taxed, we're about to be asked to use ID to use the Internet, ... everything is being stolen from us.<p>The two could not possibly be more related.
OSI is a plague and many people here swear by it blindly. They hate the big hyperscalers but play right into their arms.
[dead]
[dead]
Given the footer of the blog I’m not surprised the author really enjoys the smell of his own farts.
I’m not familiar with the author but something about this post just seems mean-spirited and petty.<p>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.<p>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.
Isn't it reasonable bitterness? He invested a lot of his own life on a promise that didn't pan out, and there's probably a lot of people in that community. Leadership comes with responsibility and consequences.<p>Content marketed at wannabe startup founders tends to be encouraging and panglossian. It's good to see here what you're signing up for if you succeed with some degree of traction.
> He invested a lot of his own life on a promise that didn't pan out<p>Whose fault is that?
> He invested a lot of his own life on a promise that didn't pan out<p>So did the people who built Deno
Bun, competition?<p>Zig is yet to be 1.0, and who knows what anthropic will make out of it.<p>They can even pivot yet again back into node, as most acquisitions go.
In the mindshare, certainly.<p>Bun to Deno is what Zig i to Rust: a much simpler, much easier way to overcome its common predecessor's shortcomings. Not nearly as thoroughly and revolutionarily, but still.
Has any competitor copied anything from Deno?
I don't think I'd go as far as "copying" but Deno was the first to aggressively push for web standards in server-side runtimes and certainly helped accelerate getting them adopted in that environment.<p>I work at Cloudflare on Workers (but infrequently work on our runtime) and I've always been pretty impressed with Deno. Their recent-ish support for built-in OpenTelemetry is something we've been wanting to do for a while and have been working on, but Deno was able to build a good implementation of that in that time.
Deno basically popularized the idea of a standalone JS runtime that primarily relies on standard Web APIs over "in-house" APIs like Node, although we can say that those standard APIs didn't exist yet when Node was created and for most of its rising period.
I think it’s fair to say that work on the experimental-strip-types option in Node was inspired/energized by a desire to try to catch up with the DX improvements found in Deno for Typescript-first development that is now the norm.
I always thought Deno was more or less trying to copy the Cloudflare (edge) runtime, but decided incompatibility was a good idea. The ecosystem bifurcation was the mistake, which they came around on, but it was already too late by then.
I won't speak for Ryan, but these last 7/8 months have been extra extra hard for me with Mikeal dying, and at least, Ryan was as close to Mikeal as I was, so I'd guess it's been a hard time for him too. Being ambitious and taking on a lot is always... a lot, and he's been at it with Oracle as well. It doesn't get any easier the older you get, to be honest. Cut him some slack eh?
Oracle looks to me a distraction, that isn't what is going to bring users into Deno.<p>For the rest, I can't comment on, all the best.
Thanks. Sure, it may have indeed become a distraction, maybe it always was... I don't know. Never the less, he is finishing what he started, and that is admirable. <a href="https://dev.ua/en/news/tvorets-nodejs-zbyraie-1758280906" rel="nofollow">https://dev.ua/en/news/tvorets-nodejs-zbyraie-1758280906</a> - <a href="https://www.devclass.com/development/2022/09/05/nodejs-creator-ryan-dahl-urges-oracle-to-release-javascript-trademark/1630492" rel="nofollow">https://www.devclass.com/development/2022/09/05/nodejs-creat...</a>
RIP Mikeal. I'm sorry for your loss.
I find the irreverent tone refreshing, personally.<p>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.<p>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.<p>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.<p>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.”
I'm not fully convinced that there's a tenable model for open source devtool companies. Usually there's some handwavy plan to do hosting or code quality that never comes to fruition. Hosting is a hard business and the 800 pound gorilla in the room of AWS is even harder to surmount. Otherwise, I'm not sure what business model you can look towards. Support maybe?
Open core can work, but you really have to find very strong product market fit on the proprietary side--ideally with features that discriminate between users who are relatively happy to pay and users who are not. (There's a reason "SSO tax" is so common.)<p>And you really have to believe in open source and have the discipline to keep investing in it, otherwise the temptation is ever present to throw more and more effort and resources into the proprietary parts.
Yeah, I mean Deno’s success is predicated on enterprises moving production apps from NodeJS to Deno. Node is extremely established and entrenched, and migrating the goddamn runtime of a large production server is not usually an easy project. If I have a 5-10 year old Node project, it <i>might</i> work well on Deno, but almost no one has the time to champion a migration when it just doesn’t have that many benefits.<p>Yes, it comes with batteries included, but a big node project already has setups handling things like testing, linting, formatting, and dependencies. Moving to Deno for any of those <i>might</i> actually be easy, but migrations in the JS ecosystem never end up being easy, so people who could sway the company to change tools don’t have the appetite to tell leadership about migration projects with minimal upside and unknown duration. And under a startup with an unknown future.<p>NodeJS succeeded at undermining existing server toolchains, because web devs were easily sold on writing JS for their servers, so tons of successful startups built with Node, and when Node got pretty well established, it was easier to adopt for greenfield projects in the enterprise.<p>Deno is Node, but better. So it’s not giving a whole market of devs access to a tool that is way easier to write for. It’s marginally easier to manage and you could maybe drop some other toolchain dependencies. But again, those toolchain things are automated/hidden away from developers directly… like they don’t care we use eslint, they just care CI catches problems before they hit prod and that the linter throws an error early in the process. It’s already easy for them to run locally. So it’s not like Deno lint changes anything about the dev user experience, it just changes what DevOps/platform teams have to manage.
People want open source software, but they do not want the compromises that come with funding it. When people try and fail then you get shitty blog posts like this one. It's sheer entitlement. I think the days of building open source tooling and expecting to be able to commercialise it are now completely gone.
"Become integral enough to the toolchain at OpenAI or Anthropic that they buy you" seems like the new one. Normally I dislike startups built with the intention to be acquihired instead of being a sustainable business, but with open source devtools maybe that's not the worst thing. I'm pretty confident that neither bun nor uv will stop existing anytime soon, and the makers got paydays out of it.
> Support maybe?<p>LLMs seem likely to kill or at least vastly weaken the support model.
I could get behind some of this hate directed to Vercel’s CEO or even Cursor’s, but Deno is sort of like a breath of fresh air around the myriad of parasitic tech out there. Still, why so much hate? Who hurt you? What’s going on
Before yt-dlp started recommending Deno as its JavaScript runtime, I had no idea it even existed.<p>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.
Same, I remember googling Deno and going "Oh this new thing looks neat" - and then I haven't heard/seen/read a thing about it until this post. But I keep hearing about Bun and of course nodejs.<p>Feel bad for them, they obviously just didn't capture a real userbase. I expect if yt-dlp hadn't started to require it they'd have just silently flamed out.
yt-dlp was definitely the reason for the increased adoption mentioned in the post.<p>I wonder if the layoffs have a deeper connection to yt-dlp.
The author should be the change they want to see in the world. Nothing is stopping them from making an alternative.<p><pre><code> > "I could continue but it would just be cruel to dissect further."
</code></pre>
in particular really rubbed me the wrong way for 2 reasons:<p>1) You acknowledge that you think you've already at least bordered on "cruel", why would you want this? It's not clever.<p>2) You have the arrogance to think your opinion means this much to the creator when they've achieved far more than you.
The article is mostly a rant about Deno not making a public statement about layoffs. This links to the individual statements about leaving:
<a href="https://www.reddit.com/r/Deno/comments/1rwjaeb/whats_going_on_at_deno/" rel="nofollow">https://www.reddit.com/r/Deno/comments/1rwjaeb/whats_going_o...</a>
Is Deno a classic second system syndrome project?<p>Seems so. All the breaks from the first system in the name of “we’re doing it right this time” probably killed the momentum.<p><a href="https://en.wikipedia.org/wiki/Second-system_effect" rel="nofollow">https://en.wikipedia.org/wiki/Second-system_effect</a><p>Even the best and brightest of us are still human.
Trying to pull people away from reference tooling requires lots of investment and historical has always failed.<p>Eventually the reference implementation gets good enough, and that is it.<p>In JavaScript case, the first error was to ignore compatibility with native addons and existing nodejs modules.<p>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.
Come on man. This stuff is hard. I was the guy on the other side writing these BS hit pieces. Then I raised funding and took a shot. It's so hard. It's like pushing a boulder up a mountain except you're expected to build a rocket ship on the way and blast off. It's not the analogy of falling off a cliff and building the rocket on the way down. Sure death is on the horizon and you can manage it, but the pressures are immense and so much of it you can't game. Initial hype is intoxicating and you might even have something of value but real business takes time. It's a boulder up a hill and you need to bring a lot of good people along the way to help you. OpenAI was 7 years of nothing working then boom. I hit 7 years and fatigue set in, but also life, I wasn't that same guy who started at 30. Give these people a break. Ryan has done great things with Node and Deno. Give him a break. Don't stomp on the guy. Give him some kudos. Help him FFS. Don't trash him. Shame honestly. Ryan keep up the great work. It's hard. Deno team, it's the effort and intention that counts. Good work. Regroup, try again.
Why this person is so mean to someone who gifted Deno and Node to the JS ecosystem? It's not fair. They are trying to build a company on top of open source.
Because the model of private capital using open source to make profits is a failure state that we need to get away from. There's no reason why the government can't sponsor open source projects, something tells me the vast majority of open source devs wouldn't mind a system where grants can be reward to projects that the public finds valuable.<p>That would be much more sustainable than VC rat fucking the commons to make a buck while suckering in devs that were once good community stewards into dry husks that are only formed to generate profit.
Ok but those government grants don't really exist today and what you're arguing for is zero sustainability for open source projects. This is certain to lead to the death of open source - there's not even the reputational pay-off any more if the only real consumer is AI.
ah yes the common rebuttal of "but this doesn't exists, so I want the boot to keep stomping on my face. Please don't do anything different! The boot is kinda nice actually now that I sustained enough nerve damage."<p>Grants are a very effective model of support, it seems to work for entire industries + professions around the world. Even better when there is a body of professionals working democratically to decide which people should be awarded the grants.<p>Just because you have a failure of imagination doesn't mean others do.
Bad faith reply. The government grants do not exist, it's not a failure of imagination, I too would like to live in that world, but we don't and aren't likely to any time soon. And even if we did, do you think that Deno would have been likely to receive a grant? I do not.
Ideally, the corporations that get immeasurable benefits from open source are a better source for the money. There are multiple ways this can play out, direct payments, putting employees on the project, or contributing their own projects to benefit others.
I have always wanted Deno to succeed. But it just seems to be too full of contradictions.<p>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.<p>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.<p>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.
> I wanted to know if the hundreds of hours I’d spent mastering Deno was a sunk cost<p><i>Hundreds</i> 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.
The one that wasted me hundreds of hours was TypeScript on Node with ESM. The most common, familiar, boring stuff which everyone is intimately familiar with, right?<p>Got shanghaied into TS-land right around Node 16 when they and TypeScript imposed mutually incompatible handling of ESM modules (that extensions mess).<p>Not only the type checker fail to understand of the kind of JS I had been shipping (and testing, and documenting, and communicating) up to that point; both the immediate toolchain, and <i>people's whole pattern language around the toolset</i>, were entirely broken as soon as you were doing anything different from the kind of React.js that later became Vercel.<p>Not only I was able to do 10% of what I was able to do previously conditional on jury-rigging the billion dollar stack to work, I also had a little cadre of happy campers on my ass blatantly gaslighting me that it is all, in fact, working; and suggesting the most inane "solutions" once I'd bent over backwards to demonstrate how there is, indeed, a problem of absurd dimensions, straight outta nowhere.<p>Later I met more such people. Same people who would insist JS runtimes are not trivially interchangeable, having committed to not examine what they're doing beyond a meager level of abstraction.<p>I see it as a rather perverse form of "working to spec" (have had to pick up surreal amounts of slack after such characters), but with incentives being what they are you get a cutthroat environment (such as the author of this blog post imagines to be living in), and from a cutthroat environment you get the LLMs eating everyone's breakfasts -- because no matter how yucky a word "synergy" is, synergizin' is that "fake open source" is designed to preclude, throughout the JS ecosystem.<p>"Fake open source" is how I call MIT/BSD licensed devtools and frameworks from hyperscalers that don't need to do an opencore rugpull because they're a piece of a long-term ecosystem strategy. They benefit from immense decade-long marketing and astroturfing efforts, lending them "default status" in the mindshare; and ultimately serve to carry the vendor's preferred version of reality into unrelated downstream projects. Which is why they often spectacularly fail to respond to the community's needs: they are built to preclude, past a certain point, the empowerment of implementors as a community.<p>Mastering some of that <i>shit</i>, now there was a sunk cost for me, but in modern JS land all these churning agglomerations play the role of "pay to play" gatekeepers. Considering what that's made the playing field be like, I'm happy pivoting to more niche technology just to keep away from said churning agglomerations.
The idea of Deno is brilliant... but they should have either focused on Node compat from the first day (like Bun did) or just keep doing their own thing with built-in APIs to solve the most common needs (db drivers, router, s3, etc).<p>They had the right ideas but it's like investors panicked midway and demanded a change in direction.
Truth of the matter is Ryan Dahl is a suboptimal CEO. Being able to build good open source software does not have a strong correlation with being able to build a successful business.
What is Deno's business model? How do you build business around a JS runtime? What to they pitch to the early investors even?
> What is Deno's business model? How do you build business around a JS runtime?<p>Everything else. Seems everyone and their mother are building "platforms", so they can properly lock you in, look at Vercel for example, to get some inspiration where the rest is probably at least aiming.<p>Not sure why people keep falling for it though, guess it's easy enough to get started that people don't really want to understand deeper, if you can pay someone $XXX/month to not have to think about it, many people tend to go that route, especially if VC-infested.
The problem is that outside big corporations, devs nowadays aren't willing to pay for development tooling, although we surely like to be paid.<p>Thus platforms and SaaS products, seem to be the only way to make sustainable open source products.
Wait until a big company buy them. That seems not to happen.
Hosting (Deno Deploy), <a href="https://deno.com/deploy/pricing" rel="nofollow">https://deno.com/deploy/pricing</a>
> <i>Bun has far more bugs and compatibility issues than anyone will admit. Node still has too much friction around TypeScript and ECMAScript modules.</i><p>I only use deps that support Bun like Hono and Drizzle but so far my experience has been flawless.<p>And yeah Node sucks for TS in comparison to Deno or Bun.
Deno Deploy is actually an excellent product.<p>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.<p>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.<p>[0] <a href="https://deno.com/deploy" rel="nofollow">https://deno.com/deploy</a>
For me Bun’s dramatic entrance and the a lack of any Deno response that reached my attention effectively evaporated any interest I would have in switching my runtime. I’m already set with my tooling and hosting.
My prediction for 2023 is 2 out 3 (so far)<p>> 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.<p><a href="https://blog.raed.dev/posts/predictions_2023" rel="nofollow">https://blog.raed.dev/posts/predictions_2023</a>
I defaulted to Biome for all greenfield projects a year ago, and at this point you would have to drag me kicking and screaming back to ESLint and Prettier. I also defaulted to Bun and still think Bun is leagues better than Node.js but I now have my doubts about its future after seeing the OpenCode devs consciously minimize their dependency on Bun for strategic reasons.
Rome tools is now Biome and Biome is really good. The company didn't work out but the tool itself is better than ever.
I think the only real perk of Bun/Deno over Node is that they can run .ts directly and have better ES compatibility. I don’t need Deno’s permission system, but it’s on by default, so I went with Bun.
Deno always felt like something built for the right reasons but at the wrong time. Good tech losing isn't new, it's just always a bit sad when it happens slowly.
It's easy to be critical in hindsight but honestly when Deno first came out it was pretty incredible. Even the whole idea about URL based imports makes lots of sense but it was incompatible with any of the existing toolchains that were wildly popular. At the same time, companies like Vercel launched a new kind of framework and leveraged that into a hosting business with I would say great success. They captured developers where they were at _today_, including acknowledging the demographics, the tools, the culture, etc.
Compatibility aside, Url-based imports are a bad idea as soon as you go beyond writing your entire program in a single source file and want to keep imported versions of common dependencies in sync. It's nice for scripts, but a deno.json file is better.
i did not interpret this article as hate. this is very sad news and OP is being honest about the state of things and failings along the way. they even end with a plea that things turn around.
> Idle speculation has led to baseless rumours of an OpenAI acquisition. I’m not convinced that makes sense but neither does the entire AI industry.<p>hmm, blog author doesn't know about Anthropic's Bun acquisition, and consequently shouldn't comment on "the entire AI industry"
Anthropic's acquisition might prove for the better if their able to avoid the same layoff situation.
I had the feeling something wasn't going well as soon as the AI pivoting. My guess was that for Ryan being acquired like Bun was might have been the only road available
Like other commenters the tone of this post threw me off but I was really impressed by the design of the website. Congrats for building it, it shows your hard work and taste!
I'm afraid something like that could happen to bun.
This is an absolutely horrible article. From totally over the top comparisons to an absolute lack of substance, this is no more than a collection of ‘haha me smart’ garbage mixed with personal attacks.<p>Drunk sports fans are more coherent than this.
> I wanted to know if the hundreds of hours I’d spent mastering Deno was a sunk cost. Do I continue building for the runtime, or go back to Node?<p>I assume the author is aware that Ryan Dahl created that too?<p>Not that it would make him immune to criticism, but the author comes off extremely petty.
They should call the next js runtime "done"
Does any of this transfer over to Bun as well?
Bun is pragmatic, extremely fast and self-contained. Ryan Dahl is a hero of mine but Deno could be neither of those, which is a shame, but to answer your question, no, not much of these can be said for Bun.
Definitely, as it depends on where Zig goes, and what Antrophic will make out of it.
I honestly can't think of a single practical scenario where I'd pick Deno over Node + npm today. Bun, on the other hand, has pretty much claimed the performance crown for itself at this point.
For me yes, I have never found these alternative runtimes appealing.<p>However Anthropic owns Bun now, so a different story will unfold.
I really hope this is premature because Deno is easily the best thing to happen to the JS/TS ecosystem in years.<p>I agree with all the comments saying this is unnecessarily critical. We're getting an amazing tool totally for free. Quit complaining.<p>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.
I’m starting to think this guys obsession with writing hit pieces about Deno is not at all genuine and perhaps he is being paid.
The problem Deno faces is that nodejs is “good enough”.<p>Pray you never have a “good enough” competitor.<p>I felt it should have aimed to be a 100% drop in replacement for nodejs then innovated on top of that.
As soon as Deno took money from Sequoia, this was bound to happen.<p>So here is what is going to happen:<p>Deno is going to 100% get acquired.<p>Ryan Dahl is obviously rare talent and any company that gets Ryan would be incredibly lucky.<p>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.<p>[0] <a href="https://news.ycombinator.com/item?id=47426659">https://news.ycombinator.com/item?id=47426659</a>
Who hurt you?
What nonsense. Does it count as a “clapback” when the CEO responds sensibly and takes responsibility? This is just pointless snark.
> The harsh truth is that Deno’s offerings have failed to capture developers’ attention. I can’t pretend to know why — I was a fanboy myself — but far too few devs care about Deno.<p>I never heard of Deno until today. So perhaps this was a marketing failure.
[dead]
[dead]
[dead]
[dead]
> What’s next for Deno?<p>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.
Deno is much more than a fringe tool. It's a genuine improvement in many ways.
The world doesn't need a dozen JS runtimes.<p>The world doesn't need a dozen JS engines.<p>The world doesn't need many dozens of Linux distros.<p>The world doesn't need a handful of BSD distros.<p>The world doesn't need many dozens of package managers.<p>The world doesn't need hundreds of JS frameworks.<p>The world doesn't need dozens of programming languages or chat protocols or CI/CD systems.<p>The world doesn't need dozens of init systems, service managers, display servers, audio stacks, universal app formats, build tools/bundlers.<p>Deno may have dragged the JS runtime space forward, fully agree. Maybe it served its purpose and it is time to say goodbye.
If Deno moved things forward, doesn't that suggest that we do need efforts like this to support ongoing progress? There doesn't seem to be strong evidence to the contrary in the JS ecosystem.
The world doesn't need so many people or anything they have to offer it.
I'd argue that the mainstream, lowest-common-denominator tools are the ones which waste people's time. (Especially when they're backed by an incumbent. Deno, on the other hand, clicked immediately.)
I have switched entirely away from anything deno, even though I used it in supabase.<p>But I need to have everything in a mono repo for agents to properly work on in.<p>Cloud functions and weak desperation between dev and prod is a mess, even more so with agents in the loop.
> But I need to have everything in a mono repo for agents to properly work on in.<p>Why was this a problem with Deno? Up until recently you had to use package.json and npm/pnpm for it to work, but even then it was better than Bun or Node since you could use import map to avoid compiling packages for testing etc (Node and Bun's type stripping doesn't work across local monorepo dependencies, and tsx produces mangled source maps making debugging a hassle). Now Deno has built-in workspace/monorepo support in deno.json.
> But I need to have everything in a mono repo for agents to properly work on in.<p>Why is that? Seems like an agent framework limitation, not a reasonable requirement in general. (I do not have this limitation, but I also have a custom agent stack)
I've found myself occasionally wishing I had a monorepo purely for Claude Code for web (Anthropic's hosted version of Claude Code), since it can currently only work with one private repository at a time.<p>On my own machine I have a dev/ folder full of checkouts of other repos, and I'll often run Claude Code or Codex CLI in that top level folder and tell it to make changes to multiple projects at once. That works just fine.
Couldn’t you make a pseudo monorepo via git submodules?
I don't think there's a way to have that work in Claude Code for web, since each checkout there uses a custom GitHub access token scoped to a single repository.
GitHub tokens can span more than one repo or org if the account requesting has access to them. Is this supported on the non-web version?<p>(I was going to try claude again this weekend, but when I tried to login, got an error and am reminded how much down time I experience from Anthropic, arg...)
Submodules are pain, use the dependency management systems for the languages in your monorepo.
The "dev/" folder concept is what I give my agent, so I can select what I want it to have access to. On my computer, I have a few of those to group those that go together.
This site (from nx), while biased, explains it best. <a href="https://monorepo.tools/" rel="nofollow">https://monorepo.tools/</a><p>In a poly repo setup, agents are less effective having to infer changes across repo boundaries using specs rather than code as context. Changes that impact multiple repos are also much messier to wrangle.
Monorepos come with a lot of pain too. Two sides of the same coin. I manage the build system for a large monorepo. Questions that will get you to a primary source of pain...<p>How do you minimally build based on the changeset? How do you know this is sufficient for correctness? What happens when feature branches get out of date and don't see the upstream change that breaks the local branch? How do you version subprojects, as they change or as a whole?<p>Monorepos have a habit of creating hidden dependencies. The languages you use can help or hurt here.
I was really into Deno until it went all-in on nodejs compatibility (like Bun).<p>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?<p>And so I ported everything to Bun