Some of the web development tools that are getting quite a bit of attention when it comes to the topic of optimising websites for mobile and developing mobile web apps are JavaScript frameworks – as I mentioned in my [*shameless plug alert*] briefing paper on Mobile Web Apps
Two of the biggest names in this space are Sencha Touch & jQuery Mobile (which has now been built-in to the latest version of Adobe’s Dreamweaver CS 5.5). Both are freely available and enable developers to enhance the user experience by quickly and easily adding the kind of smooth transitions, animations and interactions that we have all come to associate with using our fancy touchscreen smartphones and their powerful mobile web browsers.
So…which one to use? Well, that very question has come up and garnered some feedback on Quora. So I thought I’d flag it up for you here (I’m nice like that, see).
The general consensus seems to be that Sencha is more robust and performs better than jQuery Mobile, with richer and smoother interactions and animations making for a cleaner – more “native feeling” – UI. However, it also seems to be agreed that Sencha involves a much steeper learning curve and is a bit lacking in the documentation area. One summation was, “If you’re simply looking to enhance a mobile delivered website, go with jQuery. If you’re looking at developing a richer web *app* then Sencha is the way to go, particularly if you’re looking at developing your app using web technologies and then wrapping it up for deployment as a native app using something like PhoneGap.”
So, like I say, I thought I’d flag it up. You can read the discussion on Quora at http://www.quora.com/Were-deciding-between-jQuery-Mobile-currently-in-alpha-and-Sencha-Touch-What-are-the-pros-and-cons-for-each and you’ll find that some of the comments link to other – possibly useful – resources.
But while I’m here I may as well point out a couple of other – related – things. First up is a “Quick Introduction to jQuery Mobile” that I spotted on Twitter.
http://www.coldfusionjedi.com/index.cfm/2011/6/29/jQuery-Mobile-Quick-Start-and-new-jQuery-class
And, secondly, is a topic of conversation that has started up around the whole business of mobile apps…native apps…web apps…(!!!) which I think is interesting. That revolves around the thinking in some quarters that if you’re building a web app for mobile you actually SHOULDN’T go trying to make it look like a native app at all. I think this is one for the designers and those interested in UX (I don’t think we really have any UX experts working in web teams in UK Edu do we?)…
http://cvil.ly/2011/06/19/pretenders-why-mobile-web-apps-should-stop-trying-to-act-like-native-apps/
Oh and my thanks to Mike Jones at MyMobileBristol for the above link :)
One point is accessibility, including how well the apps play with the platform accessibility features. I don’t know about sencha but both jQuery Mobile and dojo Mobiledo keep accessibility in mind.
@Steve Lee:
That is, accessibility for users of the Webkit browser engine. Users of mobile browsers by Firefox or Opera will be out of luck with dojo. Webkit is not the only game in town, and just because someone has an iPhone or an Android it doesn’t guarantee that they’ll be using a Webkit browser on their mobile device.
“if you’re building a web app for mobile you actually SHOULDN’T go trying to make it look like a native app”
You shouldn’t be thinking of web vs native at all, just think app and get on with designing something that simply works in context.
I don’t agree actually, Justin. Although I do accept your point at a higher level. I think if you’re creating a mobile app then you have to consider user experience, perception and – key – expectation.
The point behind that discussion is – I believe – if you make a web app but dress it up to look and feel native and it doesn’t match up (could be clunky animations and transitions for example) then you may end up shooting yourself in the foot because users are expecting seamless, fluid interaction but aren’t getting it. Now if they are simply coming to it thinking “web” then their expectation may be just that bit lower and, therefore, they’ll be more accepting. But if you’re trying to make the user feel they’re using something “app-like” and the experience doesn’t deliver…
So, high level decision around native / web…yeah, make something in context. But think about the user’s expectations of the experience. And, to be honest, that’s essentially what these frameworks are for – to enhance the experience of the “app” in general.
I researched a lot but finally found something useful.
Got a clearer idea,
If I want the app to be fully web based and no native, I will have to resort to sencha otherwise, if only UI is concerned, I can go for JQueryMobile
http://www.the4thdimension.net/2011/07/sencha-touch-vs-jquerymobile.html