86
Human APIs expanding the mobile web or are robots coming to JavaScript? Nikolai Onken uxebu Sunday, October 17, 2010

Human APIs - expanding the mobile web or are robots coming to JavaScript?

Embed Size (px)

DESCRIPTION

These are the slides of the talk I gave at webteccon 2010 in Mainz, Germany. Topic was how we can extend the browser

Citation preview

Page 1: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Human APIsexpanding the mobile web

or are robots coming to JavaScript?

Nikolai Onkenuxebu

Sunday, October 17, 2010

Page 2: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 3: Human APIs - expanding the mobile web or are robots coming to JavaScript?

@nonken

Sunday, October 17, 2010

Page 4: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 5: Human APIs - expanding the mobile web or are robots coming to JavaScript?

We open the mobile web.

Sunday, October 17, 2010

Page 6: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 7: Human APIs - expanding the mobile web or are robots coming to JavaScript?

JavaScript AJAX

CSS

dojoBrowser

OpenSourceWeb2.0

FrontEnd

Usability UserExperience

mobile

TouchScroll

Sunday, October 17, 2010

Page 8: Human APIs - expanding the mobile web or are robots coming to JavaScript?

http://news.bbc.co.uk/2/hi/technology/8552410.stm

Remember Risk?

Sunday, October 17, 2010

Page 9: Human APIs - expanding the mobile web or are robots coming to JavaScript?

http://news.bbc.co.uk/2/hi/technology/8552410.stm

Remember Risk?

Sunday, October 17, 2010

Page 10: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Dec, 20091,802 millions

26.6 %

Sunday, October 17, 2010

Page 11: Human APIs - expanding the mobile web or are robots coming to JavaScript?

The mobile web

Jan. 2008 Mar. 20100

5000000000

10000000000

15000000000

20000000000

AdMob Requests

Sunday, October 17, 2010

Page 12: Human APIs - expanding the mobile web or are robots coming to JavaScript?

The mobile web

Jan. 2008 Mar. 20100

5000000000

10000000000

15000000000

20000000000

AdMob Requests

Sunday, October 17, 2010

Page 13: Human APIs - expanding the mobile web or are robots coming to JavaScript?

The mobile web

Jan. 2008 Mar. 20100

5000000000

10000000000

15000000000

20000000000

AdMob Requests

Sunday, October 17, 2010

Page 14: Human APIs - expanding the mobile web or are robots coming to JavaScript?

The reality

• Internet is growing (fast)

•Mobile is growing (fast)

•Mobile internet is growing (fast!)

Sunday, October 17, 2010

Page 15: Human APIs - expanding the mobile web or are robots coming to JavaScript?

The browser is the central piece

Sunday, October 17, 2010

Page 16: Human APIs - expanding the mobile web or are robots coming to JavaScript?

The browser is the interface to the

internet

Sunday, October 17, 2010

Page 17: Human APIs - expanding the mobile web or are robots coming to JavaScript?

71% of all modern phones have a

browser

Tomi Ahonen

Sunday, October 17, 2010

Page 18: Human APIs - expanding the mobile web or are robots coming to JavaScript?

IPv6

2128

Sunday, October 17, 2010

Page 19: Human APIs - expanding the mobile web or are robots coming to JavaScript?

There will be a lot of things we should talk to :)

(using a browser)

Sunday, October 17, 2010

Page 20: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 21: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Is JavaScript good enough?

Sunday, October 17, 2010

Page 22: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Flash with JavaScript?

Sunday, October 17, 2010

Page 23: Human APIs - expanding the mobile web or are robots coming to JavaScript?

http://github.com/tobeytailor/gordon

Sunday, October 17, 2010

Page 24: Human APIs - expanding the mobile web or are robots coming to JavaScript?

HTML5 Appsor web apps as we know them

Sunday, October 17, 2010

Page 25: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 26: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 27: Human APIs - expanding the mobile web or are robots coming to JavaScript?

New HTML Elements

Sunday, October 17, 2010

Page 28: Human APIs - expanding the mobile web or are robots coming to JavaScript?

<input type="speech" grammar="grammar-nav-en.grxml" onchange="handleSpeechInput">

http://bit.ly/audio-api

Sunday, October 17, 2010

Page 29: Human APIs - expanding the mobile web or are robots coming to JavaScript?

High performance graphics

WebGL

Sunday, October 17, 2010

Page 30: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 31: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 32: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Media

Sunday, October 17, 2010

Page 33: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 34: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 35: Human APIs - expanding the mobile web or are robots coming to JavaScript?

What more do we need?

Sunday, October 17, 2010

Page 36: Human APIs - expanding the mobile web or are robots coming to JavaScript?

JavaScript HTTP

Sunday, October 17, 2010

Page 37: Human APIs - expanding the mobile web or are robots coming to JavaScript?

JavaScript HTTP

Accelerometer

Camera

...Sunday, October 17, 2010

Page 38: Human APIs - expanding the mobile web or are robots coming to JavaScript?

JavaScript HTTP

Accelerometer

Camera

...

Bluetooth

RFID

Sunday, October 17, 2010

Page 39: Human APIs - expanding the mobile web or are robots coming to JavaScript?

JavaScript

CSS

HTML

HTTP

Accelerometer

Camera

...

Bluetooth

RFID

Sunday, October 17, 2010

Page 40: Human APIs - expanding the mobile web or are robots coming to JavaScript?

JavaScript

CSS

HTML

HTTP

Accelerometer

Camera

...

Bluetooth

RFID

Sunday, October 17, 2010

Page 41: Human APIs - expanding the mobile web or are robots coming to JavaScript?

The Hype

Sunday, October 17, 2010

Page 42: Human APIs - expanding the mobile web or are robots coming to JavaScript?

o

The Hype

Sunday, October 17, 2010

Page 43: Human APIs - expanding the mobile web or are robots coming to JavaScript?

oThe cloud

The Hype

Sunday, October 17, 2010

Page 44: Human APIs - expanding the mobile web or are robots coming to JavaScript?

oThe cloud Location, etc.

The Hype

Sunday, October 17, 2010

Page 45: Human APIs - expanding the mobile web or are robots coming to JavaScript?

oThe cloud Location, etc.

The Potential

Sunday, October 17, 2010

Page 46: Human APIs - expanding the mobile web or are robots coming to JavaScript?

oThe cloud Location, etc.

Hardware

The Potential

Sunday, October 17, 2010

Page 47: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Use cases

Sunday, October 17, 2010

Page 48: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Transportation

Sunday, October 17, 2010

Page 49: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 50: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 51: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Home automation

Sunday, October 17, 2010

Page 52: Human APIs - expanding the mobile web or are robots coming to JavaScript?

http://digitalstrom.org

Sunday, October 17, 2010

Page 53: Human APIs - expanding the mobile web or are robots coming to JavaScript?

http://home-pad.com

Sunday, October 17, 2010

Page 54: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Health

Sunday, October 17, 2010

Page 55: Human APIs - expanding the mobile web or are robots coming to JavaScript?

3311 Health/Fitness Apps in Apple app store

Sunday, October 17, 2010

Page 56: Human APIs - expanding the mobile web or are robots coming to JavaScript?

HumanAPI

Sunday, October 17, 2010

Page 57: Human APIs - expanding the mobile web or are robots coming to JavaScript?

HumanAPI

Sunday, October 17, 2010

Page 58: Human APIs - expanding the mobile web or are robots coming to JavaScript?

How can we do this?

Sunday, October 17, 2010

Page 59: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Mobile SDKs

Sunday, October 17, 2010

Page 60: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Mobile SDKs

Objective-C

Sunday, October 17, 2010

Page 61: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Mobile SDKs

Objective-C Java

Sunday, October 17, 2010

Page 62: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Mobile SDKs

Objective-C Java ...

Sunday, October 17, 2010

Page 63: Human APIs - expanding the mobile web or are robots coming to JavaScript?

How the magic happens

Sunday, October 17, 2010

Page 64: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Low level APIs

Camera Accelerometer Push Notifications

How the magic happens

Sunday, October 17, 2010

Page 65: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Low level APIs

Camera Accelerometer Push Notifications

Chromeless Browser

How the magic happens

Sunday, October 17, 2010

Page 66: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Low level APIs

Camera Accelerometer Push Notifications

Chromeless Browser

How the magic happens

browserInstance.eval(“alert(1);”)

Sunday, October 17, 2010

Page 67: Human APIs - expanding the mobile web or are robots coming to JavaScript?

PhoneGap

Sunday, October 17, 2010

Page 68: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Low level APIs

Camera Accelerometer Push Notifications...

Chromeless Browser

PhoneGap

browser.eval(“document.geolocation...”)

Android, iPhone, iPad, Nokia S60, BlackberrySunday, October 17, 2010

Page 69: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Low level APIs

Camera Accelerometer Push Notifications...

Chromeless Browser

PhoneGap

browser.eval(“document.geolocation...”)

Android, iPhone, iPad, Nokia S60, BlackberrySunday, October 17, 2010

Page 70: Human APIs - expanding the mobile web or are robots coming to JavaScript?

mAppView.loadUrl("javascript:navigator.compass.setHeading(" + heading + ")");

Android

Sunday, October 17, 2010

Page 71: Human APIs - expanding the mobile web or are robots coming to JavaScript?

jsCallBack = [[NSString alloc] initWithFormat:@"navigator. accelerometer._onAccelUpdate(%f,%f,%f);", acceleration.x, acceleration.y, acceleration.z];

[webView stringByEvaluatingJavaScriptFromString:jsCallBack];

iPhone/iPad

Sunday, October 17, 2010

Page 72: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Lowlevel APIs

The browser

For things you can’t do in the browser (yet)

For anything else :)

Sunday, October 17, 2010

Page 73: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Enough talking, lets see some hardware

Sunday, October 17, 2010

Page 74: Human APIs - expanding the mobile web or are robots coming to JavaScript?

ArduinoJS

Sunday, October 17, 2010

Page 75: Human APIs - expanding the mobile web or are robots coming to JavaScript?

ArduinoJS Stack

• Arduino (http://arduino.cc/)

• Node-Serial (Chris Williams)

• Node

• Websockets (Socket.io)

http://github.com/nonken/arduinojs

Sunday, October 17, 2010

Page 76: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Node

ArduinoJS

Websockets

Arduino

Browser

Serial connection

Light Motors Robots

One

API

to

rule

the

m a

ll

Sunday, October 17, 2010

Page 77: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Node

ArduinoJS

Websockets

Arduino

Browser

Serial connection

Light Motors Robots

One

API

to

rule

the

m a

ll

Sunday, October 17, 2010

Page 78: Human APIs - expanding the mobile web or are robots coming to JavaScript?

available APIs

• digitalWrite(pin, val)

• digitalRead(pin, val)

• analogWrite(pin, val)

• analogRead(pin, val)

http://github.com/nonken/arduinojs

Sunday, October 17, 2010

Page 79: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Try it out

• 10.0.2.1:8888

Sunday, October 17, 2010

Page 80: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Sunday, October 17, 2010

Page 81: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Only the beginning

Sunday, October 17, 2010

Page 82: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Serverside JS

Sunday, October 17, 2010

Page 83: Human APIs - expanding the mobile web or are robots coming to JavaScript?

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

Sunday, October 17, 2010

Page 84: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Raphaël can do this!

Sunday, October 17, 2010

Page 85: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Getting started

•ArduinoJS - http://github.com/nonken/arduinojs

•PhoneGap - http://phonegap.com

•http://blog.uxebu.com

•http://www.humanapi.org

Sunday, October 17, 2010

Page 86: Human APIs - expanding the mobile web or are robots coming to JavaScript?

Thank you

@nonken

Sunday, October 17, 2010