Mobile Platforms as Business Tools

Vision Mobile’s latest State of the Developer Nation Q3 2016 report is worth reading. It contains insights generated from 16,500+ developers, from 150 countries across mobile, desktop, cloud, IoT, augmented and virtual reality.

Of interest to mobile developers is that 47% of professional developers now consider Android their primary platform (vs 31% for iOS). Vision mobile says there have been a move away from monetisation via paid downloads, in app purchasing and advertising to apps that are business enablers. They also say there’s a shortage of talent familiar with Apple platforms to fill professional roles.

visionmobilemovingeast

My personal view is that the huge Android market share has created pressure on iOS wielding (and hence Android averse) CEOs to take it more seriously. For every iOS-only app there has been the weight of Android end-users asking “Where’s the Android app?”. At last, mobile platforms are being considered as business tools rather than regions.

Smartphone Shipments to Grow 5% in 2016

Canalys has a new press release where they say Smartphone shipments to grow 5% in 2016. This is despite the fact that Apple is expected to see its first annual decline.

canalyssmartphonebyregion

It’s interesting that while most of the growth will be outside established markets, EMEA and North America will still see a slight growth.

We are now in a stable phase where iOS and Android market shares are likely to stay roughly as now. This provides some medium term stability for mobile app developers choosing their mobile platforms.

Time Estimates for Porting

One of the first questions I usually get when people come to me to port apps is ‘How long will it take’? A very rough estimate is the same order of magnitude it took to develop the iOS (or Android version). Obviously, you will have probably re-designed and re-implemented parts as you developed for the first platform. If you take off some time for such re-work then this will give you a very rough idea of the effort required for a port. Yes, Android and iOS have their quirks, testing and app review respectively, that can conspire to complicate timescales but on average, iOS and Android apps take of the order of the same effort. The projects I have seen that have had vastly different timescales per platform has been mainly due to differing developers having totally different personal approaches to development.

When porting either way, discuss with your developer how the screens might be represented on all the target screen sizes and orientations. For example, you might need to remove features or restrict orientations in some circumstances. These days, iOS also needs to use adaptive layouts so don’t start demanding or expecting pixel perfect layouts as used to be the case. Thinking things through beforehand will enable more accurate effort/time estimates.

Your developer will need to analyse what parts of the app need to be ported line by line and which parts are better ported by examining the intent of the app. Complex business logic tends to need to be ported line by line while os-specific things need new code that follows the intent/behaviour of the donor app.

When porting from Android to iOS, I recommend you read the App Review Guidelines carefully, even if you have previously published an iOS app. The guidelines have changed over time. I seem to spend considerable amounts of time explaining things to product owners who ask me to do things that won’t pass review. However, it obviously saves a lot of time not trying things that won’t ever pass!

There are more tips and hints in my post on Porting iOS to Android.

mobiForge Device Use Insights

mobiforgemobiForge has a new article showing Apple losing share, Samsung and Huawei growing in Q2 2016.

The report has additional insights that are of more interest to developers. Also note that numbers are based on web traffic rather than new device sales so give a better insight in the installed base rather than short term buying trends.

First of all, the change in Apple web traffic depends on the country. You can use this to imply changing device ownership in your particular country…

applewebtraffic

The stats on screen size vs country also provide clues as to what screen size you should be optimising (your designs) for based on your target country:

screensizebycountry

More stats are in the full report.

Google Training 2 Million Android Developers

economictimesIt was with some disappointment that I read that Google aims to train two million Indian developers on Android platform. It’s not the competition but the number of extra people who will end up ringing me to see if I have excess work that can be outsourced. I get a few such enquiries by phone and email every week. They must be desperate or misinformed because the kind of work I do is for people who definitely don’t want their work offshored.

In many ways, training two million extra Indian developers misses the real problem. The fact that the existing Indian developer base is already contacting me eager for work shows there isn’t a supply problem. For India, the real developer problem is one of incorrect expectations. Creating yet more developers that say ‘yes’ to everything and then under-deliver isn’t a solution. Instigating more projects that will need excessive developer management isn’t what’s required. Instead, Google and the Indian training partners should be looking to impart cultural, software process and engineering skills as opposed to just Android skills.

App Boom and Development Directions

techcrunchThere’s a thought provoking article at TechCrunch where it’s said that ‘The App Boom is Not Over’. The author points to data that shows that app revenue is expected to continue growing possibly driven by increased subscription revenue.

From my position, people are still looking to have apps developed and we seem to be in a period of consolidation where apps are being ported from iOS to Android and vice versa.

I believe that gaining revenue from selling apps is indeed waning. However, using apps to gain revenue by other means, through what they do, has never been stronger and we are moving past ‘infoware’ to more useful apps that do real things and provide value to users.

Developers such as myself are having to diversify AND specialise. I have had to diversify back into iOS development as existing clients have been demanding both iOS and Android apps. I seem to be porting both ways these days. However, I have also been starting to specialise in specific app (domain and technology) niches in order to continue to attract leads for work.

Thoughts on Android Instant Apps

androidThe big news from Google I/O is Android Instant apps which will allow apps to be run from a URL without installation. Once they have been used, they will disappear and not appear in the usual applications list.

My first thoughts were that this will be very useful for one shot apps where the user needs to do something just once. However, I am not as overly enthusiastic as some some of the technical press. First, you won’t be able to use background services. This makes sense as it’s a quick one-off run of an app. However, many apps use services and re-architecting them to also work without a service is significant extra work that somewhat goes against Google’s aims of simplicity in converting apps to support Instant.

A larger barrier is that this obviously won’t be supported on iOS. Most projects are on iOS and Android these days and functionality needs to be similar on both. You can’t, for example, have an Instant car parking payment app just on Android – it’s a dumb thing to do. Non-orthoganal functionalty across iOS and Android tends to get used less.

Instant apps will mainly be used with URL-producing mechanisms such as QR Codes, NFC and Physical Web Beacons. In some ways the Physical Web/Eddystone and Instant apps are a great marriage. In many cases the Beacon URLs don’t do enough and a simple single use app will bring people back into app-land where a lot more functionality can be provided.

Mobile OS Installed Base

Tomi Ahonen has a useful post on his blog showing the latest installed base numbers across mobile operating systems. Installed base numbers, as opposed to current sales market shares, can provide a better view of the real makeup of the user base…

tomiinstalledbase

Tomi says…

“Note that in my model I already had a very strong long-life factor for the iPhone and the iPhone installed base has for this whole decade been above the actual unit sales market share – due to the long life span of iPhones”