Slide 1

Slide 1 text

Rapid Prototyping with MeteorJS Out of the box solutions for real-time data applications

Slide 2

Slide 2 text

Want to be a beta user?

Slide 3

Slide 3 text

www.presentr.io Enter Code: Meteor

Slide 4

Slide 4 text

Adam Smith Developer at Wide Open Technologies Asheville, NC @acodesmith

Slide 5

Slide 5 text

What is a prototype? “A prototype is an early sample, model, or release of a product built to test a concept or process or to act as a thing to be replicated or learned from.”
 -wikipedia @acodesmith | @wideopentech #ConvergeSE | #meteorjs

Slide 6

Slide 6 text

Why Trust/Use Meteor? • Over two years of open source development • MIT License • $11mm in VC funding • Single Language • Integrated Package System
 (like the npm) • Hosted Development Environment @acodesmith | @wideopentech #ConvergeSE | #meteorjs

Slide 7

Slide 7 text

“Build apps that are a delight to use, faster than you ever thought possible” -meteor.com @acodesmith | @wideopentech #ConvergeSE | #meteorjs

Slide 8

Slide 8 text

• Modern user interface • Use of templates to create a reactive seamless user experience. • Radically less code • Data binding is out of the box. You don’t write glue code. You declare and it just works. • Browser and Mobile • Command line interface to install mobile SDKs and emulation. • One language everywhere • isomorphic packages which can be used on the client of the browser. @acodesmith | @wideopentech #ConvergeSE | #meteorjs

Slide 9

Slide 9 text

• Live updates • You don’t refresh! OMG! • Unified package system • atmospherejs.com - It’s like npm but for meteor ready packages. • Ultra responsive • Super fast interactions with fast results. 
 (not responsive design) • Hot deploys • Say what?! You can deploy hotfixes to live apps without disturbing the user’s session! Yes it works on installed apps as well. @acodesmith | @wideopentech #ConvergeSE | #meteorjs

Slide 10

Slide 10 text

Things to consider before jumping in… • Have you ever worked with javascript on the server? • Have you ever worked with MongoDB? • Where will the final project be hosted? • What browsers will you have to support? 
 IE6+ and well…everything else. @acodesmith | @wideopentech #ConvergeSE | #meteorjs

Slide 11

Slide 11 text

Templates in Meteor helpers Template.home.helpers({
 product_count: Products.count({ sold: { $ne: true } });
 }); events Template.home.events({
 “click #login”: function(){ }
 }); rendered Template.home.rendered = function(){
 //update ui? } @acodesmith | @wideopentech #ConvergeSE | #meteorjs

Slide 12

Slide 12 text

Templates in Meteor @acodesmith | @wideopentech #ConvergeSE | #meteorjs

Slide 13

Slide 13 text

Models in Meteor @acodesmith | @wideopentech #ConvergeSE | #meteorjs

Slide 14

Slide 14 text

Meteor Sessions @acodesmith | @wideopentech #ConvergeSE | #meteorjs “If you call Session.get("currentList") from inside a template, the template will automatically be rerendered whenever Session.set("currentList", x) is called.” -Meteor Docs

Slide 15

Slide 15 text

LIVE CODE DEMO! @acodesmith | @wideopentech #ConvergeSE | #meteorjs