Redweb - Blog - Mobile Apps - the right technology

Skip to content

Mobile musings: the right technology

Fri 24 Aug 2012

If there is one thing that is impossible to ignore in Digital it is the rise of mobile.  Phones, tablets are everywhere and more people are using them, not only as convenient devices for content consumption on the move, but as primary computing devices replacing desktops and laptops.  This trend is almost certain to continue over the next few years.  And for developers it presents a problem; what technology should we use to build mobile and table applications and functionality?

Unlike the PC market, there is no platform monopoly for mobile apps.  Apple’s iOS, Google Andriod, Microsoft Windows 8 and Blackberry are all significant players.  The problem for developers is that each platform has a different development platform language, toolset, API and other elements which can make creating cross-platform apps complex, time-consuming and expensive.

It is primarily for this reason that people have been looking for the 'silver bullet' in mobile app development – and otherwise known as the web app.

Are apps dead then?

In many ways, the use of web apps seems like the perfect solution.  You can write your application in HTML5, CSS and JavaScript and have an app that works across nearly all mobile and tablet platforms.  There is so much that can be done with these tools now that there aren’t many cases where you would need to build a native app.  Even accessing platform functionality such as cameras, accelerometer etc. is possible, as is building and selling the app in native app stores, both of which can be achieved using third-party 'hybrid' frameworks such as PhoneGap

In fact some people would argue that unless you are developing a complex game, or another form of graphical or processor-intensive application, there is no need to write a native app as functionality can be created either via a responsive or mobile web site, or a web-based app. Some people think that this will ultimately mean the end of the native app. 

But not me!

Facebook have gone native

Here is an illustration as to why; today Facebook have launched an updated version of their mobile Facebook application, re-written as a native app.  The previous version had been a HTML5 application and had received much criticism for being slow and frustrating to use.  As I use the app myself I can understand the criticisms, and the new version is indeed faster than the previous.

I find this extremely interesting because, on paper, Facebook is the kind of application that you would consider to be a good candidate for being a web-based app.  It primarily consumes and displays web based content and it doesn’t utilise much in the way of native device features or high end graphics/animation. 

It was, however, a relatively complex web app and here I think I am reaching my point.  An application doesn’t have to be a game, or a graphically intensive application to warrant being built as a native app.  Any application with sufficiently complex logic that has been written in JavaScript is going to be significantly slower than if the same logic is written in a language native to the platform (i.e. one that is compiled rather than interpreted).  At some point, the complexity of that logic will reach a point where the performance negatively affects the user experience, just as it did in the web-based Facebook app.

The native app aten’t dead

Like everything else in the computing industry the choice of platform for developing mobile and tablet apps comes down to the old saying of “the right tool for the right job”.  HTML5, CSS, JS, and hybrid tools such as PhoneGap certainly have a place in app development, but they are not the silver bullet for writing cross platform mobile apps – at least not in all circumstances.  There is no getting around the fact that native apps are much faster than web apps.  Sophisticated apps that need raw power and performance to provide a good user experience are better served built as native applications. 

Will this change in the future, as the processors in mobile phones and tablets become more powerful?  Maybe; but I suspect not.  It hasn’t happened on the desktop.  What we have seen is that as processors get faster, software becomes more complex to take advantage of the power and user’s expectations of what the software can do also increases in line with this.  I suspect that native Apps will be with us for a long time.

Wayne Rowley

Wayne Rowley

Head of Development

I am the Head of Development at Redweb. I have spent nearly 10 years working as a software engineer specialising in the development of websites and web applications and a couple of years prior to that building Microsoft Windows desktop applications and services.

View full profile

Add a comment