From 'Meteor' to 'Maker'
-
Upload
nitya-narasimhan -
Category
Technology
-
view
1.135 -
download
0
description
Transcript of From 'Meteor' to 'Maker'
From ‘Meteor’ to ‘Maker’
Meteor NY Meetup | January 15, 2014 | Nitya Narasimhan!
ROCK
LEARN concepts
Think DATA
PAPER
DESIGN applications
Think
REACTIVITY
+
SCISSORS
CRAFT experiences
Think
PERFORMANCE
+
1/15/14 – METEOR NY MEETUP! 2!
1/15/14 – METEOR NY MEETUP! 3!
.. everything should work identically on browser and server ..
1/15/14 – METEOR NY MEETUP! 4!
Meteor Core Packages
Meteor Optional Packages
Meteor Optional Hosting
Atmosphere Smart Packages
Meteorite Command Line Tools
CODE IT
BUNDLE IT
DEPLOY IT Heroku Buildpack
Meteor Command Line Tools
1/15/14 – METEOR NY MEETUP! 5!
1/15/14 – METEOR NY MEETUP! 6!
SMART SERVER
View
User Interac
tions
3rd Party Interactions
Data Cache
DUMB CLIENT
Controller
Model Model
App Logic + All Controllers
Database + CONNECTIVITY
Synchronous Data Transfers
1/15/14 – METEOR NY MEETUP! 7!
View
User Interac
tions
3rd Party Interactions
Data Cache
Controller
Model
App Logic + Model Controller
Model
Database
WEB APP SERVER
SMART CLIENT
+ PROCESSING
+ CONNECTIVITY
Asynchronous Data Transfers
1/15/14 – METEOR NY MEETUP! 8!
View
User Interac
tions
3rd Party Interactions
Data Cache
Controller
Model + Sync
App Logic
Database
Model + Sync
Privileged or Protected operations
WEB APP SERVER
METEOR CLIENT
+ LOCAL STORAGE
DDP
+ PROCESSING
+ CONNECTIVITY
Reactive Data Transfers
SMART DB
1/15/14 – METEOR NY MEETUP! 9!
Handlebars
Local Storage
JavaScript
Mini Mongo
JavaScript
Mongo DB
Mongo DDP
(Transparent Publications, Subscriptions, Observes)
HTTP (Explicit Method calls)
Some changes in METEOR 1.0
METEOR CLIENT
ATMOSPHERE
NPM NODE JS RUNTIME
METEOR SERVER
Mongo DB
¡ Data on the wire. Client handles views."¡ One language. JavaScript everywhere."¡ Database everywhere. Consistent usage."¡ Latency compensation. Zero latency.*"¡ Full Stack reactivity. Real-time as default."¡ Embrace the ecosystem. Interoperable."¡ Simplicity Equals Productivity. Clean APIs"
1/15/14 – METEOR NY MEETUP! 10!
http://docs.meteor.com/#sevenprinciples
https://www.meteor.com/examples/wordplay
Creations
Meteor NY Meetup | January 15, 2014 | Nitya Narasimhan!
1/15/14 – METEOR NY MEETUP! 13!
‘ACTIVE’ DOGFOODING http://atmosphere.meteor.com
1/15/14 – METEOR NY MEETUP! 14!
MULTIPLAYER GAMES http://wordplay.meteor.com
1/15/14 – METEOR NY MEETUP! 15!
REAL-‐TIME + CRITICAL http://www.sharewith911.com/
1/15/14 – METEOR NY MEETUP! 16!
RICH MAP INTEGRATION http://leaflet.meteor.com/
1/15/14 – METEOR NY MEETUP! 17!
MEDIA ANNOTATION http://subtitles.fiddleware.com/
1/15/14 – METEOR NY MEETUP! 18!
EMOTIVE IMAGERY http://ilovesf.meteor.com
1/15/14 – METEOR NY MEETUP! 19!
HACKER NEWS REDUX http://telescope.meteor.com/
1/15/14 – METEOR NY MEETUP! 20!
CIVIC VISUALIZATION http://illustreets.co.uk/
1/15/14 – METEOR NY MEETUP! 21!
REAL TIME TRANSIT http://livebus.meteor.com/
1/15/14 – METEOR NY MEETUP! 22!
VIDEO SHARING http://streem.io
1/15/14 – METEOR NY MEETUP! 23!
BULLETIN BOARDS http://madewithmeteor.com
1/15/14 – METEOR NY MEETUP! 24!
RAPID PROTOTYPING* http://sevakalt.meteor.com
Concepts
Meteor NY Meetup | January 15, 2014 | Nitya Narasimhan!
¡ Structure (/client /server /lib depth-first)"¡ Templates (views, helpers, handlers)"¡ Reactivity (contexts & computations)"¡ Accounts (custom & social auth.)"¡ Packages (core + official + 3rd party)"¡ Security (data vs. code)"¡ Extensibility (community, smart packages)"¡ Deployment (run vs. bundle vs. deploy) "
1/15/14 – METEOR NY MEETUP! 26!
1/15/14 – METEOR NY MEETUP! 27!
Demo at break..
DESIGN YOUR DATA MODEL (Collections, Indexes)
DESIGN YOUR INTERFACES (Templates, Layouts)
DESIGN YOUR INTERACTIONS (Helpers, Handlers, Routes)
CRAFT YOUR DATA USAGE (Publish/Subscribe, Filter)
CRAFT YOUR TEMPLATE USAGE* (Breakup, Reuse, Isolate)
CRAFT YOUR REACTIVITY (Session, Computations, Observes)
WIRE THINGS TOGETHER (Packages, Directory Structure)
Demo at break..
1/15/14 – METEOR NY MEETUP! 28!
Simplicity (Build & Deploy)
Reactivity (Event Driven)
Interoperability (via DDP)
Community (smart packages)
Maturity (changing, not yet v1.0.)
Scalability* (need for patterns)
Consistency* (legacy creep)
Testability (but wait for it..)
* “With great power comes great responsibility”
1/15/14 – METEOR NY MEETUP! 29!
Trello (Jan 14, 2014)
1/15/14 – METEOR NY MEETUP! 30!
¡ Walks through concepts in context of real application"
¡ Extensive ‘support’ material (ar4cles, screencasts)
¡ Meteor NY Promo4on Link (Code = ORIONIDS)
1/15/14 – METEOR NY MEETUP! 31!
http://discovermeteror.com
1/15/14 – METEOR NY MEETUP! 32!
http://eventedmind.com
1/15/14 – METEOR NY MEETUP! 33!
http://meteorhacks.com
1/15/14 – METEOR NY MEETUP! 34!
http://www.youtube.com/user/meteorvideos
Save the Date
1/15/14 – METEOR NY MEETUP! 35!
http://yauh.de/articles/376/best-‐learning-‐resources-‐for-‐meteorjs
General Resources Code Tutorials Code Examples Testing
Ready For Production