For a couple of years now, we've been talking about apps for a multitude of purposes. Mobile apps continue to be the preferred way to deliver new services or content to mobile devices.
But the whole idea of the "the app" might be heading for a big change. A day may soon come when, instead of visiting the App Store or the Android Market, you'll just click a link on your homescreen to launch an app in your browser.
[ Also on InfoWorld: HTML5 not yet solving mobile dev issues. | Get the latest news and insight on Android and other mobile technologies with InfoWorld's Mobilize newsletter. | Learn how to manage smartphones in your business with our Mobile Device Management Deep Dive PDF special report. ]
Native apps have ruled
When developing apps for mobile devices, developers usually build a "native app" -- the kind of app you buy at an app store and install in the memory of your phone. Native apps have been the de facto standard for adding functionality to your phone.
To this point, most developers would agree, native apps have looked better and performed better than their browser-based counterparts. Most users have looked at the mobile browser as something to avoid, because it's such a hassle to use -- especially when you need to input data.
Native apps have been more predictable than browser-based ones, too. Because native apps run from the phone's memory, they aren't subject to unpredictability and inconsistency in the way various mobile browsers render them.
In addition, native apps rely less on the network: Since they store much of their content on the phone, native apps don't rely on a network connection the way browser apps do. Browser apps typically reside on a server in the cloud and must constantly tap the cloud via a Wi-Fi or cellular connection for content. If that network connection is poor or unavailable, the browser app's performance may suffer greatly.
But native apps are troublesome
For a long time, developers with limited resources made apps for Apple iOS devices and Android devices because doing so enabled them to get their app onto the largest number of phones.
But this rationale is beginning to lose force, in part because marketing native apps in an app store is hard for developers. In the case of iOS apps, even getting an app accepted to the App Store. Though Apple applies the same set of criteria to each app submitted to it for acceptance, developers say that if Apple doesn't like an app -- for any reason -- the company rejects it.
Though developers have less difficulty getting their apps accepted at the Android Market, apps can quickly get lost among the store's thousands of other apps, many of which are low-quality programs.
Another problem for app developers is that they must create multiple different versions of their native app for different mobile operating systems (iOS, Android, and others) and in some instances different versions of those OS families. So developers have to spend a lot of time and money "versioning" their apps, instead of improving them or creating new ones.