Hacker News new | past | comments | ask | show | jobs | submit login

It might catch on, it might not. Not everyone has to like it.

I personally do like it a lot. I think of it as Node.JS with a better organized core (with the benefit of hindsight), use of browser APIs whenever possible, and built in Typescript. I think it might catch on once we have some mature MySQL, Express.js, etc libraries.

I know seeing popular tools be rewritten from scratch is tiresome, but I don't think it's unreasonable in this case given that Node.JS and Deno mostly get their JS implementation from a separate program: V8. In that sense, Deno isn't throwing all of Node.JS away. It's just a different attempt to make V8 a command line tool.

And of course, competition is good. Maybe Typescript will become more convenient in Node because of Deno.

Additionally: as someone who uses Linux in their day to day job, I think it's a phenomenal scripting tool and replacement / supplement for Perl / Python. I mentioned this in a comment here the other day, but with this short wrapper, you can execute a bunch of SSH commands simultaneously using the Promise.all JS function (familiar to web devs). Just an example of a cool thing you can do with Deno scripting. https://github.com/gpasq/deno-exec




> use of browser APIs whenever possible

Correct me if I’m wrong, but isn’t Node.js aligning more and more with the browser APIs. For example if you `import { URL } from 'url'` you get the WHATWG standard URL object (it is also available as a global object). Node.js now has EventTarget and event listeners aligned with the DOM Event API. `crypto` is now a global object with the same API as the Web Crypto API. You have ArrayBuffer and Blob in Node.js just like in the browser.

What is it that Deno is doing differently then node here?


fetch() is a notable web feature missing from Node.js core


add WebSockets to that list.


Like I said, is aligning more and more:

* https://github.com/nodejs/node/issues/19393

* https://github.com/nodejs/node/issues/19308

Web APIs is not something that Deno is doing and Node isn’t. It is more something that Deno has done a few of which Node hasn’t yet.


It also looks like Node.js is going to get import maps.


> I think it might catch on once we have some mature MySQL, Express.js, etc libraries.

This resonates a lot with me. I first wrote nodejs apps not because of nodejs but rather because of Express. I could build a simple app very quickly, wire it up to a database, use Passport to secure it and call it a day. It was the libraries that drew me in.


I don't get the "built in Typescript" argument. Everything is running on V8 at the end of the day. With Node you run a one-line compilation step, Deno does the same thing just under the covers.


Maintainability I suppose.


Totally this, and not just for basic shell tasks but also as as scripting tool for CI/CD pipelines.


> you can execute a bunch of SSH commands simultaneously using the Promise.all JS function

It's just as easy in Python 3.5.

Plus async semaphore for resource limiting

And cancel remaining operations when others fail.

Python continues to be the ideal language for scripts.


You can use ZX to have Node in your shell: https://github.com/google/zx




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: