Meteor is an exciting and different way to build web applications. The documentation at docs.meteor.com is difficult to beat in learning to get started, but for those needing to start now, just do this:

Install Meteor:

$ curl https://install.meteor.com | /bin/sh


Install the sample leaderboard application:

$ meteor create --example leaderboard


Then read this page, and try to make changes to the app as recommended toward the bottom of the article.

Note: It might be tempting to install meteor via npm, but resist the urge. Packages within the registry aren't supported, they are outdated, and none of the example apps are included. Another recommendation: use meteorite for managing versions of meteorite, and if you're in need of a package, check out atmosphere.

I made Click! Click! Click! after playing around with the leaderboard example application mentioned above; source at github.com/heath/click-click-click.

As an example of how simple Meteor development is, here's all of the server code:


if (Meteor.isServer) {                                                                                                                                                                                                             
  Meteor.methods({
    restartGame: function() { 
      Teams.remove({});
      for (var i = 0; i < teamNames.length; i++) { 
        Teams.insert({name: teamNames[i], score: 0, winner: false});
      } 
    } 
  });
 
  Meteor.startup(function () { 
    Meteor.call("restartGame");
  });
}

I defined just a single method for manipulating server-side data: restartGame. Anytime a new game starts, this method is used, including when starting an initial game. And really, that's all there is. No worrying about data synchronization, it just happens for free.

Playing with Meteor is definitely an eye-opening experience in just how pleasant app development can be for a developer, so grab some Kool-Aid and jump onboard the Meteor ship.

Since joining the company, Heath has been keen to compose systems emphasizing modularity and adherence to client specifications. Heath has used open source software for over ten years and enjoys functional programming along with its tools which encourage easy reasoning about application structure. On the rare occassion he is spotted away from Isotope11 headquarters, he is likely chatting away in Spanish, sailing atop the local bodies of water, or transcribing notes for his forthcoming book aimed at modern Javascript development.