Episode 1: Getting Started with Node.js
Published Aug 1, 2026 · 6:40 runtime · 12 comments
So what is Node.js, and when should you choose it? This first episode covers the fundamental concepts that power the platform.
In this episode
- What Node.js is and the challenges it was built to address
- Event-driven programming and non-blocking I/O
- How one process can serve many requests at once
- A side-by-side comparison of blocking file reads in Ruby versus asynchronous file reads in JavaScript
- Why asynchronous code is essential for network applications

Download WebM (12 MB) Download MP4 (26 MB)
Show Notes
This episode uses Node.js v0.8.4 — check the downloads and documentation.
What is Node.js?
Node.js is a software platform built for creating fast, scalable network applications. It is event driven and relies on non-blocking I/O. Because of that non-blocking approach, a single process can handle a large number of requests.
Blocking vs. non-blocking I/O
Reading a file in Ruby
Ruby sample code from the episode:
contents = File.read('myfile.txt')
puts contentsReading a file in JavaScript
JavaScript sample code from the episode:
var fs = require('fs');
fs.readFile('myfile.txt', 'utf8', function(error, data) {
console.log(data);
})
console.log("That's the contents of the file.")Comments









Frequently Asked Questions
Copyright © 2012 Brandon Tilley
Node.js is an official trademark of Joyent. This site is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
Node.js shines when an application needs to juggle many simultaneous connections without spawning a thread for each one. By pairing an event loop with non-blocking I/O, it keeps a single process responsive while work happens in the background. The Ruby and JavaScript file-reading examples in this episode show that contrast in miniature, and the same pattern scales up to servers, APIs, and real-time tools.