What journalists need to know about the difference between Web apps and native apps
Just a few years ago, usage of apps lagged Web browsing within that world. But we now spend more than 80 percent of our mobile time with apps, according to Flurry Analytics, comScore and NetMarketShare data.
That means news publishers need to prioritize app development when crafting their mobile strategies, as Tom Rosenstiel noted in a recent Poynter.org article summarizing comScore research. But when it comes to developing those apps, publishers have at least two options:
1. Native apps run alongside the browser. They're built with tools specific to the device's platform (usually Android or iOS), give a publisher prominent placement on a user's home screen, and benefit from a raft of sophisticated features.
2. Web apps run within the browser. They’re built with a collection of advanced Web technologies -- but, like native apps, emphasize utility over content. Though lacking the power of their native counterparts, Web apps can be equally capable for users and may be a more cost-effective alternative for publishers.
Both kinds of apps provide ways to help news consumers solve problems. But they offer different paths to those solutions, both in terms of the resources needed to create them and the channels available for distributing them.
A Web app runs in the browser. Technically it’s a Web page, but in practice it looks and works like an app. It’s designed to allow users to accomplish something.
Combining these tools allows for exciting possibilities, including geolocation, multi-touch, video and audio, device orientation detection, and offline storage. Not long ago, these capabilities were exclusive to native apps. But now the Web is catching up.
Web apps offer three key advantages:
1. Because the Web's technologies and underlying standards are open, changing the tools that underpin it can be slow and messy. The end result, though, is a platform that works consistently regardless of what device is used. That lets publishers build something once and know it will work on many devices, and means only one product has to be maintained and updated.
3. Web apps are easy to integrate with content elsewhere on the Web, including other Web apps, sites and the APIs provided by various Web-based services.
Native apps are built with a mix of platform-specific technologies. The Android and iOS ecosystems command the lion’s share of the marketplace – about 90 percent of all mobile devices (phone and tablet) run one of these two platforms. Windows Phone is a distant third with about 3 percent market share, and a hodgepodge of other platforms round things out.
Most app developers are concerned only with Android and iOS, which simplifies things somewhat for publishers. Unfortunately, these platforms run on completely different technologies.
Android programmers mainly build apps with Java, making occasional use of Python. Underlying code libraries – the building blocks of the Android platform – rely on a combination of C and C++. Each is a separate language and, in the mobile world, all are specific to the Android platform.
iOS developers, on the other hand, use the Objective-C programming language, the Cocoa Touch framework and Xcode, a collection of programming tools.
Given the range of technologies involved in development and the clear division between the Android and iOS camps, native apps present a workflow challenge for publishers: While it may be possible to design an app once, the full development cycle has to be completed at least twice, and even then 10 percent of potential mobile users are left out.
Developing native apps in sequence is a common workaround, but publishers must decide which platform comes first. Android is the clear frontrunner with about 52 percent of the overall mobile market, but iOS users spend much more money on paid apps. So publishers must decide what goal to prioritize: a larger audience or more revenue.
Five key advantages set native apps apart from their Web counterparts:
1. They can deliver a better user experience. Web apps always include elements from the browser, such as the address bar and other related tools. On small screens, that’s precious space that could be devoted to app-specific controls. Certain user interactions, such as swiping a page to move or change content, can also be more fluid and consistent in a native app.
2. They integrate more closely with the device’s hardware. This may change as Web technologies progress and become more capable, but for now native apps have the upper hand. Accessing the likes of Bluetooth, USB, telephony and GPS remains challenging -- if not impossible -- with Web technologies, while other hardware (including cameras and videos) can only be accessed in a limited way.
3. Native apps allow for close integration with the operating system and other apps. This presents interesting possibilities in which one app can “talk” to another, exchanging information or working in tandem to perform a task for the user.
4. Web apps stop running when the browser closes, but native apps can run continuously, even when they’re not active. This allows user alerts and notifications.
5. Native apps have the potential to run faster than Web apps. This is especially true for graphics-intensive apps such as games.
Distribution is a critical distinction between native and Web apps. Web apps are accessed through a browser, and users often find them while surfing a mobile site or searching. But native apps must be accessed through a platform-specific store, typically Apple’s App Store or Google Apps Marketplace. Native apps can be free, but if paid, Apple and Google take a 30 percent cut of the sale price.
It’s possible to charge for a Web app, though systems for doing so need to be established. Users that do buy Web apps tend to do so through a subscription model rather than paying a one-time download fee.
Native and Web apps represent two clear-cut choices for publishers, but variations and blended versions of these models do exist.
Publishers can marry the advantages of native app technology with the Web's workflow benefits by developing a Web app in a native wrapper. That means building a standard Web app, then inserting it into a shell that allows it to function like a native app.
While this doesn’t enhance the capabilities or speed of the app, it does break it out of the browser, resulting in a dedicated icon on the user's home screen, and makes it a candidate for purchase via an app store.
PhoneGap is one of the most popular ways to put a native wrapper around a Web app. It provides a means of creating wrappers for several platforms at once, and largely automates the process. Once wrapped in native code, the Web app is ready for distribution through platform-specific stores.
Native and Web technologies continue to advance, though the Web presently enjoys a faster rate of development. That’s led to a shrinking gap in the capabilities of Web and native apps and renewed interest in the promise of Web technologies. Some people, including usability researcher Jakob Nielsen, have predicted that Web apps will become the clear favorite before long.
Still, native technologies are also advancing and offer compelling advantages for publishers that have adequate resources. And in some cases they can deliver functions that are still beyond Web-based approaches.
In the end, publishers need to be clear about what they want to accomplish with their app before deciding on Web tools or going native. If an app's features don't demand the extra capabilities or speed of a native app, a Web app may be the best bet. It will work on almost every mobile device, use development skills that may already exist in the newsroom, and offer a wider range of distribution options.