The secret to building cross platform Mobile Apps: How the big guys do it - Droidcon Paris 2014
-
Upload
paris-android-user-group -
Category
Technology
-
view
209 -
download
0
description
Transcript of The secret to building cross platform Mobile Apps: How the big guys do it - Droidcon Paris 2014
ALI PARR PLATFORM PARTNERSHIPS, FACEBOOK, EMEA
ACCELERATING GROWTH BY DEVELOPING CROSS PLATFORM
1903First Flight
1903First Flight
1928 Jet Power
1903First Flight
1928 Jet Power
1947 Aeroflot
1903First Flight
1928 Jet Power
1947 Aeroflot
1969 Moon!
1903First Flight
1928 Jet Power
1947 Aeroflot
1969 Moon!
1973 Concorde
1903First Flight
1928 Jet Power
1947 Aeroflot
1969 Moon!
1973 Concorde
25 years 19 years 15 years 7 years
1903First Flight
1928 Jet Power
1947 Aeroflot
1969 Moon!
1973 Concorde
1903First Flight
1928 Jet Power
1947 Aeroflot
1969 Moon!
1973 Concorde
1903First Flight
1928 Jet Power
1947 Aeroflot
1969 Moon!
1973 Concorde
1960sARPANET
1903First Flight
1928 Jet Power
1947 Aeroflot
1969 Moon!
1973 Concorde
1960sARPANET
1993 Mosaic (Netscape)
1903First Flight
1928 Jet Power
1947 Aeroflot
1969 Moon!
1973 Concorde
1960sARPANET
1993 Mosaic (Netscape)
1999 .com Boom
1903First Flight
1928 Jet Power
1947 Aeroflot
1969 Moon!
1973 Concorde
1960sARPANET
1993 Mosaic (Netscape)
1999 .com Boom
2007 - 2008 iPhone / Android
1903First Flight
1928 Jet Power
1947 Aeroflot
1969 Moon!
1973 Concorde
1960sARPANET
1993 Mosaic (Netscape)
1999 .com Boom
2007 - 2008 iPhone / Android
2010 > Cloud
1. AS A TECHNOLOGY MATURES, SPEED INCREASINGLY MATTERS
$ git-clone-www ~/www
0
2800
5600
8400
11200
14000
2007 2008 2009 2010 2011 2012 2013
COMMITS / ENGINEERS PER MONTH
2. SUCCESSFUL PROJECTS SCALE
A STORY…
0
14
28
42
56
70
Q1-12 Q2-12 Q3-12
CANDY CRUSH CANVAS MAU
Q4-12
0
14
28
42
56
70
Q1-12 Q2-12 Q3-12 Q1-13
CANDY CRUSH CANVAS MAU (EXPECTED)
Q4-12
0
100
200
300
400
500
Q1-12 Q2-12 Q3-12 Q1-13 Q2-13 Q3-13 Q4-13
CANDY CRUSH MAU (ACTUAL)
Q4-12
THE WORLD WENT MOBILE
2005
2013
THE ENGAGEMENT LOOP
‘THE LOOP’ IN CANDY CRUSH• Progress synced across platforms - Levels, scores etc
• ‘Lives’ mechanic - false scarcity
• Friends and progress (via Facebook) - competition
• Sharing and stories - exposure
• Regular, small gameplay sessions builds loyalty (*cough* addiction)
About 0.15% of mobile gamers contribute.. 50% of all of the in-app purchases generated in free-to-play games.
Keeping these users engaged is vital!
About 0.15% of mobile gamers contribute.. 50% of all of the in-app purchases generated in free-to-play games.
IT’S NOT JUST TRUE FOR GAMING….
3. CROSS-PLATFORM ROCKS
FACEBOOK MOBILE USAGE
iOS Android Mobile Web
1.07b MAP
FACEBOOK MOBILE USAGE
2009
“Why has the Facebook app been so slow? Because the current version of the app is nothing more than a web browser inside an Objective-C shell. Stuff is
being constantly pulled from the web, hence the lag time.
The next Facebook app will replace all that sluggish sludge by using more Objective-C, which in turn would use more of the iPhone's hardware so it has to
collect less information from the Web."
- Gizmodo, May 2011
“Our biggest mistake was betting too much on HTML5."
- Mark Zuckerberg, September 2012
ENGINEERING FIRST
PEOPLE FIRST
4. CROSS-PLATFORM IS REALLY HARD
1. SPEED MATTERS 2. SUCCESSFUL PROJECTS SCALE
3. CROSS-PLATFORM ROCKS 4. CROSS-PLATFORM IS REALLY HARD
ALWAYS BE SHIPPING
Developer Workflow
Trunk www(SVN)
Developer Workflow
Trunk www(SVN)
Developer Workflow
Trunk www(SVN)
Local Branch(Mercurial)
Branch from Trunk
Developer Workflow
Trunk www(SVN)
Local Branch(Mercurial)
Branch from Trunk
Locally commit your changes as you go
Developer Workflow
Trunk www(SVN)
Local Branch(Mercurial)
Rebase regularly
Branch from Trunk
Locally commit your changes as you go
Developer Workflow
Trunk www(SVN)
Local Branch(Mercurial)
Rebase regularly
Branch from Trunk
Locally commit your changes as you go
Tests!
Developer Workflow
Trunk www(SVN)
Local Branch(Mercurial)
Rebase regularly
Branch from Trunk
Differential
Submit for code review
Locally commit your changes as you go
Tests!
Developer Workflow
Trunk www(SVN)
Local Branch(Mercurial)
Rebase regularly
Branch from Trunk
Differential
Submit for code review
Locally commit your changes as you go
Reviewer says yeah!
Tests!
Developer Workflow
Trunk www(SVN)
Local Branch(Mercurial)
Rebase regularly
Branch from Trunk
Differential
Submit for code review
Ready for commit
Locally commit your changes as you go
Reviewer says yeah!
Tests!
Developer Workflow
Trunk www(SVN)
Local Branch(Mercurial)
Rebase regularly
Branch from Trunk
Rebase again
Differential
Submit for code review
Ready for commit
Locally commit your changes as you go
Reviewer says yeah!
Tests!
Developer Workflow
Trunk www(SVN)
Local Branch(Mercurial)
Rebase regularly
Branch from Trunk
CommitRebase again
Differential
Submit for code review
Ready for commit
Locally commit your changes as you go
Reviewer says yeah!
Tests!
Tests!
.org
SHIPPING CAN BE PAINFUL…
…BUT IT LEADS TO UNDERSTANDING
MEASURE: TO LEARN ABOUT YOUR USERS
OKCUPID: LOVE IS BLIND
OKCUPID: LOVE IS BLIND
OKCUPID: LOVE IS BLIND
OKCUPID: LOVE IS BLIND
CREDIT CARD ENTRY EXPERIENCE VERSION BVERSION A
CREDIT CARD ENTRY EXPERIENCE
+2.4% lift in completionsPeople like their keyboards. They also like things that match
VERSION BVERSION A
VERSION A
DEBIT CARDS AND CREDIT CARDSVERSION BVERSION A
Credit/Debit CardCredit Card
+1.5% lift in rate of credit cards addedMake options obvious, even if it seems obvious to you
DEBIT CARDS AND CREDIT CARDSVERSION BVERSION A
VERSION B
Credit/Debit CardCredit Card
MINIMIZING CANCEL BUTTONSVERSION BVERSION A
MINIMIZING CANCEL BUTTONS
Conversion up but refund rate increased by 30%Bad experiences can raise conversion temporarily, but not permanently
VERSION BVERSION A
MIX
COUPON FLOW EXPERIENCEVERSION BVERSION A
COUPON FLOW EXPERIENCEVERSION BVERSION A
+30% lift in payer rateDon’t distract your customers from the main objectiveVERSION B
MEASURE: ENSURE YOU MEASURE THE RIGHT THINGS
LET’S PLAY A GUESSING GAME
ARPPU
% of payers
C
B
A
D
WHICH ONE HAS THE “BEST” MONETIZATION?
ARPPU
% of payers
C
B
A
D
IT ALL BEGINS WITH ENGAGEMENT
ARPPU
% of payers
C
OUTSOURCE, OUTSOURCE, OUTSOURCE
1. ALWAYS BE SHIPPING 2.MEASURE, ITERATE, IMPROVE
3. OUTSOURCE
THANKS, QUESTIONS?