SlideShare a Scribd company logo
1 of 20
Meteor.js
Michael Elfassy 
twitter: @michaelelfassy 
github: elfassy 
stackoverflow: montrealmike 
website: smashingboxes.com 
Durham, NC | San Francisco | Montreal
What’s Meteor.js? 
and where is the free pizza?
Meteor is an open-source full-stack 
javascript framework for building 
modern web and mobile applications
Really?
Yes! In fact you’ll build apps that: 
● are more responsive 
● have built-in collaboration 
● are more fun (and faster) to write 
● support hot code push 
● are easily compiled for multiple platforms
Demos! 
https://github.com/alanshaw/meteor-blackboard 
https://github.com/p4bloch/x3dom-meteor 
https://github.com/meteor/meteor/tree/devel/examples
How does it work? 
An can you justify those bold claims
7 principles of meteor 
● Data on the Wire 
● One Language 
● Database Everywhere 
● Latency Compensation 
● Full Stack Reactivity 
● Embrace the Ecosystem 
● Simplicity Equals Productivity
Apps feel responsive 
Latency compensation 
● Database everywhere 
● One language 
● Data on the wire (aka: Client side rendering) 
BONUS: 
No network 
compensation 
http://manning.com/hochhaus/Meteor_MEAP_CH01.pdf
Apps have built-in collaboration 
Full-stack reactivity 
● Livequery - Watch DB for changes 
● DDP - Send data back and forth to the client 
o replay cache 
o publish / subscribe 
● MiniMongo - store data and do database queries on the client 
● Tracker 
o recomputation is done automatically 
o view updates with no extra code 
● Blaze - rendering 
Read more about these components on meteor.com/projects
Database, Security, Business Logic, User interactions 
Rendering 
HTTP / HTML 
Database, Security, Business Logic Rendering, User interactions 
HTTP / XML (AJAX) 
DDP / JSON 
Rendering, User interactions, 
Security Business Logic, Database 
1995 
2005 
2014
Apps are more fun / faster to write 
● One language 
o share code between client and server (DRY) 
o Write less code 
● Embrace the ecosystem 
o Packager 
o http://atmospherejs.com 
● Simplicity (KISS) 
o all the components, not just a library to solve one problem 
o configuration-free minifier, deployer... 
o no need to write code to update the view 
o no need to write code to sync data
Apps auto-reload 
● Hot code push 
o don’t lose your user’s state 
o work even when adding new packages 
● Bypass Apple! 
o use wisely
Apps that are cross platform 
demo! 
> meteor run ios 
> meteor run android
Don’t be a dinosaur 
Your clients expect: 
● apps that feel native 
● collaborative apps 
● you to write these apps in days, 
not months
Questions? 
Join the community 
http://montreal.meteor.com
Learning resources 
● meteor.com/install 
● Discover Meteor Book 
o book.discovermeteor.com/starter 
● docs.meteor.com 
● stackoverflow 
● meteorpodcast.com 
● meteorpedia.com 
8 chapters 
free today 
only
Packages 
● mquandalle:jade 
● stylus 
● coffeescript 
● kaptron:minimongoid (ORM) 
● dburles:collection-helpers 
● underscore 
● reywood:publish-composite 
● mrt:moment 
● aldeed:collection2 
● accounts-ui, accounts-google, accounts-github, accounts-password 
● matb33:collection-hooks 
● iron:router

More Related Content

What's hot

Meteor presentation
Meteor presentationMeteor presentation
Meteor presentationNicu Gudumac
 
Build 2017 - B8011 - Bring your desktop apps to UWP and the Windows Store usi...
Build 2017 - B8011 - Bring your desktop apps to UWP and the Windows Store usi...Build 2017 - B8011 - Bring your desktop apps to UWP and the Windows Store usi...
Build 2017 - B8011 - Bring your desktop apps to UWP and the Windows Store usi...Windows Developer
 
TextEditor - Designing open source apps
TextEditor - Designing open source appsTextEditor - Designing open source apps
TextEditor - Designing open source appsRichard L Caceres
 
Write Once, Run Everywhere
Write Once, Run EverywhereWrite Once, Run Everywhere
Write Once, Run EverywhereMike North
 
Mikrofrontend a Module Federation
Mikrofrontend a Module FederationMikrofrontend a Module Federation
Mikrofrontend a Module FederationThe Software House
 

What's hot (7)

Meteor presentation
Meteor presentationMeteor presentation
Meteor presentation
 
Build 2017 - B8011 - Bring your desktop apps to UWP and the Windows Store usi...
Build 2017 - B8011 - Bring your desktop apps to UWP and the Windows Store usi...Build 2017 - B8011 - Bring your desktop apps to UWP and the Windows Store usi...
Build 2017 - B8011 - Bring your desktop apps to UWP and the Windows Store usi...
 
TextEditor - Designing open source apps
TextEditor - Designing open source appsTextEditor - Designing open source apps
TextEditor - Designing open source apps
 
Write Once, Run Everywhere
Write Once, Run EverywhereWrite Once, Run Everywhere
Write Once, Run Everywhere
 
Web Applications
Web ApplicationsWeb Applications
Web Applications
 
Mikrofrontend a Module Federation
Mikrofrontend a Module FederationMikrofrontend a Module Federation
Mikrofrontend a Module Federation
 
React Native.pptx (2)
React Native.pptx (2)React Native.pptx (2)
React Native.pptx (2)
 

Similar to Meteor

Serverless Computing with Google Cloud
Serverless Computing with Google CloudServerless Computing with Google Cloud
Serverless Computing with Google Cloudwesley chun
 
Serverless computing with Google Cloud
Serverless computing with Google CloudServerless computing with Google Cloud
Serverless computing with Google Cloudwesley chun
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building ProductsHayden Bleasel
 
Mobile development with Flutter
Mobile development with FlutterMobile development with Flutter
Mobile development with FlutterAwok
 
Top 11 Front-End Web Development Tools To Consider in 2020
 Top 11 Front-End Web Development Tools To Consider in 2020 Top 11 Front-End Web Development Tools To Consider in 2020
Top 11 Front-End Web Development Tools To Consider in 2020Katy Slemon
 
Get started with meteor | designveloper software agency meteor prime partner
Get started with meteor | designveloper software agency   meteor prime partnerGet started with meteor | designveloper software agency   meteor prime partner
Get started with meteor | designveloper software agency meteor prime partnerDesignveloper
 
Compatible Frontend and Backend Framework Pairings.pptx
Compatible Frontend and Backend Framework Pairings.pptxCompatible Frontend and Backend Framework Pairings.pptx
Compatible Frontend and Backend Framework Pairings.pptxKarim Monir
 
Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)VMware Tanzu
 
Cross-platform Desktop application with AngularJS and build with Node-webkit
Cross-platform Desktop application with AngularJS and build with Node-webkitCross-platform Desktop application with AngularJS and build with Node-webkit
Cross-platform Desktop application with AngularJS and build with Node-webkitWittawas Wisarnkanchana
 
How to use electron to build multi platform desktop applications
How to use electron to build multi platform desktop applications How to use electron to build multi platform desktop applications
How to use electron to build multi platform desktop applications Moon Technolabs Pvt. Ltd.
 
Software Developer's Journal - 02/2012
Software Developer's Journal - 02/2012Software Developer's Journal - 02/2012
Software Developer's Journal - 02/2012Ricardo Peres
 
Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2VMware Tanzu
 
Why You Should Use MERN Stack for Startup Apps?
Why You Should Use MERN Stack for Startup Apps?Why You Should Use MERN Stack for Startup Apps?
Why You Should Use MERN Stack for Startup Apps?Pixel Crayons
 
Hybridmobileapps 130130213844-phpapp02
Hybridmobileapps 130130213844-phpapp02Hybridmobileapps 130130213844-phpapp02
Hybridmobileapps 130130213844-phpapp02weeyee
 
Apache Flex and the imperfect Web
Apache Flex and the imperfect WebApache Flex and the imperfect Web
Apache Flex and the imperfect Webmasuland
 

Similar to Meteor (20)

Serverless Computing with Google Cloud
Serverless Computing with Google CloudServerless Computing with Google Cloud
Serverless Computing with Google Cloud
 
Serverless computing with Google Cloud
Serverless computing with Google CloudServerless computing with Google Cloud
Serverless computing with Google Cloud
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building Products
 
Mobile development with Flutter
Mobile development with FlutterMobile development with Flutter
Mobile development with Flutter
 
Top 11 Front-End Web Development Tools To Consider in 2020
 Top 11 Front-End Web Development Tools To Consider in 2020 Top 11 Front-End Web Development Tools To Consider in 2020
Top 11 Front-End Web Development Tools To Consider in 2020
 
Get started with meteor | designveloper software agency meteor prime partner
Get started with meteor | designveloper software agency   meteor prime partnerGet started with meteor | designveloper software agency   meteor prime partner
Get started with meteor | designveloper software agency meteor prime partner
 
Compatible Frontend and Backend Framework Pairings.pptx
Compatible Frontend and Backend Framework Pairings.pptxCompatible Frontend and Backend Framework Pairings.pptx
Compatible Frontend and Backend Framework Pairings.pptx
 
Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)
 
Cross-platform Desktop application with AngularJS and build with Node-webkit
Cross-platform Desktop application with AngularJS and build with Node-webkitCross-platform Desktop application with AngularJS and build with Node-webkit
Cross-platform Desktop application with AngularJS and build with Node-webkit
 
How to use electron to build multi platform desktop applications
How to use electron to build multi platform desktop applications How to use electron to build multi platform desktop applications
How to use electron to build multi platform desktop applications
 
Meteor for IT weekend
Meteor for IT weekendMeteor for IT weekend
Meteor for IT weekend
 
Meteor
MeteorMeteor
Meteor
 
Meteor
MeteorMeteor
Meteor
 
Software Developer's Journal - 02/2012
Software Developer's Journal - 02/2012Software Developer's Journal - 02/2012
Software Developer's Journal - 02/2012
 
Introduction to Node js
Introduction to Node jsIntroduction to Node js
Introduction to Node js
 
Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2
 
Why You Should Use MERN Stack for Startup Apps?
Why You Should Use MERN Stack for Startup Apps?Why You Should Use MERN Stack for Startup Apps?
Why You Should Use MERN Stack for Startup Apps?
 
Hybridmobileapps 130130213844-phpapp02
Hybridmobileapps 130130213844-phpapp02Hybridmobileapps 130130213844-phpapp02
Hybridmobileapps 130130213844-phpapp02
 
Apache Flex and the imperfect Web
Apache Flex and the imperfect WebApache Flex and the imperfect Web
Apache Flex and the imperfect Web
 
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJSMicro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
 

Meteor

  • 2. Michael Elfassy twitter: @michaelelfassy github: elfassy stackoverflow: montrealmike website: smashingboxes.com Durham, NC | San Francisco | Montreal
  • 3. What’s Meteor.js? and where is the free pizza?
  • 4. Meteor is an open-source full-stack javascript framework for building modern web and mobile applications
  • 6. Yes! In fact you’ll build apps that: ● are more responsive ● have built-in collaboration ● are more fun (and faster) to write ● support hot code push ● are easily compiled for multiple platforms
  • 8.
  • 9. How does it work? An can you justify those bold claims
  • 10. 7 principles of meteor ● Data on the Wire ● One Language ● Database Everywhere ● Latency Compensation ● Full Stack Reactivity ● Embrace the Ecosystem ● Simplicity Equals Productivity
  • 11. Apps feel responsive Latency compensation ● Database everywhere ● One language ● Data on the wire (aka: Client side rendering) BONUS: No network compensation http://manning.com/hochhaus/Meteor_MEAP_CH01.pdf
  • 12. Apps have built-in collaboration Full-stack reactivity ● Livequery - Watch DB for changes ● DDP - Send data back and forth to the client o replay cache o publish / subscribe ● MiniMongo - store data and do database queries on the client ● Tracker o recomputation is done automatically o view updates with no extra code ● Blaze - rendering Read more about these components on meteor.com/projects
  • 13. Database, Security, Business Logic, User interactions Rendering HTTP / HTML Database, Security, Business Logic Rendering, User interactions HTTP / XML (AJAX) DDP / JSON Rendering, User interactions, Security Business Logic, Database 1995 2005 2014
  • 14. Apps are more fun / faster to write ● One language o share code between client and server (DRY) o Write less code ● Embrace the ecosystem o Packager o http://atmospherejs.com ● Simplicity (KISS) o all the components, not just a library to solve one problem o configuration-free minifier, deployer... o no need to write code to update the view o no need to write code to sync data
  • 15. Apps auto-reload ● Hot code push o don’t lose your user’s state o work even when adding new packages ● Bypass Apple! o use wisely
  • 16. Apps that are cross platform demo! > meteor run ios > meteor run android
  • 17. Don’t be a dinosaur Your clients expect: ● apps that feel native ● collaborative apps ● you to write these apps in days, not months
  • 18. Questions? Join the community http://montreal.meteor.com
  • 19. Learning resources ● meteor.com/install ● Discover Meteor Book o book.discovermeteor.com/starter ● docs.meteor.com ● stackoverflow ● meteorpodcast.com ● meteorpedia.com 8 chapters free today only
  • 20. Packages ● mquandalle:jade ● stylus ● coffeescript ● kaptron:minimongoid (ORM) ● dburles:collection-helpers ● underscore ● reywood:publish-composite ● mrt:moment ● aldeed:collection2 ● accounts-ui, accounts-google, accounts-github, accounts-password ● matb33:collection-hooks ● iron:router

Editor's Notes

  1. My Notes