state of hybrid app development
TRANSCRIPT
THE STATE OF HYBRID APPSRYAN J. SALVA
MICROSOFT
@ryanjsalva
Innovators Early Adopters Early Majority Late Majority Laggards
Diffusion of innovations is a theory that seeks to explain how, why, and at what rate new ideas and technology spread through cultures.
Everett Rogers Scholar, Sociologist, Author…and all around swell guy
Innovators Early Adopters Early Majority Late Majority Laggards
Consumer AppsLate majority marketRevenue through the app storeTop priority: Premium UX
Business AppsVery early majority marketMobile apps are a cost centerDeployed to private storesTop priority: Time-to-market
Build B2E, B2B and/or B2C
CxOEnterprise ArchitectStakeholders
DevelopersSolution ArchitectsDev. Leads
IT ManagerDev. Manager
I’m interested in a (E2E) mobile app strategy
I want lower costs, everyone wants to keep costs down
We were targeting iOS, but now we need Android, Windows and…
Security is critical
I have backend data and enterprise systems to integrate
App analytics is important
Time-to-market, UX or performance is most important
I tried cross-platform 6+ months ago, but had mixed results
Hiring good iOS developers is expensive
Platform-specific teams make it difficult to coordinate features and schedule
releases
Re-training is costly. Hiring new people is even more costly.
Testing is complex and time consuming – especially Android.
Macs in the enterprise are an IT challenge (build, cost, admin)
After 400+ interviews, here’s what we’re hearing…
The most common path
Step 1
Pilot AppMost organizations begin with a pilot app either outsourced to an agency or adapted from a web app.
Pilot App
The most common path
Step 2
Bring it in-houseNext, IT departments bring a single platform (usually iOS or Android) in-house.
In-house
Step 1
Pilot App
The most common path
Step 2
In-house
Step 3
Add a platformA single platform is rarely enough. That’s when code sharing starts to become a top priority.
Add a PlatformStep 1
Pilot App
The most common path
Step 2
In-house
Step 3
Add a PlatformStep 1
Pilot App
Dev Ops
Dev OpsMature IT departments start to integrate dev ops workflows similar to those found in web today.
Magic QuadrantLEADERSCHALLENGERS
VISIONARIESNICHE PLAYERS
Microsoft
Mendix
Globe
MicroStrategy
Embarcadero
Zebra
Oracle
DSI
BackbaseAppcelerator
Xamarin
Telerik
Pegasystems
Kony
IBM
Adobe
SAPSalesForce
Appian
Com
plet
enes
s of V
ision
Ability to Execute
Ability to Execute• Product or Service• Overall Viability• Sales Execution/Pricing• Market Responsiveness/Record• Marketing Execution• Customer Experience• Operations
Completeness of Vision• Market Understanding• Marketing Strategy• Sales Strategy• Offering (Product) Strategy• Business Model• Vertical/Industry Strategy• Innovation• Geographic Strategy
Magic QuadrantLEADERSCHALLENGERS
VISIONARIESNICHE PLAYERS
Microsoft
Globe
Oracle
Telerik
Kony
IBM
Adobe
SAPSalesForce
Com
plet
enes
s of V
ision
Ability to Execute
9 of 20 are hybrid solutions• Speed-to-Market• Re-use of existing skills, assets, processes• Nearly 100% shared code• Strong ecosystem• Mature tools• Updates without re-submitting to stores
2X the Nearest CompetitorPhoneGap/Cordova
Xamarin
Unity
Qt
Adobe Air
Appcelerator
Corona
Marmelade
Codename One
Live Code
0% 10% 20% 30% 40% 50% 60% 70%61%
35%
31%
18%
15%
13%
12%
9%
4%
3%
Prioritize this tool Using this tool
Vision Mobile Analysis of Cross-Platform Development, July 2015
Untappd
Zynga Mob Wars
Swork It
Feedly
Uber
AT&T
Apple App &Book Stores
So… yeah. It’s working for some people.
What’s your top frustration?
“Documentation is not comprehensive.”
“Documentation stays out-of-date.”
“Non-core plugins feel like hobby projects – not maintained well.”
“There’s no single authoritative source for documentation. Do I go to PhoneGap,
Cordova… somewhere else?”
“Writing a plugin is not well-documented.”
“When I built the before-mentioned carrier plugin, I want through hell. NOTHING in the documentation
worked. And yes, I chose the doc version that matched at the time my Cordova CLI.”
“Every minor version bump fucks something up.”
“Cordova just seem unstable to me. EVERYTIME I install or remove a plugin I actually make 2 or 3 folder backups (since the platforms and plugins
dirs are always on gitignore).”
Sourced from 300+ survey responses, 12 interviews, email feedback
Who’s contributing to the ecosystem?
+100s of independent contributors
Who’s contributing to the platform?
Cordova lib Android ios windows plugins0
200
400
600
800
1000
1200
1400
1600
Commits by Feature Area
MS Google Adobe Other
January February March April May June0
50
100
150
200
250
Commits Over Time
Microsoft Adobe Google Other
A global audienceCountry %India 14.21%United States 12.57%Brazil 5.34%China 4.73%France 4.52%Germany 4.3%Italy 3.74%United Kingdom 3.43%Spain 2.87%Canada 2.38%
Google Analytics for Apache Cordova, October 2015
Cordova user base is growing…
Nov-13 Feb-14 May-14 Aug-14 Nov-14 Feb-15 May-15 Aug-15
Cordova CLI monthly download count
Sourced from NPM stats, Google Analytics
Nearly 200% growth in three years
PhoneGap/Cordova
Xamarin
Unity
Qt
Adobe Air
Appcelerator
Corona
Marmelade
Codename One
Live Code
0% 10% 20% 30% 40% 50% 60% 70%
2015 2012
Vision Mobile Analysis of Cross-Platform Development, July 2015
State of the PlatformSourced from 300+ survey responses, 12 interviews, email feedback
What technology do you use?Sourced from 300+ survey responses
5✰ to 1✰ App Ratio
jQT jQuery Mobile
Knockout jQuery Angular Dojo Ionic Zepto.js Backbone0
1
2
3
4
5
6
7
2.8
3.5 3.5 3.7 3.84.1 4.2
5
5.8
Vision Mobile Analysis of Cross-Platform Development, July 2015
Cordova Summit in Redmond
Attended by Adobe, Meteor, Monaca, IBM, Intel, SalesForce & many remotely
Cordova Roadmap• Documentation and on-boarding
New website & docs launched late September
• Driving quality into the plugin ecosystemBig push to triage and resolve backlog of bugs; normalizing quirks for core plugins
• Unified versioning to assist with stabilityDev Kits released through the Tools for Apache Cordova (http://taco.tools)
• Support for Immerging Native APIsDay Zero Window 10 support; Android Marshmallow support in Nov.; iOS9 support Dec.
Web Apps Native Apps
Breadth of Devices Rich ExperiencesPinned Sites
ManifoldJS
Apache Cordova and it’s downstreams
TabrisJS
Ionic
Titanium
NativeScript
Xamarin
ReactNative
WEBVIEW
Transpilers
Full access to device capabilitiesNative performance
Highly customized per device
Arbitrated access to device capabilities Web performanceMaximum code sharing
Thank you.@ryanjsalvaVisual Studio Tools for Apache Cordova