human apis, the future of mobile
Post on 28-Jan-2015
107 Views
Preview:
DESCRIPTION
TRANSCRIPT
Human APIsexpanding the mobile web
SWDC - June 3rd 2010
Nikolai Onkenuxebu
Thursday, June 3, 2010
Thursday, June 3, 2010
We open the mobile web.
Thursday, June 3, 2010
Thursday, June 3, 2010
Thursday, June 3, 2010
JavaScript AJAX
CSS
dojoBrowser
OpenSourceWeb2.0
FrontEnd
Usability UserExperience
mobile
TouchScroll
Thursday, June 3, 2010
http://news.bbc.co.uk/2/hi/technology/8552410.stm
Remember Risk?
Thursday, June 3, 2010
http://news.bbc.co.uk/2/hi/technology/8552410.stm
Remember Risk?
Thursday, June 3, 2010
Dec, 20091,802 millions
26.6 %
Thursday, June 3, 2010
The mobile web
Jan. 2008 Mar. 20100
5000000000
10000000000
15000000000
20000000000
AdMob Requests
Thursday, June 3, 2010
The mobile web
Jan. 2008 Mar. 20100
5000000000
10000000000
15000000000
20000000000
AdMob Requests
Thursday, June 3, 2010
The mobile web
Jan. 2008 Mar. 20100
5000000000
10000000000
15000000000
20000000000
AdMob Requests
Thursday, June 3, 2010
The reality
• Internet is growing (fast)
•Mobile is growing (fast)
•Mobile internet is growing (fast!)
Thursday, June 3, 2010
The browser is the central piece
Thursday, June 3, 2010
The browser is the interface to the
internet
Thursday, June 3, 2010
71% of all modern phones have a
browser
Tomi Ahonen
Thursday, June 3, 2010
IPv6
2128
Thursday, June 3, 2010
There will be a lot of things we can talk to :)
(using a browser)
Thursday, June 3, 2010
Thursday, June 3, 2010
Is JavaScript good enough?
Thursday, June 3, 2010
Flash with JavaScript?
Thursday, June 3, 2010
http://github.com/tobeytailor/gordon
Thursday, June 3, 2010
HTML5 Appsor web apps as we know them
Thursday, June 3, 2010
Thursday, June 3, 2010
Thursday, June 3, 2010
New HTML Elements
Thursday, June 3, 2010
<input type="speech" grammar="grammar-nav-en.grxml" onchange="handleSpeechInput">
http://bit.ly/audio-api
Thursday, June 3, 2010
High performance graphics
WebGL
Thursday, June 3, 2010
Thursday, June 3, 2010
Thursday, June 3, 2010
Media
Thursday, June 3, 2010
Thursday, June 3, 2010
Thursday, June 3, 2010
Thursday, June 3, 2010
JavaScript HTTP
Thursday, June 3, 2010
JavaScript HTTP
Accelerometer
Camera
...Thursday, June 3, 2010
JavaScript HTTP
Accelerometer
Camera
...
Bluetooth
RFID
Thursday, June 3, 2010
JavaScript
CSS
HTML
HTTP
Accelerometer
Camera
...
Bluetooth
RFID
Thursday, June 3, 2010
JavaScript
CSS
HTML
HTTP
Accelerometer
Camera
...
Bluetooth
RFID
Thursday, June 3, 2010
The Hype
Thursday, June 3, 2010
o
The Hype
Thursday, June 3, 2010
oThe cloud
The Hype
Thursday, June 3, 2010
oThe cloud Location, etc.
The Hype
Thursday, June 3, 2010
oThe cloud Location, etc.
The Potential
Thursday, June 3, 2010
oThe cloud Location, etc.
Hardware
The Potential
Thursday, June 3, 2010
Use cases
Thursday, June 3, 2010
Transportation
Thursday, June 3, 2010
Thursday, June 3, 2010
Thursday, June 3, 2010
Health
Thursday, June 3, 2010
3311 Health/Fitness Apps in Apple app store
Thursday, June 3, 2010
HumanAPI
Thursday, June 3, 2010
HumanAPI
Thursday, June 3, 2010
Home automation
Thursday, June 3, 2010
How can we do this?
Thursday, June 3, 2010
Mobile SDKs
Thursday, June 3, 2010
Mobile SDKs
Objective-C
Thursday, June 3, 2010
Mobile SDKs
Objective-C Java
Thursday, June 3, 2010
Mobile SDKs
Objective-C Java ...
Thursday, June 3, 2010
How the magic happens
Thursday, June 3, 2010
Low level APIs
Camera Accelerometer Push Notifications
How the magic happens
Thursday, June 3, 2010
Low level APIs
Camera Accelerometer Push Notifications
Chromeless Browser
How the magic happens
Thursday, June 3, 2010
Low level APIs
Camera Accelerometer Push Notifications
Chromeless Browser
How the magic happens
browser.eval(“alert(1);”)
Thursday, June 3, 2010
PhoneGap
Thursday, June 3, 2010
Low level APIs
Camera Accelerometer Push Notifications...
Chromeless Browser
PhoneGap
browser.eval(“document.geolocation...”)
Android, iPhone, iPad, Nokia S60, BlackberryThursday, June 3, 2010
Low level APIs
Camera Accelerometer Push Notifications...
Chromeless Browser
PhoneGap
browser.eval(“document.geolocation...”)
Android, iPhone, iPad, Nokia S60, BlackberryThursday, June 3, 2010
mAppView.loadUrl("javascript:navigator.compass.setHeading(" + heading + ")");
Android
Thursday, June 3, 2010
jsCallBack = [[NSString alloc] initWithFormat:@"navigator. accelerometer._onAccelUpdate(%f,%f,%f);", acceleration.x, acceleration.y, acceleration.z];
[webView stringByEvaluatingJavaScriptFromString:jsCallBack];
iPhone/iPad
Thursday, June 3, 2010
Example
Thursday, June 3, 2010
Thursday, June 3, 2010
Lowlevel APIs
The browser
For things you can’t do in the browser (yet)
For anything else :)
Thursday, June 3, 2010
Check this out
Thursday, June 3, 2010
Serverside JS
Thursday, June 3, 2010
http://groups.google.com/group/nodejs/browse_thread/thread/ee11c077e5f89f7a?hl=en
$(".living-room").delegate(".motion-sensor", "onmotion", function(){ $(".living-room .lights").css("intensity", 0.75) });
Your house == DOM
Thursday, June 3, 2010
Air Quality in Beijing via Twitter:
https://twitter.com/beijingair
Thursday, June 3, 2010
Challenge
Thursday, June 3, 2010
Raphaël could do this!
Thursday, June 3, 2010
Getting started
•PhoneGap - http://phonegap.com
•http://blog.uxebu.com
•http://www.humanapi.org
Thursday, June 3, 2010
Questions?
@nonken
Thursday, June 3, 2010
top related