Shop now Shop now Shop now  Up to 50% Off Fashion  Shop all Amazon Fashion Cloud Drive Photos Shop now Learn More Shop now Shop now Shop Fire Shop Kindle Listen with Prime Shop now Shop now
Customer Review

2 of 3 people found the following review helpful
5.0 out of 5 stars Excellent Introduction to Node.js, 28 Dec. 2013
This review is from: Node.js in Action (Paperback)
If you're looking for the Node.js book to cut your teeth on then look no further; Node.js in Action is a comprehensive introduction to getting up and running with Node.js, using real-world examples and written by recognised experts within the Node.js community. For anyone interested in getting to grips with Node.js or even getting started with web development in general, this would be the book I would recommend.

The book starts out as most technical books do when introducing a new technology, namely, describing what the technology is, how it can be used, followed by the classic "Hello World" example. But then this is where it diverges from the well-worn path by showcasing what can be achieved with the technology with a fairly involved example that includes building a real-time chat web application akin to Internet Relay Chat (IRC), but using HTTP and socket.io, a Node.js package for handling asynchronous communication between a web client and web server. What's a Node.js package you might ask? All is explained within the first part of the book with the introduction of the Node Package Manager and the concept of Node.js modules. Although this part of the book introduces the reader to some core JavaScript concepts such as the event loop and writing asynchronous code using Continuation Passing Style callback (continuation) functions, I would highly recommend also picking up a book focused entirely on JavaScript to accompany Node.js in Action, to become better acquainted with the core idioms and quirks of the JavaScript language and facilitate consuming the contents of this book more readily.

The second part of the book is focused on building web applications with Node.js. The authors have done a fantastic job in covering the fundamentals that one needs to know when building a web application such as authentication, URI routing, session management, cookie management, cross-cutting concerns such as error handling and logging, interacting with data sent by the client in the query string and request body, how to render HTML to serve back to the web client using templates, how to build an API following REST principles and how to persist data to a relational database such as MySQL or to a "NoSQL" database such as MongoDB or Redis. Rather than being thrown all of this information at once and watching us flail all over the place to try and make sense of it however, the authors introduce the topics one at a time in a way that is both compelling and interesting to read, starting with simple examples and then introducing the concept of middleware components like Connect and Express. As someone with many years of experience building web applications using a number of different web technologies, I often found myself asking "how do you do X in Node.js?", only for it to be answered in the proceeding pages. Well thought out and well written.

No comprehensive technical book would be complete without touching on how to test those lovingly written applications. Node.js in Action goes into some detail on how to unit test and acceptance test applications. At twenty pages, this chapter provides sufficient explanation of the common test patterns to get verifying that an application correctly fulfills the function that it is intended to.
The last part of the book focuses on using Node.js for non-web applications such as command-line utilities and TCP clients and servers as well as hosting and deploying web applications. The reader is also introduced to the wider Node.js community and how to participate and contribute back to make Node.js a more robust and useful platform. This is perhaps the driest part of the book but does provide a good reference to revisit when the reader is ready to launch their application to the wild world of the internet and needs to ensure uptime and performance.

The Appendices round out the book with details on how to install Node.js and also how to debug Node.js applications. Both of these topics are vitally important; precluding the former would be a non-starter for a book on Node.js whilst precluding the latter would make writing any non-trivial application a teeth-pulling experience, but it makes sense that both topics are included in the appendices as opposed to in the main body since each has a tendency to disrupt the flow of information presented within the book.

In summary, Node.js in Action is the Node.js book that I would recommend to anyone wishing to get into web development in general or for anyone coming from another programming language background, wanting to get a heads-up on Node.js; the first and second parts will get you up and running with Node.js in no time and the third part will ensure what you have written with Node.js will remain up and running. I should make it clear that Node.js in Action does not focus on the low-level API of Node.js or on Google's V8 JavaScript engine; the Node.js API documentation ([...] and source code ([...] should be consulted if wishing to dive deep into the technology. Node.js in Action does exactly as prescribed; provide a great "in Action" introduction into the Node.js world.

Full Disclosure: I was provided a free electronic copy of Node.js in Action by the publisher, Manning books, in exchange for an Amazon review. This fact has not influenced the honesty or integrity of this review; it has taken me around six weeks on and off to finish reading the book in order to write this review, time that as a professional software developer far outweighs the value of an electronic copy of the book!
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Be the first person to comment on this review.

[Add comment]
Post a comment
To insert a product link use the format: [[ASIN:ASIN product-title]] (What's this?)
Amazon will display this name with all your submissions, including reviews and discussion posts. (Learn more)
Name:
Badge:
This badge will be assigned to you and will appear along with your name.
There was an error. Please try again.
Please see the full guidelines ">here.

Official Comment

As a representative of this product you can post one Official Comment on this review. It will appear immediately below the review wherever it is displayed.   Learn more
The following name and badge will be shown with this comment:
 (edit name)
After clicking on the Post button you will be asked to create your public name, which will be shown with all your contributions.

Is this your product?

If you are the author, artist, manufacturer or an official representative of this product, you can post an Official Comment on this review. It will appear immediately below the review wherever it is displayed.  Learn more
Otherwise, you can still post a regular comment on this review.

Is this your product?

If you are the author, artist, manufacturer or an official representative of this product, you can post an Official Comment on this review. It will appear immediately below the review wherever it is displayed.   Learn more
 
System timed out

We were unable to verify whether you represent the product. Please try again later, or retry now. Otherwise you can post a regular comment.

Since you previously posted an Official Comment, this comment will appear in the comment section below. You also have the option to edit your Official Comment.   Learn more
The maximum number of Official Comments have been posted. This comment will appear in the comment section below.   Learn more
Prompts for sign-in
  [Cancel]


Review Details

Item

Reviewer


Top Reviewer Ranking: 5,202,128