I previously wrote about why I felt The Cloud Will Win. In this post I’d like to go into more detail on why I think WebApps are the future of software development, especially for mobile devices.
There are a couple of reasons that Apps are all the craze, first of all “smart phones” were not particularly that powerful and secondly they’ve been bandwidth limited. Most mobile devices have the processing power equivalent of a desktop computer from about ten years ago. The primary network connection is the phone network, which is at best 4G but more likely to be 3G. Because of these limitations it made sense to create native applications you’d download and store on the device, which would execute native code that would process faster and possibly with hardware acceleration, and only use the data connection when absolutely necessary (especially considering the cost of air time for those without the increasingly elusive “unlimited” data plans).
A third reason for the success of mobile apps is they are very easy to monetize! From a developer, publisher point of view it makes it easy to get a little bit of money for your code or service. Since a lot of developers also produce an ad-supported, feature-limited, free version it creates an incentive for users who like the app to upgrade to a richer, ad-free paid version. Apple’s App Store and Google’s Android Market, now joined by other mobile marketplaces, make it easy for developers and publishers to gather the money since the “store” hosting the app for download also handles processing the sale (for a percentage of course). That frees devs and publishers from the need to maintain their own merchant accounts and secure servers to process the purchase, as well as frees them from the liability should the data be intercepted.
The first two reasons for mobile apps are becoming less and less important as mobile devices become more powerful and cell networks get faster. With more capable devices and faster networks many mobile apps could easily be shifted to hosted WebApps instead, especially if they are free and/or ad supported. From a developer/publisher viewpoint this also frees one from potentially strict “official marketplace” submission requirements. In short, there is no third party approval process. It is still possible, of course, to target specific platforms with WebApps, but it is also possible to create a single version that can be served up to desktops, laptops, netbooks, tablets, smart phones and use web coding or server-side processing to tailor it to different operating systems, screen sizes, and input methods. That nicely fits the old notion of “write once, run anywhere” that was an early dream for the web. I’ve personally found it rather amazing how maleable a site can be just with CSS media queries (this blog is a good example – if you’re on a desktop just resize your browser down to about the size of a phone screen and you’ll see the “mobile” view).
The third reason for the success of mobile apps is beginning to also show signs of increasing irrelevance with the introduction of in-app purchases. Presently, as implemented by Apple, this is still processed through their tightly controlled App Store and specifically prohibits directing users to buy at a website without also offering the same sale within the app (Apple hopes most users will stay within the app and make the purchase, of which Apple gets a percentage of the sale). It doesn’t make any difference to the end user, but it makes a difference to developers and publishers selling the upgrades or subscriptions. That’s where the WebApp may be a better alternative for providing a free, demo, introductory, ad-supported version with an option to upgrade. That upgrade could be the purchase of an app through an App Store or official Market site, for some devices a direct download (for example Android devices can be set to allow installing apps from “Unknown” – a.k.a. unofficial – sources), or even selling access through a paywall that lets you use a more feature-rich and/or ad-free version of the the WebApp (which, of course, would take Apple and their App Store – and cut of the take – out of the picture entirely). HTML5 techniques mean user data could still be stored on the device (in storage space that can often not be expanded), or could be stored with a user account in the Cloud, thus using the device only as an access point for the WebApp. What it means for developers and publishers is independence from app marketplace submission guidelines and sharing sales revenues with the shopkeepers. For end users it means devices that aren’t filled up with apps and investment in potentially platform-independent products and services so users aren’t “tied” to iOS or Android or WebOS or Blackberry but can freely move between platforms – even using their mobile apps from a desktop because it is the web browser that is the portal to the app, not the operating system.
Ultimately this is why WebApps will win.