you are considering Node.js for your organization,
you want to understand Node.js better,
you want to migrate to Node.js,
you want hands-on experience in building servers with Node.js,
you want to try out a new and quickly spreading language.
No prior experience with Node.js is required - we will cover everything you need to get started.
The exact location of the venue in Zurich will be announced later.
1. Event loop, non-blocking I/O
The fundamental of using Node.js is understanding its single-threaded asynchronous nature. You will start with learning about the Event loop and V8's way of handling I/O operations.
2. Callbacks, Promises, Async-Await
Next, we will deep dive into using what we have learned in the previous section and look at how to deal with asynchronous code in Node.js.
3. Building your first Node App
You will have a chance to familiarize yourself with the Node.js runtime and libraries in a 2 hours long, supervised, hands-on session. Starting from a Hello, World! application, you will get to the point where you are ready to handle HTTP traffic.
4. Project skeleton
With your newly acquired knowledge, you will build a REST API project skeleton using Express. This section will help you get started with building real-life applications.
You'll learn how to test HTTP endpoints and write unit tests using sinon, mocha, and chai. We will also discuss what and how should be tested, and we'll take a look at some testing gotchas in Node.js.
Now that you can detect bugs, we will take some time to get rid of them while we explore the capabilities of Node Inspector, the built in graphic debugger of Node.js.
7. Best practices
We will go through some advice to make your development experience as smooth as possible and also discuss basic security measures that should be taken into account when creating your services. We will also take a look at proper ways of logging.