Are web apps the future of mobile development?

How does a developer make their mark in an app store that’s overwhelmed with applications?

Which platform do you target? And are web apps the key to future success?

Written by

 

Search Apple’s App Store using iTunes or the Android Marketplace for 'to do list' and you end up with 700+ to do list applications on iOS and 600+ on Android. A staggering number of applications which has no doubt grown considerably since this blog post was published.

So when it comes to building your next mobile app, which platform do you target? Which app store will give you the most penetration?

Let’s take a look at the latest market share data from Gartner for Q1 2011 Source

 

Symbian

Android

RIM

iOS

 Microsoft

Other

27.4%

36.0%

12.9%

16.8%

3.6%

3.3%

 

Clearly there’s a lot of Symbian and Android devices out there but that doesn’t really tell the whole story. Looking at revenue share paints a very different picture as pointed out by Gregg Keizer of Computer World.

“Apple will reap more than three-fourths of all mobile app store revenues generated this year, but rival Google's growth is climbing faster, a research analyst said yesterday.” Source

Keizer’s source, iSuppli then goes on to suggest that Apple are expected to take 76% of mobile application revenue in 2011. 76%!! Well that’s it, develop for iOS! Well not exactly.  The iOS app store is saturated with applications as shown by my rather simple exploration of ‘to do’ apps. The iOS app store has over 350,000 applications for iPhone and iPad, what are you going to do to make sure people find your app? Okay I’m moving away from my point, a digital marketeer should probably step in here with ways of accomplishing this through social media and some kind of competitor analysis. I’ll move on. But just how much emphasis should you really place on making iOS or Android your primary app deployment platform?

I say look to all platforms equally, look to the web; build a web app.

Tell me, who exactly are you??

Now, I’m no software developer. I’ve dabbled with development on a few platforms and languages over the years, .net, Java, Ruby on Rails and C++ to name a few but I’m not a developer by trade. I even built my wife a web app for her iPad for Valentine’s Day. Okay, it didn’t work totally as planned, mainly due to Apple changing the way HTML5 audio auto-plays (or doesn’t) in their latest iOS release. But for 3 hours work I was pleased.

I have a real passion for mobile technology and have plenty of mobile app ideas (and accompanying domains) sitting there waiting for me to do something about. Not being a true developer, it would no doubt take me some considerable time to pick up a new framework, language and get to grips with the API. This of course is once I have chosen the mobile platform I wish to target first. Then after that I will have to continually update, perhaps start porting the app to other platforms, exploring other frameworks and API’s etc. That’s a lot of time for someone who is already a full time employee, married and father of two!

After considerable deliberation it would seem the web might be the answer I was looking for. After all, most modern smart-phones now make use of a HTML5 compliant rendering engine. I could develop the app using web technologies and make it accessible on all platforms. It would also mean my learning curve isn’t as steep as it certainly could have been, I’ll just need to brush up on HTML5, CSS and JavaScript. Sorted.

PhoneGap

But how does one make use of the app stores and online app markets if your web app is nothing more than a collection of assets sitting on a URL somewhere? In steps the like of PhoneGap. PhoneGap allows you to build an application based on web technologies (HTML, CSS, JavaScript) and author it as a native application to submit to the relevant app store. In simplistic terms it acts like a wrapper to make your application appear like a normal native application. As your web app is now recognised as a native application, it allows you to not only submit your application to the appropriate online stores, but users can install, launch it and of course you can get customers to pay money for it!

Write once and deploy many times

Using this method of developing mobile applications as web apps brings a number of other benefits including and most importantly; providing an easy way of building a cross platform application. In reality you are writing your application once, then compiling multiple versions for each of the mobile platforms. At the time of writing, PhoneGap can compile your web app to iOS, Android, BlackBerry, WebOS, Windows Phone 7 and Symbian. PhoneGap even allows you to harness API features such as the accelerometer, camera, compass, contacts and GPS meaning you’re still benefitting from the rich native functionality of each platform.

There’s not just PhoneGap making this technology available, Appcelerator and Rhodes also provide similar functionality and are worth checking out.

Where’s the catch?

Well, web apps aren’t suitable for all situations. For example, hardcore 3D gaming where you need to tap into the GPU (Graphics Processing Unit) and get good graphics performance. They’re also not well suited to applications that require really bespoke user interfaces. However, for most applications and mobile games, web app development is a real option.

And the future....

As the HTML5 standard develops and native web technologies mature the need for products like PhoneGap, Appcelerator and Rhodes will become less relevant. There will always be the case for building applications in native code for reasons explained above, but I truly believe all the major mobile operating platforms will adopt web standards as their primary application development process. Companies like HP have already based their mobile platform, WebOS entirely on this principle, allowing developers to build applications using HTML, CSS and JavaScript for mobile phones, tablets and touch enabled computers/laptops. Also worth noting are web apps on the desktop. Web apps such as Google Docs and Microsoft Office Web Apps have been maturing very quickly, allowing rich native client-like features through a web browser. Not to mention the recently announced Google ChromeBooks that are entirely based on cloud and web app technology.

Cloud computing and web apps are not passing trend, they’re here to stay. So break out your favourite HTML editor and start building your next app based on the web.

Follow me on Twitter

Google Buzz profile