Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... ·...

49
Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago 2013

Transcript of Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... ·...

Page 1: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Killing PhoneGapand moving beyond HTML5

@brianleroux GOTO Chicago 2013

Page 2: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

I <3 the web.

Page 3: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Problems Solved by Web Technologies•Many operating systems.

•Many devices.

•Distribution overall.

Page 4: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Problems remain.•Sandboxed.

•Performance is tricky.

•Offline is nightmarish.

•Device APIs!

•Tools.

• JavaScript. (Not all of it!!)

Page 5: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

PhoneGapPackage native apps with HTML, CSS, and

JavaScript.

Page 6: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

We give you a 100% width and height web browser for

your UI.

Page 7: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

We also pollute the global with AWESOME.

Page 8: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Logical units of dev activity.

•Apache Cordova

•Adobe PhoneGap

•Adobe PhoneGap/Build

Page 9: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

PhoneGap Goals

✦ Web as a first class development platform.

✦ Cease to exist.

Page 10: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

wait, wat?!

Page 11: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

The web as a first class development

Page 12: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Powerful API surface.

Runtime tooling.

Profiling, logging, instrumentation.

Modular and extensible.

Revenue models.Code security and runtime

permissions.

FAST.

Page 13: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

PhoneGap Core APIAccelerometer

•Camera•Capture•Compass•Connection•Contacts•Device and Events

•File•Geolocation•Globalization•Media•Notification•Splashscreen•Storage

Page 14: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Other stuff we do

•Open plugin API.

•Embeddable as a WebView.

•Security whitelisting.

•Command line tooling.

• In app browser.

Page 15: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Cease to exist?

Page 16: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Web standards.

Page 17: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

You probably think of PhoneGap as a handy way

to build apps.

But it is also a roadmap for a better web.

Page 18: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

PhoneGap apps are offline by default.

Page 19: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Accelerometer

http://dev.w3.org/geo/api/spec-source-orientation.html

Page 20: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Camera / Capture

http://dev.w3.org/2011/webrtc/editor/getusermedia.html

Page 21: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

http://goo.gl/91lBP

De radio astronomico et geometrico liber

 By Rainer Gemma Frisius

Page 22: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago
Page 23: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Connection

http://www.w3.org/TR/netinfo-api/

Page 24: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Contacts

Page 25: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Warning: not of the web!!

(Runtime introspection.)

device.namedevice.cordovadevice.platformdevice.uuiddevice.version

Page 26: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

devicereadypauseresumeonlineofflinebackbuttonbatterycriticalbatterylowbatterystatusmenubuttonsearchbuttonstartcallbuttonendcallbuttonvolumedownbuttonvolumeupbutton

Sweet, PhoneGap events!

Page 27: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

File API

Page 28: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Geolocation!!

Muahahah!

Page 29: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

http://en.wikipedia.org/wiki/Globalization

Page 30: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Audio, Video,and...

Page 31: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Notification

Page 32: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Splashscreen

Page 33: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Storage

Page 34: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Distribution?

Page 35: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Who is building hybrid apps

Page 36: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Google and Apple have the two most popular Hybrid applications...

Page 37: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Web Operating Systems

•Firefox OS

•Windows 8

•ChromeOS

•Tizen

•webOS

Hybrid, web, or native? All of the above.

Page 38: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Who is building hybrid apps

Page 39: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago
Page 40: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago
Page 41: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago
Page 42: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago
Page 43: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago
Page 44: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Who works on it?

AdobeIBMRIMNokia

MicrosoftGoogleIntelMozilla

Page 45: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Join us.

http://cordova.io

Page 46: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

How does it work anyhow?

Page 47: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Release Philosophy

Page 48: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

2013 Roadmap• Plugin packaging.

• Plugin install/remove.

• Plugin discovery.

• The ‘master script’.

• Ripple for default emulation.

• Core API audit, and migration.

• Notification Center.

• Native controls for pickers. (File, Contacts, Etc.)

Page 49: Killing PhoneGap - GOTO Conferencegotocon.com/dl/goto-chicago-2013/gotonightslides/brianle... · 2013-02-08 · Killing PhoneGap and moving beyond HTML5 @brianleroux GOTO Chicago

Thank you.

@brianleroux