Can anyone explain to me like I'm five - Why deno was created when nodejs existed?
Consider me as a beginner who has written 3-4 server-side programs in node.
P.S. - Please don't post a link to Ryan Dahl's video
Can anyone explain to me like I'm five - Why deno was created when nodejs existed?
Consider me as a beginner who has written 3-4 server-side programs in node.
P.S. - Please don't post a link to Ryan Dahl's video
For further actions, you may consider blocking this person and/or reporting abuse
John Brooks -
Guillaume Sere -
Valeria -
Rigal Patel -
Top comments (4)
So, okay, we (as a community) don't need deno. Deno exists because Ryan Dahl felt the need to create "an environment" where he could play around and create something quickly but it could also allow him to create "entreprise quality software". He said in a conference talk that he thinks
node
is very close to that but that it isn't perfect. I think deno is basically what Ryan thinksnode
should be by now.You get modern JS out-of-the-box (not only TypeScript). Node came out when ES5 was a new thing.
You have only a single executable with no need to think about node_modules. Makes it very easy to install. I value this greatly, so much less pain. Back when Node came out this was one of the biggest issues and concerns I had with it.
You don't have Node.js baggage of history that you eventually have considering how much JavaScript has evolved in the past 10+ years.
Making big updates to Node is near impossible without breaking the ecosystem. Deno made so many things differently to Node you'd have never gotten the features via Node. You get improved networking.
It is the greatest excuse to have a cute dino logo that has ever existed.
As Ryan is saying in his video; itβs a rethink of how he would develop Node right now.
So for example everything in Deno is typed with Typescript. This leverages a lot less bugs during development.
Also Deno has no centralized module packager like NPM. That means you can import your modules from wherever you want.
A security advantage is that you have to specify which apis to use when running your app.
I've worked on few libraries during my career and every time I observed the same pattern: I write implementation (perhaps incomplete); I have feeling that something is wrong with it; I rethink how it should be implemented and rewrite library from scratch; repeat.
I realize that this is just a (perhaps unnecessary) perfectionism but I'm not alone with such approach.
Perhaps Ryan Dahl is also among such persons. If so, I understand his reasoning for creating Demo very well :)