Apps vs. Sites vs. Content - a vendor-agnostic view on building stuff for the mobile web
1. Apps vs Sites vs Content
A vendor-agnostic view on building stu for the
mobile web
2. What’s this all about?
“A primer for managers, developers,
business owners, architects on the mostly
confusing world of mobile devices,
mobile delivery platforms & the e orts
involved in monetizing the stu you’re
going to build or you’re going to spend
in the year 2011”
4. Agenda
Back then and today
Mobile Platforms
How to code for mobile platforms
e big decision: What are you building?
Making money?
e future - Tablet Wars?
5. Me (Disclaimer)
Kai is...
an Apple fanboi
an Adobe fanboi
somewhat of a Windows-disliker
& interested in “weird” programming
languages
14. How was it back then?
J2ME was BIG
Buying content was a pain in the neck
Lots of individual “app stores”
Installation and compatibility woes
Huge device fragmentation
“ e search for the killer app”
16. Variations
“Mobile is the new standard”
“Don’t design for desktop, design for
mobile”
“...to empower people through great
so ware, any time, any place and on any
device...” (*)
e app revolution??? Really???
19. Success
Apple believed in an innovative concept
Apple had a delivery and payment
system right there and ready to use
Essentially: Apple was at the right place
at the right time
21. Apple iOS
iPhone 1, 3G, 3GS, 4
iPad 1 and 2
iPod Touch
iOS v1 to v4 are out in the wild, v5 beta
Based on OS X Mach kernel
Apple has and wants to keep full control
22. Google Android
Various device vendors (HTC, Samsung,
Motorola, LG etc)
Google doesn’t focus on hardware
Fragmentation
Android is Open Source
Based on Linux kernel
Network operators and device vendors
want full control
23. Symbian OS
Consortium-driven (but really Nokia)
4+ flavours: s40, s60, UIQ, MOAP
History: EPOC (a PDA OS)
Free of charge to license
Some degree of OS fragmentation
Alive and kicking
24.
25. “ ere's no chance that
the iPhone is going to get
any significant market
share. No chance.”
26. Windows Mobile/Phone
Traditionally various device vendors
Pre WP 7: massive fragmentation
Lack of strategy within Microso
Best of breed of MSFT technology stack
WP 7 prescribes exact hardware specs
31. Common themes
IDE (Editor and/or interface builder)
Compiler
Device Emulator
Q: How do you (beta-)test?
32. Coding for iOS
For iOS 2+ XCode and iPhone SDK
Mac only
Objective-C (or C) based on Cocoa
Well-supported but also well-controlled
environment
Ca. 90% iOS 4.x vs 10% iOS 3.x
33. Objective-C and C libraries
Cocoa Touch Camera, Accelerometer, Image Picker, Multi-Touch ...
Media PDF, Video Player, Quartz, CoreAnimation ...
Core Services NET, File Access, SQLite ...
Core OS File System, Security, Mach, BSD
C libraries
34. Coding for Android
Java - but there’s no JVM: Dalvik VM
Android SDK, usually in Eclipse
SDK per sub-release (usually)
Variety of APIs, can become tricky due
to device and hardware fragmentation
and OS versions/API levels in the wild
35.
36.
37. Coding for SymbianOS
Majority: C++, Java or Python
Nokia-provided SDKs
Issue with OS flavour fragmentation
Many di erent hardware profiles around
38. Coding for WP 7
Visual Studio 2010 Express for WP
Expression Blend for WP
C# and VB.NET (the latter not for free)
XAML, Silverlight and XNA
Promising due to deal with Nokia
Goes well with MSFT stack
39. Application Object (Windows Phone 7 specific APIs)
Silverlight (Presentation and Media) XNA (Game development)
Common Base Class Library
40. Coding for RIM
Java and custom APIs (Adobe AIR)
Prop. tooling (rather complicated)
Non-trivial deployment mechanisms
Clever move: Android sandbox
42. History
iOS 1 just allowed custom web apps
“Make or break” (or jailbreak)
e limitations of iOS 1 are what caused
Ajax-based mobile web apps to become
successful.
43. Coding mobile JS apps
Leverage HTML(5), JS, CSS
jqTouch, JQuery Mobile, SenchaTouch
Variety of CSS libs to create native look
& feels
WebKit - used on all major platforms
WebStorage API / LocalStorage API
GeoLocation API / Caching
45. Coding with Flash/AIR
By design cross-platform
Flash CS5/5.5 to iOS packager (export
tool)
Flash Player 10.x & AIR 2.7 on Android
AIR is one of the major dev platforms on
RIM’s playbook tablet
Flex for mobile: v 4.5.1 (just released)
46. Flash Player on devices
Depending on the device: 10 / 10.1 / 10.2
Molehill (3D) will finally come to mobile
Game development!
Leveraging lots of existing libs and code
47. AIR on devices
AIR 2.x: first release of AIR for devices
Now at 2.7 -> even on iOS
Apps install as native apps and can be
sold through app stores
48. Recent Example
Flash-based game engine built on Flixel
1 hr to make it work
iPad 2 - 20-25 fps
iPhone 4 - 5-7 fps
Google Nexus One - 10-12 fps
49. Recent Example
Flash-based game engine built on Flixel
A er about 6 hrs of optimisation
iPad 2 - 30 fps
iPhone 4 - ca. 20 fps
Google Nexus One - ca. 20 fps
50. Coding with Titanium
Similar idea as Flash Platform
Code in JS, compile to native app
Support for Android and iOS
51. Coding with PhoneGap
Build app in HTML/CSS/JS
iOS, Android, BlackBerry, Palm,
Symbian
Requires underlying SDKs installed
54. But here are some ideas
Mobile presence?
Better visibility through app stores?
Features?
Monetization of your solution by selling?
What are your target users?
WHERE are your target users?
56. How to deliver content?
Again - need to monetize by selling
“things” or maybe a subscription model?
Text/Images on websites
PDF documents
Interactive Magazines (for instance via
Adobe’s Digital Publishing suite)
58. AppStores
It’s unlikely that you’re going to become
rich. Not impossible though.
General concept:
Build
Get into platform’s dev program and get
approval for your app
Sell under a revenue sharing model
59. General rules
Some stores have requirement docs for
approval
Unstable apps, links to competition’s
stores, objectionable (porn) content,
racist and discriminating content are
usually not approved
Investigate the rules before you code!
60. Some numbers
iTunes AppStore
2010 - 2.5+ billion turnover
Prediction for 2013
6+ billion for iTunes AppStore
17+ billion for all major platforms
61. More numbers
iTunes AppStore: 340k+ apps
Nokia Ovi Store: 30k apps (+10k WP7)
Android Market: around 200k apps
Android Market has a huge momentum
though as the platform is growing
62. App Pricing
Avg purchase price: US$ 4.03
Avg selling price of top 100: US$ 2.14
45% of all apps are US$ 0.99
19% US$ 1-2
just 9% are US$ 7+
63. Revenue Sharing
Common model: 70/30 split
BB AppWorld is di erent - concept of
individual kiosks: 80/20 but then the
kiosk owner also keeps a certain share
Interesting question: What’s the future
gonna be re the revenue sharing?
64. Pricing and legal stu
Apple: US$ 0 or US$ 0.99 - US$ 999
MSFT: US$ 0 or US$ 0.99 - US$ 499
Android: US$ 0 or US$ 0.99 - US$ 200
Devs usually hardly have any rights
Having to agree to overseas legal t&cs
72. Android #fail?
Stupid handset manufacturers
Even more stupid network operators
Device fragmentation
Google is actively working on this -
there’s a shi towards less openness and
more control with Android
73. My recommendation
Try to leverage your existing skills
Don’t focus on one single platform
Do not discard cross-platform
development because “it’s not native”.