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.

Who is Doing the Development?

Mike Roger has a great post on LinkedIn on “A Guide to Finding the Best Mobile App Development Company”. I particularly liked the part “Are they a third party company? Or develops apps on own?”

Mike explains…

“When you outsource your app development to any third party company, they further assign the work to the development company with commission added. Besides, you have no idea whom this third party company may outsource your project too – maybe they can get a cheap app development company to your work and you may end up with a total failure or below-standard performing app.”

There’s a lot of this going on and it isn’t new. Read Mike’s article to discover how you can combat this by knowing “about the experience of app developers and designers on board”.

The problem is not just about cost and quality. It’s about communication. I advise you assess the end-developer’s communication skills as much as their technical skills. A long time ago, in the graduate interview for my first job at a large UK software consultancy, I was asked to write a short essay on anything. The key test was if I couldn’t communicate, I wasn’t considered any good for software development. I am not suggesting you ask the end-developer to write an essay. Instead take a look at the tips in my past post on The Importance of Communication and Foresight during App Development.

How Long Does It Take To Develop An App?

It’s strange how similar things come along at the same time and this week it’s multiple people asking me how long it would take to develop an app when the details of what’s in the app haven’t even been defined yet!

At first its might seem surprising that people might want to know or even request this but if you think about it, it’s one of the first questions that might determine whether an app is worth developing or it might help drive how much functionality should be initially defined for an app.

So the question is really “How long does it take to develop a typical non-trivial app?”. I answered this previously in my Mobile Development Primer under the heading “Work out How Much It Will Cost”. The answer is about 6 to 8 weeks.

If your app is doing more than one main thing than you can factor up the time and cost. How do you determine this? Well, if your app could be split into two (or more) apps and still have significant functionality then you should obviously be budgeting for proportionately more time. An example might be including complex instant messaging into an app whose purpose is really to do something else.

Other common factors affecting timescales include the degree of testing, the degree of branding and the use of non-standard UI/idioms. For example, if you want your app to look more like an iOS app on Android which, strangely, some people still seem to want, then it will take longer and cost you more.

Demand for Mobile OS Developers

I have been looking at the demand for Android and iOS developers in the US and UK. US oriented WantedAnalytics has some stats on the most in-demand mobile operating systems for February 2014…

wantedanalyticsplatforms.png 

Their hiring scale, in range 1 to 99, scores skills according to how hard they are to fill. All of the above operating systems score around 80 signifying they are hard to fill.

Meanwhile, in the UK, ITJobsWatch  lists the top wanted operating systems for the 3 months to 26 March 2014…

itjobswatchskills.png

Here in the UK it’s extremely difficult to recruit experienced mobile developers for a permanent employee role. Instead, most work is done by freelancers like myself.

Two observations…

  • The situation has reversed from two years ago when iOS was in more demand than Android.
  • It’s interesting that demand for Windows and Linux developers still far exceeds, by an order of magnitude, that for mobile OS developers. I guess it’s due to all the legacy software out there. What with Mobile Eating the World, we can only expect the demand for mobile OS developers to increase and jobs become even harder to fill.

Questions Asked by Mobile Developers

vendorstack.pngVendorStack have a useful free Slideshare presentation on seven hard questions asked by mobile developers.

It covers…

  • How do I get my app to rank higher on the app stores? 
  • What Metrics Should I Be Measuring on My App? 
  • What tools can help me QA test quickly on Android? 
  • How do I get our users to rate my app? 
  • What is the effectiveness of incentivized installs? 
  • Who do you use for crash reporting? 
  • What should I know before I develop on a backend-as-a-service? 
They interviewed 27 founders, developers and vendors to identify the questions and derive some recommendations.

Android Upgrades and Dumb Developers

sony.pngSony has a revealing article educating consumers about the technical differences between Android Gingerbread and ICS. In summary, users might prefer to stay with Gingerbread because ICS needs more powerful hardware. Those that upgrade might experience performance related problems.

This takes me back to last year when Google announced their handset unity initiative. At the time I concluded that consumers had expectations that probably weren’t viable. I mooted the idea that maybe OEMs should abandon major upgrades and only provide bug fixes. This wasn’t taken very well and I received lots of angry feedback.

Personally, having upgraded both iOS and Android devices in the past, both operating systems have exhibited much reduced performance after upgrade. I still question the merits of major upgrades.

I was especially surprised that one of the main problems Sony uncovered is very poor coding. Many developers have accessed SQLite databases synchronously rather than asynchronously. This means that, under ICS where SQLite is slower, you are more likely to get a fatal application not responding (ANR) error. This shows how dumb some developers are and in another way, begs the question why such API calls aren’t mandatory asynchronous calls by design.

Incentives for Android Developers

android.gifThere have been many articles and posts recently on how some developers are losing interest in Android. As mentioned on the OStatic site, it’s all about economics. Currently, if you are relying on selling the app, in-app purchases or ad funding then in the majority of cases the app isn’t going to be viable. The types of apps that tend to be viable are those where the revenue opportunities lie elsewhere (e.g. Evernote relies on server service, pizza ordering app relies on purchase of physical goods) or they are just marketing/PR apps.

While I am still seeing Android smartphone app development is still on the rise, the area that has suffered most is tablet specific apps (Here’s a list I created – there aren’t many). As mentioned at Mobile Monday London this week, the current competitors to the iPad have flaws in that they make it more difficult for developers to make money.

The OStatic article concludes that Google might have to put in place economic incentives for Android development. What could Google do? Here are some ideas…

  • Have an Android Developer Challenge (like the first two) but just for tablet apps or just for Android Design conformant apps.
  • Lower the commission fees. Does Google really need to make money from apps? I think they might even be able to lose money given this isn’t their main revenue stream nor reason for having Android.
  • Improve the payment mechanism to make it open to many more people (e.g. Partner with Paypal?)
  • As with Apple, champion some high quality, higher price ‘own brand’ apps that show apps can be worth paying for and encourage people to buy other high price apps. Related to this, promote quality useful apps in the Play Store rather than, what I see to be, useless rubbish and games. It’s all about setting the ‘tone’ of the Store. [Google renaming the Android market to ‘Play Store’ hasn’t helped in this respect]
  • Think about providing app subscriptions in such as way that would be acceptable to newspaper and magazine publishers. i.e. Provide avenues to market that Apple doesn’t provide.