A few days ago, I was given a copy of the book Advanced Express Web Application Development from Packtpub to review it and I’m pleased because it is a really good book. As I mentioned before, I got interested in Node.js because I learned that it could be used to do testing on the UI, which is one of the most difficult things to do for us at work right now, giving the ever changing nature of our application.
Although not completely unfamiliar, I am a newbie when it comes to Node.js, Express and related technologies. I have read my fair share of beginners tutorials and books, though, so it wasn’t really hard to follow along, plus the book is well structured and the code included with it works without having to debug it or troubleshoot it, which makes life so much easier.
There are several things I really liked about this book. First of all, the fact that it doesn’t just offer a collection of short snippets and mini-tutorials, but sticks with one complete, real-life like application from end to end, while also teaching you best practices and the correct approach towards designing and structuring your applications. It’s really hard to find a book about Express or Node.js that does that. Most of the books and tutorials I’ve found deal with short and simplified examples of how to build your own chat application and such.
Of course, a more realistic example also means that you will find yourself incorporating all sorts of dependencies, libraries and such while working your way through the chapters of this book, because this is what you’re likely to find in a real life application. If you, like me, are unfamiliar with some of these libraries, modules and technologies, I recommend that you spend sometime reading about them so you don’t just copy and execute the commands included in the book without knowing what you’re doing. While the book usually tells you what those libraries and dependencies are, why we need them and how we’ll use them in the application, it’s really beyond its scope to go into much detail about any of them. It can feel a bit overwhelming for a newbie! That’s why I plan on returning to the book and working through all the parts of the example application all over again after I become more comfortable with Grunt, MongoDB and Redis.
I was also greatly impressed by the fact that the example application in this book incorporates TDD, specially because that was one of the reasons that first got me interested in learning about Node.js.
The only problem I had with this book was that I was never able to access the github repository that the book directs the reader to in chapter one to obtain the source code. I had to get the source code from Packtpub, instead.
I would recommend this book to all that want to learn about Node.js and Express beyond the basic tutorials. This is not a tutorial, no, but it is a fine “blueprint” for what a real-life Node.js application looks like.