"JavaScript on the server" is the pitch you hear, but it undersells what Node actually is: a C++ program that embeds a JavaScript engine and bolts an entire asynchronous I/O system onto it. Nothing about JavaScript the language gives you file access, sockets, or timers — the browser hands those to you via Web APIs, and Node hands you a different set, built on completely different machinery underneath. Understanding that machinery is what separates "I can write an Express route" from actually knowing why your server falls over under load, why one slow endpoint can freeze every other request, and why the interview question about setImmediate vs. process.nextTick keeps coming back. This covers that machinery and the practical layer built on top of it — work through it in order, or jump to whatever section you need from the sidebar.