nice article, I agree Deno is probably not going to win, especially after watching this pretentious talk [0]. I personally expect WASM based solutions to take market share from JS/TS by enabling any language to be used. Still a bit out in time I suspect, but the interest is definitely there on the user end.
Is it pretentious because he said he wrote the talk the night before? (It is Ryan Dahl giving the talk and he's pretty famous for writing Node.js originally.)
It's interesting the goals that he outlines at 3:30. They feel like the same goals as what Bun has for the project. I'll paste them below (thank you iOS image OCR)
> My Dream Stack
> - Reduces boilerplate
> - ideally very small apps can be defined in a single file
> - Uses JavaScript, the universal scripting language
None of those describe the goal of what my understanding of Dyno has previously led me to believe: Security around 3rd party dependencies. (They've forked the entire NPM ecosystem to make this possible, and this is the key differentiator between Bun and Dyno in my mind.)
It's pretentious because he sounds like he knows what is better for everyone, while he "fixes" his previous mess up by fracturing the ecosystem and introducing more tooling. Beyond N browser support, we are now going to see a host of tools to support Node <-> Deno translation. So it seems he has added a dimension of complexity while claiming to reduce it.
The part about unix being wrong was notably wrong itself
I don't know why deno is veered off hard from package.json and node ecosystem rather than supporting it and enhancing from it. It makes adapting deno a hassle and hard than transitioning nicely from node.
My understanding (which I’m sympathetic but not married to) is because Deno’s module system, along with those of the web APIs it embraces, provide a sufficient abstraction layer for `npm` (the client, not the business) to be built on. Various approximations of this are good enough that people are using Node and Deno almost interchangeably. The extent to which they don’t work mostly boil down to packages expecting a fully complete Node environment or a fully complete browser environment.
[0] https://www.youtube.com/watch?v=3NR9Spj0DmQ