loading...

How is Deno coming along?

ben profile image Ben Halpern ・1 min read

Deno was the new hotness a little while ago. Basically every JS post was Deno for a while.

... How are things going now that things have settled down? Who's using Deno?

Discussion

markdown guide
 

I see some things about deno vs node, but they are fairly wrong. Basically because node has a lot of large gaps that by definition can’t be closed. While deno solves those.

I have been using it since February everyday. It is wonderful. No need for a package manager. The industry has created immutable modules so they can never be removed. Can’t say the same about NPM.

A lot of tooling is actually done in Rust instead of Javascript. This is transparent to the user, but makes it so things like formatting or lint it are blazing fast. That being said they have some work to do, since they are basically recreating prettier and eslint. But the community is well on its way.

The best thing I can day is this.

  1. I don’t have to use a package manager, it just works. This is amazing with dynamic imports.

  2. No need to setup tools or download a boilerplate. It just works and comes with what I need.

  3. The module repository is really a proxy with added immutability. It is really nice. Forced to tag modules which solves some minor dependency issues with NPM. For example a lock file is optional if all sources come from a repository with immutability. And it’s optional, you can get package from MANY places.

  4. Because most people use deno fmt and deno lint, code is super easy to read across projects. Conventions are nice.

  5. First party support for WAM.

  6. First party zero tooling typescript.

  7. Coming soon is rust plugins so you can run native code with custom bindings to deno.

  8. The community is one of the best. Only second to vue in my honest opinion. Core team is amazing. Super helpful.

  9. Many node packages just work through unpkg, pika, skypack. Though not as ideal as a real deno mod.

Basically the node vs deno thing is kinda BS. They both run on v8. The difference is in resolution of files, the baked in Dev experience, package management.

Deno also has a more stable runtime in the sense that requests perform more consistent than node. Responses from a app through deno and the same app in node is very interesting. I run benchmarks of 10,000 times, and you will get a dozen outliers and everything else will fall into the same time. Node on the other hand will be all over the place.

 

This seems to be the only valuable comment here. Thanks!

 
 

I often use Deno for my small automation scripts / local tools.
I like that I can use TypeScript based on the V8 JavaScript engine and modules without using third-party tools like Babel. It also comes with its own bundler and tester. No more npm install whatever --save-dev. Deno handles packages by itself just from code. Deno gives me free hands when I want to write a small script without any configuration and that's why I personally like it. I also like its permission policy.

 

I am currently looking for esbuild or esbuild wrapper (like snowpack) that doesn't need node or npm.

I am not sure if deno's native can minify yet?

 
 

There should be some bridge, to move Node projects to Deno projects.

I understand that it's not possible, taking consideration that they are two different environments. But there should be away to handle this.

Taking NPM packages as url based package like in Deno.

If we have this bridge to build Node projects to Deno, I believe won't take more than a 3-4 years for Deno to prevail.

 

Pika package, skypack, and unpkg.

Basically those services take NPM package and wrap a module around it. Most of them work today.

Node has module support. If the NPM package has it, it works in deno.

Node specific calls that can’t be emulated in deno, or dependencies that won’t work through the services I said above won’t work. But many things just do.

 

Deno also has Node's commonjs and module's compatibility layer.

github.com/denoland/deno/blob/mast...

 

I think it depends on how much it can replace frontend tool set.

For backend, I think it works well, but cannot replace Node, not to mention other languages' competitors.

 

I tried it a bit for a while and can’t really see its appeal for me to move from node.

I‘d like to be proven wrong though but it seems to me deno is just another huge effort to solve workable problems that exist on node.

I guess only time will tell whether it will replace node or die because of insignificant userbase.

 

Many issues can’t be solved in node that deno solves.

I don’t think you want to migrate, as much as when you do a new project, check it out.

 

Deno seems cool and it has the potential to replace Node in the future. However it's still in its initial phase and I think it's just better in personal test projects at the moment. Not many people have even mastered Node yet and obviously there won't be any Deno jobs for years.

 

I'm still waiting for package management to become stable.

 

There is no package management. It’s not ideal.

Create a deps.ts file and export any thing you need to import.

If you want to use a interface in your code similar to node where you regency the “module”, then use the import map feature.

Not sure what you are waiting on. The package managers for deno, just make it easier to create a import map. It’s not like NPM by design.

 

v1 is too early to predict its future, so, for now, its still node

 

I have installed and tested some features since last year. Deno is cool but not great enough to push me switch to it from Node. Converting would take so much time.

 

Interesting question. I'm also intrigated. Personally I used Deno only on dummy side-projects, but not yet in a real one.

 

I asked myself the same question two days ago. I concluded in 2 minutes that it was again a trend dying off as fast as it came.

 

evenif it's prod ready, but I don't think the community is big enough to handle most use cases.

wdt?

 

Node is all around and it would probably take 10-15 years Deno to Have a stand and I don't think Deno will ever catch that stand, based on current specifications.

Here is why?

Currently looking at the flow people are comfortable with Node, have no issue with node and if there is any issue Node Js Team is continuously updating the Node version and this is why I think where every thing is stable so why People would switch to Deno?

I personally don't know much about Deno, but I was bit excited to learn Deno when it was all around the web and have no plans now!

 

You are kinda wrong here. Node has issues. Deno solves many of them. While node is stable and works, people will migrate.

Nashorn and Rhino are v8 like run times In java. Basically the java version of node. Massive change from rhino the older one to nashorn the newer when it was proven it solved issues.

You are spot on that it will take time. But the eco system is so big both can exist. It’s not a winner take all, and never will be.