Good videos, with context.
Ryan Dahl: Original Node.js presentation

Ryan Dahl: Original Node.js presentation

stri8ted
3 HN recommenders · discussed 2016–2023
Open YouTube ↗

About this video

Ryan Dahl's first presentation of Node.js at JSConf 2009. He pitches event-driven, non-blocking I/O as the motivation, rather than JavaScript itself.

Why it appears in the archive

HN recommends it as a classic dev tool pitch with palpable energy, and cites it for why Node was created.

AI-generated summary and labels from the source dataset; verify important details against the video. Source & credits.

From the Hacker News discussion

samblr · 2016-10 · strong rec

There is a sort of palpable energy in (Ryan Dahl) node.js original presentation. [VIDEO] edit: +Ryan Dahl

Read original comment ↗
knbknb · 2018-10 · rec

I like the talk by Ryan Dahl, node.js inventor Original Node JS Presentation, 2009, [VIDEO] In 2018 he gave a follow-up presentation "10 things I regret about node", but that presentation is more for experts.

Read original comment ↗
swyx · 2022-06 · rec

i also asked this on twitter so just putting some replies here: - Doug Engelbart [LINK] - Twilio [LINK] - Stripe - "7 lines of code" - Netlify - [LINK] - Heroku - [LINK] and git push heroku master - Cloudflare - [LINK] - Node ( [VIDEO] ) and Deno ( [LINK] ) - Firebase (reportedly) - [LINK] smaller companies/less impactful pitches that i still like - Redux [LINK] - Stackblitz [LINK] - Comm [LINK] - Mongodb [LINK] - Let's Encrypt [LINK] - Figwheel-Clojurescript [LINK] - Svelte [LINK]

Read original comment ↗
alexc05 · 2016-02 · reference

Ahh.... lovely, thank you. So what I'm referring to as "asynchronous javascript" is technically a colloquialism used to describe the event-driven callback-y nature of the code. I'm not sure I'm still against referring to javascript as asynchronous or at least as having asynchronous methods for the purposes shorthand and quick communication. Consider the code (or paste it into a chrome console) function _done(){ console.log(arguments) } var db = window.openDatabase("dbfoo", 1, "test db", 5e6) db.transaction(function(tx){ tx.executeSql('CREATE TABLE t1(a, b PRIMARY KEY);', _done, _done) }) console.log("i happen before the line above me") Notice how the lines of code complete out of order. I think it's really useful to think of that as asynchronous code. It appears I'm using async as a term interchangeably with non-blocking... which may not be correct. So it may be the case that my nomenclature is off, but I'm sure I got that from somewhere. Perhaps a lot of people were referring to node as async in the early days, I'm re-watching this: [VIDEO] now, but it doesn't look like Ryan Dahl uses the term async. Anyways, looks like I'll have to train myself to use the right word for it. Thanks for pointing that out without making me feel dumb or being all insulting and internet-y. :) I really appreciate that. EDIT: Hmmm... additionally, to be fair: it appears that some agree that it is OK to refer to parts of javascript as async [LINK] so it might not be perfectly accurate, but it isn't

Read original comment ↗
e12e · 2020-09 · reference

See also - post on original nodejs presentation: [LINK] (was a surprisingly large number of dead links on hn regarding this one). I believe this is a copy of the video: [VIDEO]

Read original comment ↗
jorisd · 2021-04 · reference

The third slide of Ryan Dahl's 2009 JSConf.eu presentation ( [VIDEO] ) covers most of the reasons for why it was made: "I/O needs to be done differently". Evented I/O via event loops wasn't really that much of a thing back then, and many server-side web frameworks were simply sitting idle whilst waiting on I/O. Node changed this, and thereby enabled a kind of concurrency that was easy to achieve and there by default, often without the programmer really realizing it, because they didn't have to do anything too special to get it done other than write JavaScript with callbacks. I don't think JavaScript was really the point of it. (EDIT: but JavaScript having functions as a first-class citizen, and closures, makes it a very good candidate for something that leverages event loops for this kind of thing)

Read original comment ↗
danShumway · 2023-08 · reference

Edit: here's the actual presentation, not just the slides: [VIDEO] What's interesting about this talk is that Ryan doesn't even mention Javascript at all (other than briefly to say that NodeJS is built on it) until nearly 13 minutes into the presentation. And it's clear that he's using Javascript as a means to an end -- he's going with Javascript largely just because Javascript by default has a single threaded event loop that every JS programmer had to learn to work with it. So he brings up going with JS because JS programmers are used to callbacks already -- and then roughly 2 minutes later he immediately moves back to talking about I/O and request handling again. Very little of his presentation is about Javascript beyond an aside of "JS already does this and JS programmers are used to it, so we might as well go with that and try to copy JS conventions." He almost spends more time talking about common SQL libraries than he spends talking about JS.

Read original comment ↗