Mobile clients for SaaS web apps

So here is my take on the subject.

I don’t see it has html5 vs. native. Your “core” should be native. However, it can be as simple as booting your native (objective-c / java) app and loading a web view. From there you can run any sort of html5 mobile framework (ie. sencha) if you want to go that route.

Since you are starting with a native “core” if you want to do anything native it is pretty easy to access something native. PhoneGap is sort of a wrapper for all this. Personally I think PhoneGap abstracts too much away. If you take my approach you are not limited on any native functionality.

An example would be animations between screen. In the iPhone that nice sliding effect between screens. Yes, html5 (sencha) can do this but not as well as native. With very little effort you can do that natively if you use a native “core” still making the entire screen html5.

An approach we have taken in the past is build the entire app in html 5. This gets it out the door fast. Then circle back and convert sections of the app to native.

I would use Titanium (http://www.appcelerator.com/titanium) over phonegap. Titanium will do everything phonegap will do with the same ease but if you want to go more native Titanium will not limit you.

For those on a tight budget I think Titanium is the best option. Not sure Phonegap / Sencha offers you any advantages over Titanium.


With all that said. I think now the phones are getting faster CPUs and more ram html5 is a very real option (I would not have said this a few years ago). However, I think the better option is a hybrid approach. Checkout the Basecamp iPhone app. They did a really nice job of mixing html and native.

I think in general your “template” should be native (how you navigate your app) and your content could be html5.

For us at Cloudmanic Labs (http://cloudmanic.com) we are still just playing with html5. Most of our tests indicate that native still gives that user experience polish that we want.

Lastly, if you are just building for IOS xCode is pretty slick. Just take the time and learn to program objective-c.