Weighing up PWA’s
How progressive web apps are blurring the lines between native apps and websites
Oct 10th Uncategorised
What are Progressive Web Apps?
Progressive web applications are app-style websites which are delivered through a web browser. Unlike a website, progressive web apps work offline and behave like apps without the need to visit and download through an app store. Google developers define PWA’s as:
User experiences that have reached the web and are fast, reliable and engaging.
How are they Different to a Native App?
A native app is a type of application software which is developed to be used on a particular platform or device. The biggest difference between progressive web apps and native apps is that native apps are coded to be used for a specific smartphone platform, for example iOS or Android. Since native apps are built for specific mobile devices, they require multiple code bases for each OS and require platform-specific development skills. Whilst a progressive web app is coded to be used on a number of different website browsers.
The Main Features of a Progressive Web App
They can work on any device, desktop, tablet and mobile and adapt to various screen sizes.
App like interactions
They behave as if they are an app. They have access to hardware, enabling them to access features on a device such as navigation or camera, providing an immersive app-like experience for the user.
A progressive web app aims to put user experience first. If the web app cannot be opened due to a poor connection a progressive web app aims to present the user with some offline experience. Rather than presenting the user with an error message, signalling that the page cannot be reached. A PWA will recall the web page skeleton structure and include an illustration to signal that the page is loading or is offline, acting much like a native app would.
Unlike a native app, a progressive web app can be easily shared by copy and pasting the web URL.
While progressive web apps run on browsers like a normal website, they are also installable and accessible on a device’s home screen like a normal app. Whilst web pages allow you to bookmark a page, progressive web apps behave and install like native web apps. PWA launch from the same place as native apps and runs in an app window without a browser bar.
Progressive web apps can be served through HTTPs, verifying that it is legitimate and preventing the connection from altering the content.
Up to Date
Information provided in progressive web apps is always up to date, thanks to the data update process provided by service workers.
The Disadvantages of Progressive Web Apps
Limited Browser Support
If you’re considering investing in progressive website applications, it’s important to note that they are not supported on all browsers. PWA’s are more android-centric and are not supported by Safari, IE or Edge. However, Apple are beginning to promote the use of PWA’s, by adding support for service workers to iOS Safari web browser.
No App Store Presence
Progressive web apps aren’t available from the App Store. While this means they are free from these store’s restrictions, it does provide some boundaries, one being a lack of awareness. App Store’s have a huge audience online and as progressive web apps are still relatively new, many users aren’t aware of them.
Probably the largest disadvantage is that the average person on the street doesn’t know what a PWA is — this could mean they wouldn’t look for this feature or know why they should enable or explore it.
Progressive Web Apps from a UX/UI Design Perspective
They are typically slower than native apps
Not all browsers can perform at the same speed as the latest smartphone, this can cause the loading time and performance of a progressive web app to be much slower than a native app, significantly affecting the user experience.
User’s have come to expect apps to respond to touch in an instant and intuitive way. Swiping, zooming, tapping and scrolling are all features available to progressive web apps and user’s expect them to react in the same way as native apps. However, as progressive web apps typically perform slower than native apps due to browser performance, these gestures can function much slower. Due to this the user may notice a lag in response to their touch, disrupting the user experience.
When to consider a Progressive Web App
Progressive web apps are a great option to consider if your user’s need to utilise desktop, tablet and mobile and particularly with their ability to be used offline. Progressive web apps can be built to be used on any standard compliant browser; therefore they do not need multiple code bases for each OS, drastically reducing development time and money. This more straightforward web technology also means that they are easier to maintain than native apps.
When to consider a Native App
Native apps are more highly specialised and complex, requiring platform-specific development, native apps are best suited if you’re looking for an exceptional experience for the user. Native apps are also more suitable if you’re aiming to attract audiences from both android and iOS, as they are less android-centric compared to PWA’s. However, as apps can only work through app stores, these provide a barrier to entry as the app must be regulated by the app store. While native apps may be considered more expensive, development software such as React Native can significantly reduce the time it takes to develop a native app and development costs.
Progressive web apps are a great way to extend mobile websites while harnessing native app functionality and features. They are particularly beneficial if there is a need to access them on mobile, tablet and desktop devices. PWA’s also remove the barriers of only being accessible via the app store. The lack of browser availability does provide some restrictions to progressive web apps; however, companies such as Apple are beginning to support and promote the use of PWA’s. While progressive web apps don't offer as many features as native apps, they certainly provide a more enhanced immersive experience than a traditional website and provide greater opportunities to organisations looking to develop app style features.