2. Exadel
Max Katz
● Senior Systems Engineer at Exadel
● JSF, RichFaces, Java EE consulting,
and training
● Manages exadel.org – Exadel's open
source projects and community
● Community manager for gotiggr.com
– tool for creating and sharing
interactive web and mobile HTML
prototypes
3. Exadel
4
Summer 2011
Author of Lead-author of
Practical RichFaces Practical RichFaces, 2/e
(Apress) (Apress, June 2011)
6. Exadel
Exadel is a global software
engineering company.
● Founded in 1998,
headquarters in San Francisco
Bay Area
● 7 development offices in
Europe
● 350+ employees
9. Exadel
Exadel Products
● Open Source with JBoss
◦ RichFaces
◦ JBoss Tools/JBoss Developer Studio
● exadel.org
◦ Flamingo
◦ Fiji
◦ jsf4birt
◦ JavaFX Plug-in for Eclipse
● gotiggr.com– build and share Web and
mobile HTML prototypes
10. Exadel
Exadel Services
● Professional services
● Rich enterprise application
development
● Eclipse development
● Custom rich component development
● Mobile development
● Training
12. Exadel
Let's start
Source: Flickr photo by sridgway: http://www.flickr.com/photos/stephanridgway/4468403556/
13. Exadel
Over 4 billion
phones in the
world
(that's half the
population)
Source: http://www.flickr.com/photos/wwworks/2222523486/
14. Exadel
Forecast for
total
smartphone
sales in 2010:
250,000,000+
Source: http://www.gartner.com/it/page.jsp?id=1434613
Source: http://www.flickr.com/photos/wwworks/2222523486/
15. Exadel
By 2013 mobile devices will
overtake PCs as the
preferred way of accessing
the Internet.
Source:
http://www.mobilecommercedaily.com/why-a-mobile-strategy-for-retailers-matters-more-than-ever
16. Exadel
1. Platform
2. App discovery,
monetization, support
3. User experience
4. Device features
5. Enterprise
development
17. Exadel
Platforms
Source: Flickr photo by markhillary: http://www.flickr.com/photos/markhillary/514555513/
18. Exadel
(Fragmentation)
Where is Symbian, MeGoo?
19. Exadel
App discovery,
monetization,
support
Source: Flickr photo by mckaysavage: http://www.flickr.com/photos/mckaysavage/843953060/
20. Exadel
App discovery
Native Web
● AppStore – ● Enter URL or search
proven and very ● Webstores like Chrome
popular App Store
● Standard App Store by
placing the Web app
inside a native wrapper
(Hybrid App)
21. Exadel
App approval
Native Web
App is published to Instant, no approval
an App Store; goes process; just enter
through review the URL
process before being Steve can't say no
approved
22. Exadel
App installation
Native Web
Downloaded from Open URL in a
app market and mobile browser
installed Create a shortcut on
the phone's screen
23. Exadel
App update
Native Web
Updated app goes No approval process.
through review Just update the
process, then mobile web app and
downloaded and everyone gets the
installed new version.
24. Exadel
App support, maintenance,
adding new features
Native Web
The more platforms, the Simple (almost).
more challenging it is Write once, deploy
anywhere
Not uncommon to have
different “versions” for
iOS and Android
26. Exadel
App monetization
Web
● Each app has its own monetization strategy
● HTML App Store, like Google Chrome Web
Store
● StandardApp Store – putting apps inside a
native wrapper/shell (Hybrid Apps)
● Selling access
or token in standard App
Store and then getting access to mobile app
27. Exadel
Porting to new platform
Native Web
● Needto learn another ● Build once,
run
mobile platform anywhere (almost)
● Learn
platform's UI ● Tweak the UI to fit
approach platform
● Difference in
browsers
and supported features
28. Exadel
User
experience
Source: Flickr photo by jpctalbot: http://www.flickr.com/photos/laserstars/908946494/
29. Exadel
Speed
Native Web
Faster for some UI HTML5/JavaScript
functions, especially rendering bring
when heavy graphics performance “almost” on
are involved par with native
30. Exadel
User experience
Native Web
● Very fast ● Can be “very good”
● UI effects ● For example, an app
● More like Gmail
developed UI
“logic” ● Will continue to
improve and get better.
33. Exadel
User perception
Native Web
Many associate Will be improving
mobile apps with
native apps today
34. Exadel
Device
features
Source: http://www.flickr.com/photos/sanberdoo/510894918/
35. Exadel
Native Web
Video/audio Built-in HTML5
Off line Possible HTML5
Hiding browser
Full screen Built-in
address bar
Accelerometer Built-in HTML5
Push Possible Possible (HTML5)
36. Exadel
Off line, connectivity
Native and Web
● Speed:
◦ EDGE (slow)
◦ 3G (faster)
◦ 4G (very fast)
◦ WiFi (very fast)
● Users“don't like” to see the
browser loading
● More OK with native app loading
37. Exadel
Integration with phone
services
Native Web
Full access to phone Limited; but more and
services: more apps get data
● Contacts from the cloud
● Calendar Do you really need
access?
38. Exadel
Integration with phone
hardware
Native Web
Full integration with Some support via
phone hardware HTML5 is now
● Camera/Video available for
● GPS camera/video
40. Exadel
Developer skills
Native
● iOS (Objective C)
● Android (Java)
● BlackBerry (Java)
● webOS (HTML/JavaScript)
● Windows Phone (Silverlight, .NET)
Plus, every platform has its own
approach to UI development
41. Exadel
Developer skills
Web
HTML, JavaScript, CSS
But, training is needed to adapt
exiting HTML/JavaScript/CSS skills
to mobile development
42. Exadel
Cost
Native
Expensive, as still relatively
small number of developers
master mobile development
skills
43. Exadel
Cost
Web
● Can be significantly cheaper
● Largenumber of developers
already posses HTML,
JavaScript, CSS skills
● But,
some training might be
needed to learn how to
develop UI for mobile apps
44. Exadel
Mobile development
frameworks
Native
Every platform has its own SDK:
● iOS (Objective C)
● Android (Java)
● BlackBerry (Java)
● webOS (HTML/JavaScript)
● Windows Phone (Silverlight, .NET)
45. Exadel
Mobile development
frameworks
Web
A number of options available today for
building Web mobile apps:
● Take “do it yourself approach”
● Adapt any existing framework to work on
mobile web
● jQuery Mobile
● Sencha
46. Exadel
Mobile development
frameworks
Hybrid
A number of tools to build hybrid apps:
● Tiggr Mobile (coming up, demo)
● PhoneGap
● Open plug
● Adobe Flex Mobile
● Titanium Appcelerator
● Corona SDK
47. Exadel
Server integration
Native
Existing infrastructure could be
reused but also need service layer to
communicate between client
(mobile) and server
● REST
● SOAP
● Hessian
● Protocol Buffers
49. Exadel
Time to market
Native Web
● Slow,unless have ● Can be fast
access to experts
● Need strong experts;
hard to find
● Number of platforms
supported
51. Exadel
Tiggr Prototypes Tiggr Mobile
● Build and share ● First of
a kind, Web-
interactive HTML based IDE for building
prototypes and deploying hybrid
● Highly-interactive,
mobile apps
define events/actions ● Connect and invoke
● View,
remote services
test in any
browser, get feedback
52. Exadel
Tiggr Mobile Demo*
http://gotiggr.com
*Preview version
53. Exadel
Update,
Device
Speed App Store Approval new Cost
Access
features
Native Can be
Full Very fast Available Required $$$
challenging
Web Some Fast Possible None Easy $
54. Exadel
Update,
Device
Speed App Store Approval new Cost
Access
features
Can be
Full Very fast Available Required $$$
Native challenging
Can be
Hybrid Full
very fast
Available Required Easy $
Web Some Fast Possible None Easy $
55. Exadel
Other things to consider
● Does everythingneed a native
app? “App overload”
● Doyou want users to download
an app for anything they do on
mobile devices?
◦ Not uncommon to download
and never use an app
● Do you need access to device
features?
56. Exadel
Anything I missed?
Source: http://www.flickr.com/photos/drachmann/327122302/
57. Exadel
Native Web/Hybrid
● Games ● Support all or
● Full access to device most platforms
features ● Easy update,
● Very high performance maintenance
● Time to market
● Specialized apps with rich
graphics ● Cost
● Targeting just one
platform
● Off line
58. Exadel
There is no right answer.
> Mobile platforms
> Target audience
> Resources (skills, time, money)
> App features
Flickr photo by faungg: http://www.flickr.com/photos/44534236@N00/3255156612/
59. Exadel
History repeats itself?
Flick photo by Arts Comments: http://www.flickr.com/photos/artcomments/382732967/