Upgrade to Pro — share decks privately, control downloads, hide ads and more …

From Meteor To Maker

From Meteor To Maker

Quick intro to Meteor for a diverse audience at the Meteor NY Jan 2014 'reboot' event.

Nitya Narasimhan, PhD

January 15, 2014
Tweet

More Decks by Nitya Narasimhan, PhD

Other Decks in Programming

Transcript

  1. ROCK LEARN concepts Think DATA PAPER DESIGN applications Think REACTIVITY

    +   SCISSORS CRAFT experiences Think PERFORMANCE +   1/15/14 – METEOR NY MEETUP! 2!
  2. 1/15/14 – METEOR NY MEETUP! 3! ..  everything  should  work

     identically  on  browser  and  server  ..  
  3. 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  
  4. 1/15/14 – METEOR NY MEETUP! 6! SMART    SERVER  

    View   User  Interactions   3rd  Party  Interactions   Data  Cache   DUMB   CLIENT   Controller   Model     Model   App  Logic  +   All  Controllers   Database   +  CONNECTIVITY   Synchronous   Data  Transfers  
  5. 1/15/14 – METEOR NY MEETUP! 7! View   User  Interactions

      3rd  Party  Interactions   Data  Cache   Controller   Model     App  Logic  +   Model  Controller   Model   Database   WEB  APP    SERVER   SMART   CLIENT   +  PROCESSING   +  CONNECTIVITY   Asynchronous     Data  Transfers  
  6. 1/15/14 – METEOR NY MEETUP! 8! View   User  Interactions

      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  
  7. 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  
  8. ¡  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  
  9. ¡  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!
  10. 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!
  11. 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!
  12. ¡  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