Author: Shelley Powers
Reviewer: Ian Elliot
Node.js has become very popular. Does this book tell yoiu what you need to know?
Chapter 1 goes through the basics of getting started on Ubuntu and with the help of WebMatrix on Windows. I'm not sure WebMatrix is a good choice and things have moved on since the chapter was written. Next we have a Hello World in Node and an explanation of the asynchronous nature of Node verses the more usual threading approach used by web servers such as Apache.
Chapter 2 moves on to consider using the REPL Read-Eval-Print-Loop to work interactively with Node. I found this chapter interesting, but not particularly useful because I hate working with a REPL - but you may not agree.
From here we start to look at the core of Node and in Chapter 3 encounter globals, timers, TCP servers, sockets, processes and so on. It's not a particularly logical collection of topics, but it is what you will find inside of a basic Node setup. Chapter 4 moves on to modules - how you can load one and how you can make your own.
The next big problem in using Node is getting an organization for a web site. After considering how to do it from scratch in Chapter 6, we explore using Connect as middleware to build a site. Chapters 7 and 8 look at using an alternative, the well known Express framework.
The next three chapters look at working with database in Node. Chapter 9 is about Redis, Chapter 10 MongoDB and Chapter 11 MySQL. Next we have a look at how to handle serverside graphics and video, and an in-depth look as websockets.
The final three chapters are concerned with wider issues of using Node. Testing and debugging, security and finally scaling. The scaling chapter includes a discussion of deploying Node to a cloud service - Azure, Amazon etc.
It is a good book if you need to find out what Node and its infrastructure are all about. It doesn't completely solve all of the problems that come with using Node and it doesn't provide a guide as to whether Node is a good choice for your project. But if you read the book you should be able to do something about both things yourself.