To develop one or several apps, is in itself is not particularly difficult today. Assuming that there are reasonable objectives from a business perspective, as well as goals from a communicative and user experience perspective, apps are a good way to reach and engage users. However, the question you soon will find yourself asking is: – How do we manage all the apps that we have, and all the new we would like to develop? Me and a number colleagues have spoken on the topic from various angles, and I think it is more relevant than ever to pause and consider the different approaches and strategies available.
Should you today decide to create a mobile application, you should first consider defining a development strategy, especially if you want your app to be deployed on multiple platforms (iPhone, Android, Windows Phone 7, Blackberry). Either you can decide to develop everything from scratch on each platform, eg IOS and Android etc. Or you can choose to use a framework that abstracts on top of the platforms like PhoneGap. But even if you decide to use PhoneGap, you will still need to consider whether you want to use a specific JS library, specifically designed for mobile applications, such as Sencha and jQuery Mobile. Alternatively, using a more general library Zepto or jQuery.
All together there will be many decision to be made, and all choices have consequences. Meanwhile, we are still quite early in the mobile development, and there are no objective “best practices”. In this film from our lunch seminar with Pamela Fox, she explains why she decided to use PhoneGap in the development of her current project, and not least, what she learned along the way.
I promise to get back to the pros and cons of using abstracting frameworks vs. native in future posts!