Mobile app development: native, web-based or hybrid?

The gap between HTML5 and native apps is closing and browsers continue to  advance their capabilities – there’s never been a more confusing time to decide on your mobile development platform.

“HTML5  – write once, run everywhere!”

With HTML5 (HTML,JavaScript and CSS) you write you app once and it runs on multiple mobile devices. There are a bunch of UI frameworks available  (JQuery Mobile, Sencha Touch) that offer widgets that work well across devices. You are free to ship product updates as often as you like and everybody is on the same version of your code . Sounds really appealing right? Well it is but there are some trade-offs to consider. The user experience won’t be tailored to the device and you don’t have access to to device specific features like the camera, calendar or offline capabilities. Your app start up time will be slower than a native app and you can’t easily provide offline capabilities.

“Native apps look and perform the best”

Native apps are specific to a  single mobile platform (iOS ,  Android , Windows Phone) and they are built using the development tools and language that the respective platform supports. They look and perform the best and offer deep integration with all the device features (camera, calendar , fast graphics animation etc) but they take longer to build , require specialist skills and you’ll need to build out a native app for each device you support.

“Hybrid Mobile Applications – the best of both worlds?”

Hybrid apps are downloaded and run on the mobile device inside a native container but they are mainly written in  web technologies (HTML5, CSS and JavaScript). A hybrid app leverage’s the device’s browser engine (but not the browser) to render local HTML files. PhoneGap is one of the most popular solutions for creating hybrid mobile apps. You get to code in HTML and you have access to the camera etc through the JavaScript API’s .To most users, a hybrid app can be almost indistinguishable from a native one: it is downloaded from the app store or marketplace, it is stored on the device, and it is launched just like any other app. Gartner expect that 50% of the mobile market will be hybrid apps by 2016.

So how do you decide on your mobile development platform for a new app ?

The short answer is it all depends.There are a few key questions you need to consider.

What sort of app are you building?

If you are developing a game or an app that needs to take advantage of performance boosters like GPU acceleration and multi-threading  go native.

How are you  going to distribute your app?

If you expect users to discover your app via an app store you must go native or hybrid.

Do you require offline capabilities?

Native and Hybrid apps support offline capabilities.

How much time (and money) are you  willing to spend?

If money is no object or you are targeting one specific a native app will likely deliver the best overall user experience as long you build it properly.

Consumers don’t care

At the end of the day consumers don’t care – the best user experience will win.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s