This article was prepared by a guest contributor to ProgrammableWeb. The opinions expressed in this article are the author's own and do not necessarily reflect the view of ProgrammableWeb or its editorial staff.
As most of us in the developer community already know, there is a major ongoing debate over what technology to build mobile apps with: native, hybrid, or mobile web/responsive design. For most developers, this is a zero sum game: Some advocate always using native, others advocate always using hybrid, etc. My argument is that you should use all three. It just depends on the stage your project is in.
Deployment is exactly the same as a web page because it is a web page—just one optimized for mobile. After you get feedback from your first few users, you can just make changes to the mobile web app, then the next person you interview will automatically have the new version (as well as anyone who still has it from a previous interview). This leads to much faster iterations of your design.
After your app has more traction and is more mature, potentially the time to go native has come. After you have fleshed out what the app is all about and you have a stable user base, you can dive deeper and take advantage of the local native platform and user experience such as direct access to the hardware or some UI components not exposed via the hybrid approach. Hopefully your app has generated profits or enough use to warrant the extra cost of a rewrite with multiple code bases.
If you read this and think I am crazy, let’s take a look at some of the most-used apps on a mobile device today. By far, the most-used app has to be Facebook. Facebook started out in the early days of mobile as a mobile web app. You would go visit touch.facebook.com (it still exists and is still quite good) to have an early Facebook experience on mobile. This was a way for Facebook to get on devices super-fast, avoiding the app store and platform fragmentation. They also learned how their users interacted in mobile, which is different from how they interacted with the web site. Since Facebook was a popular web site before a mobile app, Facebook developers built the mobile web app as a stopgap while they built their mobile app. This got Facebook a great mobile presence very quickly, blocking a new social media platform from end-running Facebook on mobile.
Facebook then built a hybrid mobile app, put it in the AppStore/Google Play, and made it the company’s flagship mobile presence for more than four years. This let Facebook ride the Android wave and allowed the company to save development resources with only one code base. Lastly, once Facebook became the dominant player, it moved to a native app. At this point Facebook was profitable and had close to a billion users. (One could argue that Facebook waited a little too long to go native, but the overall strategy of mobile web app to hybrid to native was correct.) If you think Facebook is an outlier, LinkedIn did the exact same thing.
While this advice won’t fit every situation, it is definitely applies to most situations. Good luck with your mobile development!