Last month I got a review request from Packt Publishing for a recent book of theirs on meteor.js. About six months back, I was heavily involved in developing my first real-time web application at work (Accenture). The idea of using the meteor.js framework for building that app came from my mentor who had then recently given a presentation on it at an event. Awed by the concept of reactivity, a rich API and the power of MongoDB, I fell in love with Meteor pretty quickly. As it went, it didn’t prove difficult convincing my boss to using Meteor as the basis of a “social” TODO app we were planning to create at the time as the various virtues of this splendid framework clicked immediately.
Officially, meteor.js supports only Linux and Mac OS X as development and deployment environments, whereas Accenture is a Microsoft technologies driven company. So I had to do my research and come up with a way of deploying our meteor app on a Windows server. I blogged about the complete process of hosting meteor.js apps in IIS, and perhaps that’s how Packt Publishing found me.
Gabriel has done a good job with the introduction, and I liked the way he doesn’t ignore programmers who haven’t ever seen the black of a command-line. He keeps the overall tone simple and easy to understand. But assumes the reader has had at least some experience developing websites, which is fine as this book is not targeted at web development itself. Almost all important Meteor API functions and concepts are covered, and these make up for a natural flow in the book. Gabriel’s explanation of how Meteor implements the MVVM model makes this scarily perceived topic seem simple. The best part of the book has to be “Grapher” project, through which Gabriel has illustrated the process of creating a mind-graphing web app from planning to coding to securing the app. I personally loved the coding style used and agree with the emphasis laid out on the planning phase. Having been involved in web dev since the last 6-7 years, I even learned a few new tricks. I think anybody would be amazed on how developing such a complex app becomes so easy when using Meteor.
Topics like publish-subscribe framework and app deployment are touched toward the end of book, but I felt a couple more pages should have been dedicated to these two important topics, although what’s covered applies well to starters. In my experience, using publish-subscribe in a more complex data setting can become overwhelming and cumbersome if done wrong.
I conclude my review by congratulating the author and Packt for a crash course on Meteor, especially when there aren’t many (any?) books on Meteor available out there. Highly recommended for people wanting to get started on real-time web app development!