Skip to Content
View all events

Node.js: Beyond the Basics

Published by O'Reilly Media, Inc.

Intermediate content levelIntermediate

Learn the Node.js runtime itself, not the NPM packages written with it

This course will take you beyond the basics of setting up Node.js and using NPM packages. We’ll dive into Node’s core concepts like the concurrency model and event emitter and we’ll explore Node’s dependencies and modules and learn the pure Node.js API. Instead of learning about Node as a simple web server, you’ll learn about networking with TCP, working with streams, and scaling applications with clusters.

What you’ll learn and how you can apply it

By the end of the live, online course, you'll understand:

  • The Node.js runtime and its event-driven architecture and event-loop
  • The native Node.js modules and their various usages

And you'll be able to:

  • Use Node.js natively to implement services
  • Use Node.js event emitters, streams, and other native built-in features in Node
  • Scale a Node.js application

This live event is for you because...

  • You are a developer with at least a year of JavaScript experience and you want to put it to use with Node.js
  • You are a developer who started learning Node.js and want to expand on your knowledge beyond the basics of of running Node scripts and requiring and using NPM packages.

Prerequisites

  • Good knowledge of JavaScript
  • The basics of Node.js: Creating and running a JavaScript file with Node, requiring an NPM package, using Node.js as a simple web server

Class materials/exercises/files:

https://github.com/jscomplete/node-bb

Recommended Preparation:

Installing, maintaining, and publishing Node modules with npm

What's New in JavaScript

A Beginner's Guide to Understanding JavaScript

You Don’t Know JS: Scopes & Closures

Schedule

The time frames are only estimates and may vary according to how the class is progressing.

Day 1

Segment 1: Node’s Architecture and the Event Loop (50 min)

  • Instructors will explain Node’s architecture, V8 and libuv, events and callbacks with the Event Loop
  • Participants will follow along with the slides and the Github repo

Break (10 min)

Segment 2: The global object, process and Buffer (40 min)

  • Instructor will demonstrate with scripts Node’s global object, and its process and buffer objects
  • Participants will follow along with the slides and the Github repo

Break (10 min)

Segment 3: Requiring modules (40 min)

  • Instructor will demonstrate with scripts Node’s global object and how the require module actually works in Node
  • Participants will follow along with the slides and the Github repo

Break (10 min)

Segment 4: Node.js by example - net/tcp/udp/dns (30 min)

  • Instructors will present many examples with challenges and work through solving them
  • Participants will follow along with the slides and the Github repo

Day 2

Segment 1: Node.js by example - http/https/os/fs/uti/debugger (60 min)

  • Instructors will present many examples with challenges and work through solving them
  • Participants will follow along with the slides and the Github repo

Break (10 min)

Segment 2: Node.js streams (40 min)

  • Instructors will explain Node’s readable, writable, and transform streams
  • Participants will follow along with the slides and the Github repo

Break (10 min)

Segment 3: Scaling a Node.js application (60 min)

  • Instructors will explain child processes and the cluster module and work through cases for using them
  • Participants will follow along with the slides and the Github repo

Conclusion (30 min)

  • Instructors will present a small challenge to assess understanding
  • Q & A

Your Instructor

  • Samer Buna

    Samer Buna has extensive experience in software development, including web and mobile applications, APIs, system administration, and scalability. Samer is the author of several technical books and online courses on topics such as Node.js, React, and GraphQL.

    Xlinksearch

Skill covered

Node.js