Ajax on Mobile Phones: Past, Present and Future

Download Report

Transcript Ajax on Mobile Phones: Past, Present and Future

Ajax on Mobile Phones:
Accelerating Key Features,
Minimizing Fragmentation
Jon Ferraiolo
IBM and OpenAjax Alliance
November 5, 2008
Agenda
 Mobile Web Runtime – The Vision
 Mobile Web Runtime – Today’s Reality
 Mobile Device APIs
 Mobile Ajax Ready
Ajax on Mobile Phones: Past, Present and Future
2
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”
Ajax on Mobile Phones: Past, Present and Future
3
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
Ajax on Mobile Phones: Past, Present and Future
4
What do we mean by a Web Runtime?
Mobile browsers today…
Web app
Widget
Browser
Rich UI
Scripting
xHTML
CSS
SVG
JavaScript
Browser
Web
Runtime
Responsiveness
Web
e.g., S60
UI toolkit
Application APIs
Middleware
e.g., Symbian
Kernel
H/W abstraction layer (HAL)
Hardware
Embracing “Ajax”:
HTML, JavaScript, CSS, DOM
Evolve the browser as a new
Web Runtime for hosting
Butmobile
evolving
theand
Web
beyond
apps
services
the browser:
Widgets & other deviceresident applications
(alternative to J2ME)
Ajax on Mobile Phones: Past, Present and Future
5
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
Ajax on Mobile Phones: Past, Present and Future
6
Enhancing the Web Runtime with device APIs
Device APIs:
Terminal
functionality &
user data
Web
information
Web app
Adds context
Ajax on Mobile Phones: Past, Present and Future
•
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)
Enables mashups
7
Agenda
 Mobile Web Runtime – the Vision
 Mobile Web Runtime – Today’s Reality
 Mobile Device APIs
 Mobile Ajax Ready
Ajax on Mobile Phones: Past, Present and Future
8
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)
Ajax on Mobile Phones: Past, Present and Future
9
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, …
Ajax on Mobile Phones: Past, Present and Future
10
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
Ajax on Mobile Phones: Past, Present and Future
11
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)
Ajax on Mobile Phones: Past, Present and Future
12
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)
Ajax on Mobile Phones: Past, Present and Future
13
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
Ajax on Mobile Phones: Past, Present and Future
14
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
Ajax on Mobile Phones: Past, Present and Future
15
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
Ajax on Mobile Phones: Past, Present and Future
16
Agenda
 Mobile Web Runtime – the Vision
 Mobile Web Runtime – the Reality
 Mobile Device APIs
 Mobile Ajax Ready
Ajax on Mobile Phones: Past, Present and Future
17
Three Standards Organizations
Working together, along with key companies
(e.g., Vodafone) to advance the Open Web on
mobile devices
Ajax on Mobile Phones: Past, Present and Future
Open Web for
rich applications
Lightweight
Open Web for
mobile
applications
Mediumweight
Open Web
in general
Heavyweight
18
Mobile Ajax Summit: Feb. 2007
 Vodafone hosts Mobile Ajax summit at 3GSM
2007
 ~20 companies
 Consensus: organize a Workshop on Mobile
Ajax
Ajax on Mobile Phones: Past, Present and Future
19
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,
Ajax on Mobile Phones: Past,
Present and Future of Helsinki, Volantis, W3C WAF WG,
University
20
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
Ajax on Mobile Phones: Past, Present and Future
21
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
Ajax on Mobile Phones: Past, Present and Future
22
OMTP BONDI
 (switch to BONDI slide deck)
Ajax on Mobile Phones: Past, Present and Future
23
Agenda
 Mobile Web Runtime – the Vision
 Mobile Web Runtime – the Reality
 Mobile Device APIs
 Mobile Ajax Ready
Ajax on Mobile Phones: Past, Present and Future
24
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
Ajax on Mobile Phones: Past, Present and Future
25
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
Ajax on Mobile Phones: Past, Present and Future
26
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
Ajax on Mobile Phones: Past, Present and Future
27
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
Ajax on Mobile Phones: Past,
and Future so this is a natural part of being “Ajax Ready”
thePresent
desktop),
28
Driven by content developers
 Enterprise suppliers
 IBM, Oracle, Salesforce, TIBCO, …
 Consumer sites
 Google, Yahoo, Facebook, MySpace, …
 Ajax toolkits
 Dojo, Prototype, jQuery, GWT, Ext JS, …
Ajax on Mobile Phones: Past, Present and Future
29
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
Ajax on Mobile Phones: Past, Present and Future
30
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
Ajax on Mobile Phones: Past, Present and Future
31
Leadership
 ?
Ajax on Mobile Phones: Past, Present and Future
32
Thanks!
Ajax on Mobile Phones: Past, Present and Future
33