ajax on mobile phones: accelerating key features,

33
Ajax on Mobile Phones: Accelerating Key Features, Minimizing Fragmentation Jon Ferraiolo IBM and OpenAjax Alliance November 5, 2008

Upload: sampetruda

Post on 18-May-2015

1.027 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones:Accelerating Key Features,Minimizing Fragmentation

Jon FerraioloIBM and OpenAjax AllianceNovember 5, 2008

Page 2: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 2

Agenda

Mobile Web Runtime – The Vision

Mobile Web Runtime – Today’s Reality

Mobile Device APIs

Mobile Ajax Ready

Mobile Web Runtime – The Vision

Mobile Web Runtime – Today’s Reality

Mobile Device APIs

Mobile Ajax Ready

Page 3: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 3

Mobile Web – the new frontier

Most humans will have a Web-connected phone Mobile Web will overshadow the desktop Web

Changes the game Constraints (small screen, battery, keypad,

etc.) Opportunities (GPS, voice, camera, …) Increased importance of “widgets”

Most humans will have a Web-connected phone Mobile Web will overshadow the desktop Web

Changes the game Constraints (small screen, battery, keypad,

etc.) Opportunities (GPS, voice, camera, …) Increased importance of “widgets”

Page 4: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 4

Winning Technologies not yet established

Open Web has good momentum on mobile But major players are making large investments in

Flash, Silverlight, J2ME, Dalvik, Cocoa, …

Community is likely to make platform decisions in next 1-3 years Followed by inertia

Threats to Open Web on Mobile Fragmentation

• Mobile Web development and testing cost might skyrocket Slow adoption of key features

• Innovative mobile apps will require new features, such as Mobile Device APIs, video, vector graphics, and offline

Open Web has good momentum on mobile But major players are making large investments in

Flash, Silverlight, J2ME, Dalvik, Cocoa, …

Community is likely to make platform decisions in next 1-3 years Followed by inertia

Threats to Open Web on Mobile Fragmentation

• Mobile Web development and testing cost might skyrocket Slow adoption of key features

• Innovative mobile apps will require new features, such as Mobile Device APIs, video, vector graphics, and offline

Page 5: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 5

BrowserJavaScript

CSSxHTML SVG

What do we mean by a Web Runtime?

Hardware

H/W abstraction layer (HAL)

Middleware

UI toolkit Application APIs

Kernele.g., Symbian

e.g., S60

Rich UI

Scripting

Web

ResponsivenessWeb Runtime

JavaScript

CSSxHTML SVG

Browser

Evolve the browser as a new Web Runtime for hosting mobile apps and services

Mobile browsers today…Web app Widget

Embracing “Ajax”: HTML, JavaScript, CSS, DOM

But evolving the Web beyond the browser:

Widgets & other device-resident applications (alternative to J2ME)

Page 6: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 6

The Web Runtime

Why? Open formats (not controlled by a single

vendor) Open source options (WebKit and Mozilla) Acceptable to all vendors (Web capabilities

becoming a hygiene factor across all devices) Huge pool of developers, tools, existing sites

and low entry barriers to get started developing for mobile

Why? Open formats (not controlled by a single

vendor) Open source options (WebKit and Mozilla) Acceptable to all vendors (Web capabilities

becoming a hygiene factor across all devices) Huge pool of developers, tools, existing sites

and low entry barriers to get started developing for mobile

Page 7: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 7

Enhancing the Web Runtime with device APIs

Terminal functionality &

user data

Web information

Web app

Adds context Enables mashups

Device APIs:

• File system access to pictures, music & video clips

• PIM data (contacts, calendar)

• Messaging (SMS, MMS, email)

• Call handling

• System data (battery, coverage, roaming, location)

• Camera (get new picture)

Page 8: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 8

Agenda

Mobile Web Runtime – the Vision

Mobile Web Runtime – Today’s Reality

Mobile Device APIs

Mobile Ajax Ready

Mobile Web Runtime – the Vision

Mobile Web Runtime – Today’s Reality

Mobile Device APIs

Mobile Ajax Ready

Page 9: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 9

Before the iPhone

Until recently, only smart phones could really browse the Web, and usually not very well: Smart phones: NETFront, OpenWave, Obigo, Opera Volume phones: WAP, cHTML, XHTML-Basic, … Result: mobile browsers didn’t get much usage

iPhone - the tipping point Able to interact with entire Web Fixed-rate data plan Acceptable performance (network & rendering) Result: lots of real usage (50x versus other phones)

Until recently, only smart phones could really browse the Web, and usually not very well: Smart phones: NETFront, OpenWave, Obigo, Opera Volume phones: WAP, cHTML, XHTML-Basic, … Result: mobile browsers didn’t get much usage

iPhone - the tipping point Able to interact with entire Web Fixed-rate data plan Acceptable performance (network & rendering) Result: lots of real usage (50x versus other phones)

Page 10: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 10

iPhone Take Advantage of Inflexion Points

Moore’s Law for mobile phones Mobile CPUs are faster, memory is cheaper

Mobile networks are now fast enough 3G is rolling out, HSPA will be even faster

Touch screens Nearly all of the phone area can be used for

rendering

Also, Apple took care of key details Fixed-rate data plan, great UI, good reliability,

Moore’s Law for mobile phones Mobile CPUs are faster, memory is cheaper

Mobile networks are now fast enough 3G is rolling out, HSPA will be even faster

Touch screens Nearly all of the phone area can be used for

rendering

Also, Apple took care of key details Fixed-rate data plan, great UI, good reliability,

Page 11: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 11

Other phones are catching up

WebKit open source browser Google Android (HTC Dream and many others) Nokia Series 60 (and likely Series 40 in future) WebKit announcements from Motorola and Samsung

Mozilla Fennec A second open source option

Opera The “grand old man” of bringing desktop browsing to

mobile Motorola, Nintendo, Sony/Ericsson, Samsung, …

Internet Explorer Mobile 7.0 In 2009

WebKit open source browser Google Android (HTC Dream and many others) Nokia Series 60 (and likely Series 40 in future) WebKit announcements from Motorola and Samsung

Mozilla Fennec A second open source option

Opera The “grand old man” of bringing desktop browsing to

mobile Motorola, Nintendo, Sony/Ericsson, Samsung, …

Internet Explorer Mobile 7.0 In 2009

Page 12: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 12

Mobile Web Developer Issues

Mobile Ajax constraints and opportunities Constraints: screen size, keypad, CPU,

memory, bandwidth, etc. Opportunities: Portability, GPS, camera,

messaging, voice, etc.

Browser fragmentation (see next slides)

Mobile Ajax constraints and opportunities Constraints: screen size, keypad, CPU,

memory, bandwidth, etc. Opportunities: Portability, GPS, camera,

messaging, voice, etc.

Browser fragmentation (see next slides)

Page 13: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 13

Desktop Web vs Mobile Web

Desktop Web – minor fragmentation 4 primary browsers: IE, FF, Safari, Chrome Ajax developers complain about the cost and difficulty

of developing and testing against multiple browsers• IE6/7/8, FF2/3, Safari 2/3, Chrome, Opera

Ajax libraries help a lot• But browser-specific problems still crop up

Mobile Web – greater fragmentation Other browsers: Opera, IE Mobile, Netfront, RIM, … WebKit variations

• Different branches ship on different phones• Different memory and performance characteristics

Device/network differences (next slide slide)

Desktop Web – minor fragmentation 4 primary browsers: IE, FF, Safari, Chrome Ajax developers complain about the cost and difficulty

of developing and testing against multiple browsers• IE6/7/8, FF2/3, Safari 2/3, Chrome, Opera

Ajax libraries help a lot• But browser-specific problems still crop up

Mobile Web – greater fragmentation Other browsers: Opera, IE Mobile, Netfront, RIM, … WebKit variations

• Different branches ship on different phones• Different memory and performance characteristics

Device/network differences (next slide slide)

Page 14: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 14

Mobile Web fragmentation Device/network divergence

Different browsers with different functionality Input devices (keypad vs touch vs jogwheel vs …) Screen sizes Memory Network speed Operator pricing schemes

At the same time as HTML5 contributors are rapidly defining and implementing their own favorite new features Mozilla, WebKit, Opera: vector graphics (SVG and Canvas) Google Gears (offline, worker threads, geolocation) Apple (CSS animation, HTML video)

Mobile represents major technology opportunities Which means more vendor-specific innovation going

forward

Device/network divergence Different browsers with different functionality Input devices (keypad vs touch vs jogwheel vs …) Screen sizes Memory Network speed Operator pricing schemes

At the same time as HTML5 contributors are rapidly defining and implementing their own favorite new features Mozilla, WebKit, Opera: vector graphics (SVG and Canvas) Google Gears (offline, worker threads, geolocation) Apple (CSS animation, HTML video)

Mobile represents major technology opportunities Which means more vendor-specific innovation going

forward

Page 15: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 15

Fragmentation inhibits mobile development

Developers have to choose between rich and reach Rich => take advantage of features found on only a subset of

devices (e.g., only support the iPhone) Reach => simplify the application to LCD

A small number of major developers have sufficiently deep pockets for both rich and reach But even the big guys incur major opportunity costs

The vast majority of developers will choose to wait before mobilizing their applications Or use proprietary technologies

As a result, Mobile Web 2.0 potential is not realized: Consumers don’t get innovative new products and services Businesses don’t gain productivity benefits

Developers have to choose between rich and reach Rich => take advantage of features found on only a subset of

devices (e.g., only support the iPhone) Reach => simplify the application to LCD

A small number of major developers have sufficiently deep pockets for both rich and reach But even the big guys incur major opportunity costs

The vast majority of developers will choose to wait before mobilizing their applications Or use proprietary technologies

As a result, Mobile Web 2.0 potential is not realized: Consumers don’t get innovative new products and services Businesses don’t gain productivity benefits

Page 16: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 16

Mobile widgets

Write-once, run-anywhere? Not yet Each vendor’s widget format is different Web Runtime differences As a result, only a fraction of content providers

can support only a fraction of phones

Standardization efforts under way W3C Widgets See subsequent slides about OMTP BONDI

Ajax-based mobile widgets will roll out in a big way in the next couple of years

Write-once, run-anywhere? Not yet Each vendor’s widget format is different Web Runtime differences As a result, only a fraction of content providers

can support only a fraction of phones

Standardization efforts under way W3C Widgets See subsequent slides about OMTP BONDI

Ajax-based mobile widgets will roll out in a big way in the next couple of years

Page 17: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 17

Agenda

Mobile Web Runtime – the Vision

Mobile Web Runtime – the Reality

Mobile Device APIs

Mobile Ajax Ready

Mobile Web Runtime – the Vision

Mobile Web Runtime – the Reality

Mobile Device APIs

Mobile Ajax Ready

Page 18: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 18

Three Standards Organizations

Working together, along with key companies (e.g., Vodafone) to advance the Open Web on mobile devices

Working together, along with key companies (e.g., Vodafone) to advance the Open Web on mobile devices

Open Web for rich applications

Lightweight

Open Web for mobile applications

Mediumweight

Open Web in general

Heavyweight

Page 19: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 19

Mobile Ajax Summit: Feb. 2007

Vodafone hosts Mobile Ajax summit at 3GSM 2007

~20 companies

Consensus: organize a Workshop on Mobile Ajax

Vodafone hosts Mobile Ajax summit at 3GSM 2007

~20 companies

Consensus: organize a Workshop on Mobile Ajax

David Pollington
Do you mean 2007 :-)
Page 20: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 20

Workshop on Mobile Ajax

Took place Sept. 28, 2007 in Mountain View, CA

Preceded by call-for-participation, sent out by W3C and OpenAjax Alliance

37 position papers, 45 attendees ACCESS, AOL, Aplix, Coactus, Dojo, ETRI, Gemalto,

Gemino Mobile, Google, Harvard Medical School, IBM, ICEsoft, Ikivo, Microsoft, Mobile Aware, Mobile Complete, Mobix, Motorola, NEC, Nexaweb, NHN, Nokia, Novarra, NTT Docomo, OpenAjax Alliance, Paving Ways, RIM, SAP, SK Telecom, Sprint, Sun, University of Helsinki, Volantis, W3C WAF WG, Wake3, Yahoo!

Took place Sept. 28, 2007 in Mountain View, CA

Preceded by call-for-participation, sent out by W3C and OpenAjax Alliance

37 position papers, 45 attendees ACCESS, AOL, Aplix, Coactus, Dojo, ETRI, Gemalto,

Gemino Mobile, Google, Harvard Medical School, IBM, ICEsoft, Ikivo, Microsoft, Mobile Aware, Mobile Complete, Mobix, Motorola, NEC, Nexaweb, NHN, Nokia, Novarra, NTT Docomo, OpenAjax Alliance, Paving Ways, RIM, SAP, SK Telecom, Sprint, Sun, University of Helsinki, Volantis, W3C WAF WG, Wake3, Yahoo!

Page 21: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 21

2007 Conclusions

Ultimately, a common Ajax platform will become available across desktop and mobile devices Thereby providing the industry with a universal content and

application platform

It will be the Web on mobile… not a separate mobile Web

Ajax running on mobile devices has its own set of special requirements and opportunities Constraints: screen size, keypad, CPU, memory, bandwidth, etc. Opportunities: Portability, GPS, camera, messaging, voice, etc.

Mobile Ajax (the “Web Runtime”) is not just for browsing Mobile “widgets” for installed applications Often need access to device APIs

Ultimately, a common Ajax platform will become available across desktop and mobile devices Thereby providing the industry with a universal content and

application platform

It will be the Web on mobile… not a separate mobile Web

Ajax running on mobile devices has its own set of special requirements and opportunities Constraints: screen size, keypad, CPU, memory, bandwidth, etc. Opportunities: Portability, GPS, camera, messaging, voice, etc.

Mobile Ajax (the “Web Runtime”) is not just for browsing Mobile “widgets” for installed applications Often need access to device APIs

Page 22: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 22

Mobile Device APIs Early Work

Vodafone MobileScript open source from Vodafone R&D 2nd Mobile Ajax Summit (MWC, Feb 2008)

• OpenAjax Alliance should launch fast-track efforts around Mobile Device APIs

OpenAjax Alliance: March to May 2008 Industry due diligence Use case definition Requirements gathering Security (requirements and high-level approach)

In parallel, W3C launches geolocation API activity initial proposal from Google Gears team

In parallel, OMTP BONDI ramps up

Vodafone MobileScript open source from Vodafone R&D 2nd Mobile Ajax Summit (MWC, Feb 2008)

• OpenAjax Alliance should launch fast-track efforts around Mobile Device APIs

OpenAjax Alliance: March to May 2008 Industry due diligence Use case definition Requirements gathering Security (requirements and high-level approach)

In parallel, W3C launches geolocation API activity initial proposal from Google Gears team

In parallel, OMTP BONDI ramps up

Page 23: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 23

OMTP BONDI

(switch to BONDI slide deck) (switch to BONDI slide deck)

Page 24: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 24

Agenda

Mobile Web Runtime – the Vision

Mobile Web Runtime – the Reality

Mobile Device APIs

Mobile Ajax Ready

Mobile Web Runtime – the Vision

Mobile Web Runtime – the Reality

Mobile Device APIs

Mobile Ajax Ready

Page 25: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 25

Mobile Ajax Ready Strawman

Industry comes together to define “Mobile Ajax Ready” List of feature and performance requirements Acid tests to verify conformance

Key leadership comes from the user and developer communities Enterprise suppliers: IBM, Oracle, Salesforce, TIBCO, … Consumer sites: Google, Yahoo, Facebook, MySpace, … Ajax toolkits: Dojo, Prototype, jQuery, GWT, Ext JS, …

In partnership with mobile infrastructure companies Operators Device manufacturers Browser developers

Industry comes together to define “Mobile Ajax Ready” List of feature and performance requirements Acid tests to verify conformance

Key leadership comes from the user and developer communities Enterprise suppliers: IBM, Oracle, Salesforce, TIBCO, … Consumer sites: Google, Yahoo, Facebook, MySpace, … Ajax toolkits: Dojo, Prototype, jQuery, GWT, Ext JS, …

In partnership with mobile infrastructure companies Operators Device manufacturers Browser developers

Page 26: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 26

Objective: Growth of innovative mobile applications Interoperability across a range of mobile

platforms Ideal: write once, run anywhere More realistic: minimize development/testing costs

Accelerate availability of key features HTML5: video, local/session storage, server push,

postMessage(), … Graphics: SVG and Canvas Device APIs: telephony, address book, mail, messaging,

camera, connectivity status, …

Mobile innovation Vendors focus on innovation instead of porting

Entire technology stack uses open technologies Open source options for most features No one taking tolls

Interoperability across a range of mobile platforms Ideal: write once, run anywhere More realistic: minimize development/testing costs

Accelerate availability of key features HTML5: video, local/session storage, server push,

postMessage(), … Graphics: SVG and Canvas Device APIs: telephony, address book, mail, messaging,

camera, connectivity status, …

Mobile innovation Vendors focus on innovation instead of porting

Entire technology stack uses open technologies Open source options for most features No one taking tolls

Page 27: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 27

Mobile Ajax Ready

100% Open Web Starts with today’s desktop Ajax as the starting

point De facto standard platform supported by today’s Ajax toolkits Includes various (non-W3C) quirks modes and extensions

Then adds selectively: Critical features from HTML5 (e.g., offline) Critical features from OMTP, particularly BONDI On an exceptional basis, other open technologies defined

outside of HTML5

OK for mobile devices to include open plugins to achieve conformance In case browser code bases aren’t keeping up E.g., Google Gears or Yahoo! Browser Plus

100% Open Web Starts with today’s desktop Ajax as the starting

point De facto standard platform supported by today’s Ajax toolkits Includes various (non-W3C) quirks modes and extensions

Then adds selectively: Critical features from HTML5 (e.g., offline) Critical features from OMTP, particularly BONDI On an exceptional basis, other open technologies defined

outside of HTML5

OK for mobile devices to include open plugins to achieve conformance In case browser code bases aren’t keeping up E.g., Google Gears or Yahoo! Browser Plus

Page 28: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 28

Acid tests

Modeled after tests from Web Standards Project (WSP) Not attempting to be comprehensive

• Basic checks on features• Relies on other organizations to produce detailed tests

Highly visual results (e.g., “Passes 70/100 tests”)

Supplements the WSP’s Acids tests Devices need to pass both the WSP Acid tests and the Mobile

Ajax Ready acid tests

Get test cases from leading Ajax libraries Ajax libraries push browsers to the limit (e.g., Dojo offline

storage) Several leading Ajax libraries already share their test suites

with browser teams Most mobile Ajax applications will use an Ajax library (just as

on the desktop), so this is a natural part of being “Ajax Ready”

Modeled after tests from Web Standards Project (WSP) Not attempting to be comprehensive

• Basic checks on features• Relies on other organizations to produce detailed tests

Highly visual results (e.g., “Passes 70/100 tests”)

Supplements the WSP’s Acids tests Devices need to pass both the WSP Acid tests and the Mobile

Ajax Ready acid tests

Get test cases from leading Ajax libraries Ajax libraries push browsers to the limit (e.g., Dojo offline

storage) Several leading Ajax libraries already share their test suites

with browser teams Most mobile Ajax applications will use an Ajax library (just as

on the desktop), so this is a natural part of being “Ajax Ready”

Page 29: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 29

Driven by content developers

Enterprise suppliers IBM, Oracle, Salesforce, TIBCO, …

Consumer sites Google, Yahoo, Facebook, MySpace, …

Ajax toolkits Dojo, Prototype, jQuery, GWT, Ext JS, …

Enterprise suppliers IBM, Oracle, Salesforce, TIBCO, …

Consumer sites Google, Yahoo, Facebook, MySpace, …

Ajax toolkits Dojo, Prototype, jQuery, GWT, Ext JS, …

Page 30: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 30

Lightweight, dynamic, fast-moving process

“Mobile Ajax Ready” will need regular updates

Updated definition every 6 months? 9? 12?

Good to give advanced warning about likely features in future versions Allows platforms to see what is coming and

start implementing before final approval

“Mobile Ajax Ready” will need regular updates

Updated definition every 6 months? 9? 12?

Good to give advanced warning about likely features in future versions Allows platforms to see what is coming and

start implementing before final approval

Page 31: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 31

Recruitment

Key mobile companies: Vodafone, Nokia, …

Key consumer companies: Google, Facebook, MySpace, …

Key Enterprise companies: IBM, …

Key Ajax toolkits: Dojo, …

Key browser companies: Mozilla? Opera?

Web Standards Project

Key mobile companies: Vodafone, Nokia, …

Key consumer companies: Google, Facebook, MySpace, …

Key Enterprise companies: IBM, …

Key Ajax toolkits: Dojo, …

Key browser companies: Mozilla? Opera?

Web Standards Project

Page 32: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 32

Leadership

? ?

Page 33: Ajax on Mobile Phones: Accelerating Key Features,

Ajax on Mobile Phones: Past, Present and Future 33

Thanks!