- Paperback: 332 pages
- Publisher: O'Reilly Media; 1 edition (July 25, 2014)
- Language: English
- ISBN-10: 1491949309
- ISBN-13: 978-1491949306
- Product Dimensions: 7 x 0.8 x 9.2 inches
- Shipping Weight: 1.5 pounds (View shipping rates and policies)
- Average Customer Review: 40 customer reviews
- Amazon Best Sellers Rank: #55,291 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Use the Amazon App to scan ISBNs and compare prices.
There is a newer edition of this item:
Frequently bought together
Customers who bought this item also bought
About the Author
Browse award-winning titles. See more
Top customer reviews
You should be able to build a simple node website after reading this book.
First off, awesome author, he is a passionate programmer and good writer as well. Chapter 5 about QA is an amazing chapter, and could inspire any developer.
But this book is a bit confused on what it whats to be. It often deviates into scholarly philosophy about web development theory, but isn't this supposed to be a technical book? Don't get me wrong, the ideas in this book are great, but some of the theory seemed out of place, and just distracting from learning node.
My biggest problem with this book as a person who is already a 'web developer', is it fails to demonstrate any real benefit of using Node in future applications. You learn how to build a website that you could have made in the language you already know (be it Ruby, PHP, etc). It lists some of the things node is good at in the first chapter of the book like Single-Page Applications, Expandable packages, using AngularJS. But doesn't mention any of these things again, I find no compelling reasons to migrate from PHP to Node after reading this book (even though I've been told they exist).
There is also no "Bringing it all together" chapter at the end, that would go through all the things you just learned to properly build a node website from scratch. While the book builds upon itself making the 'Meadowlark Travel Website", no objectives for the website are ever defined, so it doesn't feel like you are building anything real. It also gets more and more messy, especially when adding experimental features to demonstrate code functionality. In later chapters many code examples also lack a verbatim explanation of the expected output, so you never know if you actually did it right or not.
Most egregiously there isn't a mention of the MEAN stack or Socket.io in this book, 2 of what I feel are some the primary drivers for people moving over to node (and the reason I wanted to learn Node in the first place).
A few other nitpicks:
despite how ugly it is, I feel like EJS should get more than a mention, as you tend to see it in a lot of places that use node (for example the heroku node boilerplate is EJS). This would also explain the benefits of using Jade/Handlebars better. Also mentioning using AngularJS for views would have been nice.
Chapter 7 is like it was written in a Vacuum to Chapter 3. Many concepts that were already mentioned in Chapter 3 are reintroduced as completely new concepts....very confusing.
Code examples can get a bit ugly and aren't commented consistently. It's sometimes hard to know what code in what file is being referenced. This could be easily fixed in the next edition by putting line numbers and file names on the top of code examples. I wish there were less 1 line if statements and ternary operators in some of the examples, as it makes it less clear what is happening. For example, on page 150, it gives no indication where this connection to Mongo code is supposed to go, while one could figure it out, this is not a clear working example.
Both exports and module.exports are used without clearly defining the difference use-cases between the two
Other than the problems with the code examples, this book does offer a good conceptual framework for developing for the Web using these technologies. I hope future versions work out the code example issues.
No knowledge of NodeJS is necessary -- I had none and was able to follow along and make my own little app. I would also estimate that (a lot) more space was used in this book covering web development in general than Node and Express in particular.
There are typos scattered throughout but they do not obstruct the lesson meaning--just a little annoying. I also found the "Meadowlark Travel Website" to be distracting. After getting my grips in the first few chapters, I found myself jumping around in the book and did not care as much about digesting the travel website details. I think it would be more instructional to just use different model scenarios that make implementation concepts more clear and concise.
The main weakness of this book, I feel, is primary focus on dynamic multi-page website back-end. If you are wanting to develop a single-page/lean API perspective, the content of this book will not quite fit.