For new developers who want to achieve a lot quickly, Meteor is an awesome choice. My experience with Meteor as a framework leads me to believe that it is:

  • Efficient – learn a bit, achieve a lot
  • Worthwhile – the skills are transferable
  • Intuitive – the concepts appeal to our common sense
  • Flexible – many different solutions including mobile apps

I managed to sell Meteor as a good developer framework when I was interviewing for a volunteer teacher at MEST, a startup school based in Ghana and will be teaching it to complete beginners from January 15th.

Super easy to install

This cannot be overstated. Beginner programmers are often afraid of the command line and simply give up when they find that a step doesn’t work. The fact that it’s just a one line means that as many as possible get an instance running.

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

Ok, you still need to install Node, but that’s getting increasingly easy as on both Mac and Linux. I haven’t run Meteor on Windows before, but my advice would be don’t use Windows. Seriously.

Full stack

Linking up the various moving parts is something that also puts off a lot of beginners who haven’t yet settled into a preferred. Meteor sets up your database, templates, stylesheets and logic such that they work flawlessly. It also has great support for coffeescript and less and the like.

meteor add coffeescript

You only need one language

If we assume that a beginner hasn’t yet mastered a single language, we are reducing their workload and letting them reuse their limited knowledge as much as possible.

//Client
if Meteor.isClient
  console.log 'What did the client say to the server?'

//Server
if Meteor.isServer
  console.log 'I dunno'

//Both 
console.log 'Maybe you should give him a callbacK?'

That language is Javascript

Javascript is an easy language for beginners. It’s fast, flexible and relatively forgiving.

Also, it’s incredibly widely used. This means that even if a programmer moves on from Meteor, they’ve gained some truly valuable knowledge.

Smaller code base

Meteor makes it easy to perform a range of tasks. By easy, I mean it can be achieved with a small amount of code. This is good for a beginner as it minimises bugs and maximises clarity. With Meteor, every line seems necessary. Other frameworks often have you pasting bits of code you don’t understand.

One tool to rule them all

Instead of using a combination of tools, the meteor tool lets you create, run and deploy your app.

meteor create myapp
cd myapp
meteor

Awesome community

The community is actively growing itself by providing learning resources. The Meteor website provides a brief list of learning resources. A list of Meteor learning resources can also be found on this site.

Generally it’s pretty easy to find the answer to your question. Googling often returns a StackOverflow question or a writeup on a blog. When you can’t find what you’re looking for, post a question in the Google group, Meteor talk and you’ll usually get a response within a day.

Deploying is simple

Deploying can often be a nightmare for new developers who are terrified by servers, Apache and the like. Meteor makes it extremely easy to stage.

meteor deploy myapp.meteor.com

Gives you a working copy of your app at http://myapp.meteor.com.

If you wan to deploy on another server, Meteor Up makes it very easy and Modulus is another great solution.

A package for everything

Pre-built solutions are a lifesaver for newbies. AtmosphereJS is the friendly interface where you can search for packages that do almost anything from adding an admin dashboard to push notifications for mobile.

How do I learn Meteor?

Complete beginners

Next steps