Guest Post: Why we chose HTML5 over Native apps

This is a guest post by Keld van Schreven, CEO of Diary.com

Everyone has the same headache of deciding how to build their apps. Native or HTML5? Everyone is thinking about HTML5 Apps and talking about it if they should invest in it for their own app development, but there isn’t much practical help on how to do this. There are so many questions to answer. What device am I going to target? What’s the product function, does it rely on the handset features heavily? What framework to use? Are they well supported? Whats the performance going to be like? Will it affect the user experience?

We chose HTML5 ahead of native. The iPhone and Android apps were built with PhoneGap and Sencha Touch, and uses Flurry for analytics, via a PhoneGap plugin we developed. The performance of the Diary Mobile App, with swiping, scrolling creating and moving around in the app was the biggest challenge.

Here’s Kenneth Lee, Diary.com, CTO:

“When I was first building this app I was always looking for affirmation of what to build it with, without rejection worries. The app proves a combination of a Javascript Framework with PhoneGap works well. I have to say it wasn’t easy, performance was a huge issue at times it took days to figure out, and simple things like too much logging and poorly constructed ‘for’ loops actually made our app unusable during our journey. The app uses a lot of Ajax calls and stores everything in HTML5 Local Storage. Sencha Touch is quite a beast and we’ve had to patch quite a lot of it to make it more performant and apply bugfixes. We built two Phonegap plugins; a Flurry API PhoneGap plugin for iOS (to be released open source in the future, and another to use the Local Notifications on iOS (also open source plans) We built an entirely REST API for which the app communicates with to make it as efficient and fast as possible.”

We also released our Android App in June using Phonegap and Sencha Touch, we had some serious issues with the performance of Sencha Touch on some of the input fields that we had to provide fixes for. Again we had to do a lot of modifications to issues that weren’t very well supported.

We’ve found that Diary Mobile compliments Diary.com and makes it easy to add and edit plans, birthdays, tasks, and journal posts wherever you are. Diary Mobile syncs with instantly, providing an irreplaceable backup to your mobile diary. After a lot of testing we realised that Diary.com has over 24 use cases and with its app. The Diary Mobile HTML5 App for mobile devices is available at iPhone Appstore via iTunes and Android via the Android Market.

In summary once you have gone through your checklist;

• Target handset(s)?
• App feature set?
• Handset capabilities needed?
• Resources available (remember building multiple native apps for different OSs is expensive)?
• User experience needed?

Then you can decide if you should invest time into HTML5.

There is no right or wrong way deciding with native vs HTML5.

Native is not going to disappear, native/HTML5 hybrids may even become voguish in the future.