WarsawJS #17: Reactive JavaScript all-in: Meteor

Post on 14-Apr-2017

242 views 0 download

Transcript of WarsawJS #17: Reactive JavaScript all-in: Meteor

Reactive JavaScript all-in:

Jacek Migdal 2016-01-13, WarsawJS #17

Who Am I? The Cloud JugglerSenior Software Engineer at

We do logs in cloud:

● supercharged grep | awk in the browser● Google for your internal infrastructure

Meteor is my hobby. I don’t use it at my day job.

Who knows Meteor?

Tl;dr: History of the Web1970s 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

Meteor: under the hoodBuilt 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 featuresHot code reload

Optimistic UI

Native Mobile

EcmaScript 2015

Modular

Meteor: complete solution for connected appsDjango, 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 Meteor1. Visit https://www.meteor.com/2. $ curl https://install.meteor.com/ | sh3. Create something!

Questions?

jacek@migdal.pl

One more thing:one day workshop. Anyone?

jacek@migdal.pl

Image sourceshttps://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