Meteor

A platform for developing next gen web apps

Next gen web?

  • Single page browser apps
  • Live and reactive (no page reloads)
  • Latency compensated
  • More desktop app like UI's

Contemporary development model...

  • Backend with rest API (rails, node, sinatra etc)
  • Frontend JS app (angular, ember etc)

Is problematic...

  • Most epic violation of DRY ever
  • Unstability due to permutations and combinations
  • Context switching (two dev environments, languages etc)
  • Live & reactive tacked on (firebase etc)
  • Fragmented deployment scenario
  • Basically: No full stack solution
  • Rails blew our minds is because it solved everything!

Meteor to the rescue

  • Complete platform (backend/frontend/database)
  • Isomorphic JavaScript avoids duplication
  • Reactive and latency compencated by default
  • But wait, there's more...

Pushing state of development

"Meteor is ten times more productive than previous web frameworks like Rails and Django"

  • Built in user management
  • Joy and productivity of schemaless (mongodb)
  • Native package eco-system (atmosphere)
  • Bootstrap supported as a convention
  • Interactive console: Browser console
  • Package configuration: Browser UI's
  • Test autorunner: Browser UI (velocity)
  • Auto reload on updates (hot code push)
  • Built in deployment (meteor deploy)
  • Build iOS/Android apps on the fly

Demo

It's blog time again!

Conclusion...

The good

  • Awesome foundation
  • Already great package selection
  • Brings attention to UX rather than tech nerdery
  • The only next gen framework with developer happiness

The bad

  • Lack of built in code generation
  • Fuzzy conventions
  • Lack of ODM (though foundation is in place)

The ugly

  • Goodbye Ruby...

Resources...

General Learning

Discover Meteor
https://www.discovermeteor.com/
Find log in to full book in the mynewsdesk 1password vault


Official Docs
http://docs.meteor.com/


Evented Mind (screencasts)
https://www.eventedmind.com/


Meteor Help (aggregated news)
http://meteorhelp.com/

DDP (distributed data protocol)

Specification
http://git.io/V3AUoQ


Mongo Oplog Tailing
https://www.youtube.com/watch?v=_dzX_LEbZyI

Feeds to Follow

Meteor Blog
https://www.meteor.com/blog


Meteor YouTube (presentations etc)
https://www.youtube.com/user/MeteorVideos

Packages

iron:router
https://atmospherejs.com/iron/router
The official Meteor router.


aldeed:collection2
https://atmospherejs.com/aldeed/collection2
Adds schemas, validations and attribute management to Meteor collections.


aldeed:autoform
https://atmospherejs.com/aldeed/autoform
Use together with collection2 for form generation similar to SimpleForm.


Find more at...
https://atmospherejs.com

Thank You!


( ´ ▽ ` )ノ