Ryan Dahl
👤 PersonAppearances Over Time
Podcast Appearances
Day after day, it continually surprises me. It's just, you know, like every year, like this is how big Node will be, right? And then, you know, the... Next year, it gets bigger and bigger. It's a privilege to have worked on this.
Day after day, it continually surprises me. It's just, you know, like every year, like this is how big Node will be, right? And then, you know, the... Next year, it gets bigger and bigger. It's a privilege to have worked on this.
Yeah, it's been a while. I think we started this in 2017. and just kind of got off to a slow start demo for a conference. But yeah, it's been plugging away at it.
Yeah, it's been a while. I think we started this in 2017. and just kind of got off to a slow start demo for a conference. But yeah, it's been plugging away at it.
Yeah, it's basically feature... Yeah, the release candidate is almost exactly what will be there. Yeah, we released Deno 1 back in 2020. So it's been four years now. We've talked a lot about... We thought about this for a while about what to do for Deno 2 and teased it multiple times, but always kind of pulled back from it because we're like, yeah, actually, no, it's missing this. We're not sure.
Yeah, it's basically feature... Yeah, the release candidate is almost exactly what will be there. Yeah, we released Deno 1 back in 2020. So it's been four years now. We've talked a lot about... We thought about this for a while about what to do for Deno 2 and teased it multiple times, but always kind of pulled back from it because we're like, yeah, actually, no, it's missing this. We're not sure.
Like we have to... So we've thought long and hard about this release. And yeah, I'm excited to finally get it out there.
Like we have to... So we've thought long and hard about this release. And yeah, I'm excited to finally get it out there.
Sure. I mean, there are things that I said in that original talk that Deno 2 actually goes back on. So, for example, introducing the process global variable is, I think, one of the things I regretted about Node. Turns out, like, yeah, I think the...
Sure. I mean, there are things that I said in that original talk that Deno 2 actually goes back on. So, for example, introducing the process global variable is, I think, one of the things I regretted about Node. Turns out, like, yeah, I think the...
we're just kind of hitting reality with, with, you know, how, how big the NPM ecosystem is and just realizing that, and this is, this is kind of a big part of, of Dino too, is, is just realizing, you know, if you're going to, if you want to be able to pull in some random NPM library, like GRPC, which you definitely want to be able to do because it's super complicated and like, you're not going to rewrite that.
we're just kind of hitting reality with, with, you know, how, how big the NPM ecosystem is and just realizing that, and this is, this is kind of a big part of, of Dino too, is, is just realizing, you know, if you're going to, if you want to be able to pull in some random NPM library, like GRPC, which you definitely want to be able to do because it's super complicated and like, you're not going to rewrite that.
you have to be pretty close. You have to basically implement the Node built-in APIs. And although we look at this very carefully and still have a core philosophy of leveling up JavaScript and narrowing the gap between server-side JavaScript and browser JavaScript and looking to the future of JavaScript, Deno is not a re-implementation of Node in Rust. There is a
you have to be pretty close. You have to basically implement the Node built-in APIs. And although we look at this very carefully and still have a core philosophy of leveling up JavaScript and narrowing the gap between server-side JavaScript and browser JavaScript and looking to the future of JavaScript, Deno is not a re-implementation of Node in Rust. There is a
There's work that has been done to be able to import NPM packages and be able to run Node projects out of the box. At this point with Deno 2, it's pretty great. You can basically drop into most Node projects, let's say modern Node projects, if they're using ESM, not if they're using CommonJS, and use Deno with them.
There's work that has been done to be able to import NPM packages and be able to run Node projects out of the box. At this point with Deno 2, it's pretty great. You can basically drop into most Node projects, let's say modern Node projects, if they're using ESM, not if they're using CommonJS, and use Deno with them.
Yeah. Uh, very, very difficult, uh, decision to be made after, after like wringing our hands over, over long periods of time. Yeah. I mean, the original idea with the Deno module system is, uh, let's follow the ESM spec. Exactly. Let's follow exactly what browsers do. And, uh, browsers allow you to have, uh, HGPS imports in there and, uh, local imports.
Yeah. Uh, very, very difficult, uh, decision to be made after, after like wringing our hands over, over long periods of time. Yeah. I mean, the original idea with the Deno module system is, uh, let's follow the ESM spec. Exactly. Let's follow exactly what browsers do. And, uh, browsers allow you to have, uh, HGPS imports in there and, uh, local imports.
And can we actually like build an entire module system on top of that? The answer is yes, you can. And it works pretty nice. Like it's pretty great, especially for like single file scripts and kind of small little programs. You can just kind of drop in some imports in there and get off to the races pretty quickly. it gets problematic as you kind of scale up in complexity.
And can we actually like build an entire module system on top of that? The answer is yes, you can. And it works pretty nice. Like it's pretty great, especially for like single file scripts and kind of small little programs. You can just kind of drop in some imports in there and get off to the races pretty quickly. it gets problematic as you kind of scale up in complexity.