際際滷

際際滷Share a Scribd company logo
Reactive JavaScript all-in:
Jacek Migdal
2016-01-13, WarsawJS #17
Who Am I? The Cloud Juggler
Senior Software Engineer at
We do logs in cloud:
 supercharged grep | awk in the browser
 Google for your internal infrastructure
Meteor is my hobby. I dont use it at my day job.
Who knows Meteor?
Tl;dr: History of the Web
1970s Client-Server Model
1990s Web: Http, Html
2010s WebApps, Mobile
How did we get there? Humble beginning.
 Initial web: text with links
 JavaScript: created in 10 days
 Lots of tricks:
AJAX, Long polling, ...
How did we get there? Natural selection.
Java applets vs. JavaScript
XHTML vs. HTML5
Flash vs. Open standards
Browser wars
How did we get get there? Lots of money put in.
Dotcom boom (1990s), lots of
multibillion companies based
on web (e.g. Google, Facebook).
JavaScript is the fastest
dynamic language.
Browsers are like OS.
Can we learn to fly by jumping higher?
Evolution created humans.
Humans created cars,
planes, nuclear weapons,
space rockets...
What would be the ideal web framework?
Full-stack JavaScript.
All platforms: browsers and mobile.
Reactive by default.
Makes developers 10x productive.
Websites are applications.
Meteor demo
$ curl https://install.meteor.com/ | sh
$ meteor create warsawjs-chat
https://gist.github.com/jakozaur/4537dd9add12697228c6
https://gist.github.com/jakozaur/d20c1bdffcb2308eed61
Meteor: under the hood
Built on top of Node.js
Distributed database: publish-
subscribe
Templating (also supports Angular
and React)
Package system (also supports Npm)
Node.js +
MongoDB
Chrome Safari
Meteor: other features
Hot code reload
Optimistic UI
Native Mobile
EcmaScript 2015
Modular
Meteor: complete solution for connected apps
Django, Rails, etc. -> server frameworks
React, Angular -> client templating and components
Node.js -> JavaScript event based server
Meteor: why now?
Connected devices are
powerful.
Consumer applications sets a
high bar (e.g. Facebook, Uber).
We are expected to get a lot of
done with less time (see
software salaries).
Built your next app in Meteor
1. Visit https://www.meteor.com/
2. $ curl https://install.meteor.com/ | sh
3. Create something!
Questions?
jacek@migdal.pl
One more thing:
one day workshop. Anyone?
jacek@migdal.pl
Image sources
https://en.wikipedia.org/wiki/File:DEC_VT100_terminal.jpg
https://en.wikipedia.org/wiki/Layette#/media/File:Baby_in_an_infant_bodysuit.jpg
https://upload.wikimedia.org/wikipedia/commons/thumb/f/f3/Mutation_and_selection_diagram.svg/2000px-
Mutation_and_selection_diagram.svg.png
https://commons.wikimedia.org/wiki/File:Money_Cash.jpg
https://upload.wikimedia.org/wikipedia/commons/c/cb/Matti_Nykasen_maki_in_Jyvaskyla_2007-06-14.jpg
https://en.wikipedia.org/wiki/Holy_Grail#/media/File:Caliz_de_Donna-Urraca.jpg
https://en.wikipedia.org/wiki/File:Freedom-Class_Comparison.jpg
https://www.flickr.com/photos/111692634@N04/16388916661
https://www.flickr.com/photos/83532250@N06/7650738842

More Related Content

WarsawJS #17: Reactive JavaScript all-in: Meteor