Should the Web be your mobile solution?
Your product team wants a mobile solution that supports all the platforms. Your technical team provided an estimate that’s expensive and, more importantly, takes too long. Sound familiar?
Many organizations have a need for one or more mobile applications; these applications might be used by customers or internally as part of a sales tool or manufacturing process. Of course, creating any software application incurs costs, and choosing a native application as the solution will multiply those costs (a native application is an “app” that can only be used on a single platform like Apple's iOS or Google's Android). A mobile solution that relies on native applications means creating a separate application for each platform with very little overlap between them in terms of time and money spent on development and ongoing maintenance.
There is another mobile solution. A Progressive Web App could meet all your needs and wouldn’t require a separate application for each platform.
A Progressive Web App (PWA) runs in a Web browser, it's a Website with some extra capabilities that allow it to achieve near-native application functionality. If you think about it, most activities done on a mobile device involve viewing information — maybe an application that displays information about the weather — or collecting information through text fields, like ordering coffee for pickup. These interactions are easily accomplished using a PWA. And if your designers want want fancy effects, Web browsers have had mechanisms for adding animations and other visual "sizzle" for a long time.
It's also easy to engage your customers. When it comes to native apps, a lot of businesses are discovering that people have become wary of installing new apps on their phones and tablets; they may have concerns about privacy or don't want to give up storage space for another app. A native app almost always has to be installed by an out-of-band process through the platform's app store. PWAs take advantage of the Web’s existing strengths, and your audience finds your application through a link, perhaps from your home page or by using well-known online search tools like DuckDuckGo or Google. Simply navigating to the result downloads and "installs" the application.
Existing browser features allow PWAs to be closely integrated into mobile devices. Once the PWA is on a mobile device, it can be used without a network connection (of course, if your application needs to exchange data over the network, this will be a problem, but native apps will suffer this as well). A PWA can interact with the phone or tablet even when the browser isn’t open: the PWA can display push notifications or update data from a remote server. It can also store user preferences and data and resume a workflow that has been interrupted.
You may not realize it, but several organizations have begun to replace legacy native apps with Progressive Web Apps. Take a look at the PWA I helped create for Kodak Alaris so customers could order photo products from their phone. Coffee giant Starbucks has released a new version of their mobile ordering application that has replaced their native application with a PWA. Take a look at the case study by Formidable who did the development. It delves into complex business logic, offline usage, animations, and emphasis on the customer experience (https://formidable.com/work/starbucks-progressive-web-app/).
Is a PWA right for your organization? Here are some quick pros and cons, and if you have questions or comments please feel free to get in touch with me.
- Prompts to add the PWA to the home screen (Android)
- App store not needed (NEW as of February 5, 2019 - rudimentary Google Play support)
- No app to install
- Works offline
- Loads quickly
- Single code base may speed up development and lower costs
- Works on desktop and mobile
- Updates automatically when used
- iOS support - Safari: not yet, Chrome and Firefox: yes
- A small number of applications might have performance issues
- Can't be found in app stores