To make a progressive web app or not
|Richard Harris in HTML5 Thursday, September 6, 2018|
The question of, should you make a progressive web app or not might just be answered after reading what Vahid Taslimi has to say when confronted with some pretty tough, but honest questions about PWA technology.
Mobile users are spending 80 to 94 percent of their mobile use time in apps, so you’d think the mobile web would be a thing of the past right? But the average mobile user also visits 100 different websites each month, and only half of all mobile users don’t download any new apps during that same period.
In order to achieve the speed and ease of use provided by apps and the ability to reach new users, Vahid Taslimi, Director of forms and mobile at Nintex syas businesses need to adopt a hybrid solution, where they retain the features of websites while maintaining an app-like feel through progressive web apps.
The below is the transcript from a conversation we had with Vahid, about all things PWA in 2018.
ADM: There seem to be a few definitions of PWA floating around, and there is some crossover between a mobile website, and a progressive web app itself. So what is your definition of a progressive web app and can you point out the differences from mobile websites?
Taslimi: I see PWA as a way to enable web applications to work more reliably on the mobile devices. Specifically, with a better user experience, and enabling them to work offline. For the mobile websites, you still need to have a good network connection and the experience may not be as good.
ADM: Where does the development of progressive web apps fit in the best?
Taslimi: I see them fitting best for a company’s internal applications. I don’t see them being competitive in the consumer application world, due to the user experience not being on par with the native apps. However, for the internal applications where no advanced hardware access is required and you know more about the target users and have more control over how something is going to be used, PWA’s is going to be a good answer. The other area I see them fitting is content heavy sites like news websites which traditionally do not require device-specific capabilities.
ADM: What would you say is the line of diminishing return between web apps, and native apps - and what web apps will never be able to achieve?
Taslimi: Advanced hardware access and User experience. I don’t see them achieving that anytime soon. I’m not just talking about how a page looks on the mobile device but rather how you achieve certain tasks like taking multiple photos from camera and attaching them at the same time, or working with a map control, Bluetooth, NFC, etc. Another point to consider is that you want your users to feel at home when using your app on the mobile device OS which they are used to. They expect the same quality and behavior from your app as a native app.
ADM: What happens if the webview controllers go away and the app stores stop allowing apps that use more than 10% functionally through a webview and developers with PWA's inside native frameworks have to go rouge?
Taslimi: Well, that’s the risk you should always consider when selecting a technology for your mobile app. App Store policies can change and do, which can impact your app and your business mobile. A good example of this is when Apple decided to ban templated apps.
To answer the question, if webview controllers go away, developers will need to start using some other frameworks which compile their code into native code rather than running them in the webview controllers.
ADM: HTTP/2 has been talked about for a few years now and it's obvious to everyone we need a new HTTP standard. How is HTTP/2 going to change the progressive web app approach?
Taslimi: HTTP/2 Reduced latency is going to help a lot with PWA’s, especially for content delivery systems.
ADM: It's easy to talk about the benefits a native app has over a web app, but can you give our readers some examples of benefits a PWA has if a developer decides to make a progressive web app over native app?
Taslimi: There are two aspects to look at this from; 1- from the user's point of view and 2- from the developers’ point of view.
From Users’ point of view, I don’t see much benefits. In fact, the users should not worry about the technology the app has been created at all.
From the developers’ point of view, the main benefit is creating and maintaining one single codebase for various platforms, including the web. This means a lot more efficiency and a lot less learning curve for the existing and new team members which will result in a lot more innovation time. (rather than spending the time to fix issues across multiple platforms). The other benefit you’d get as a developer is the release time. Although these days Apple and Google both do a great job in approving Apps quickly, there is still an uncertainty about how long it’s going to take for your hotfix to make its way to the end users’ hand.
ADM: Web apps suffer desperately from web burials in the sea of almost a billion other websites. Meaning, if you create something great but deliver it only over the web - you have nowhere to actually "publish" your app as a stand-alone product. We've trained users now for over 10 years to go to the "app store" to find what they are looking for. How do you see this changing in the future?
Taslimi: I see people either searching for what they need through search engines or app catalog websites, or they are going to be initiated from the company’s website itself, meaning you’d first find a company for the service you are after and from there you’d access their web app.
ADM: Similarly, even though there is red tape to publish into the mobile app stores - isn't oversight good for users?
Taslimi: What we need to realize is that users are not developers. There may be red tape on mobile app stores, but in the end, it is to provide a better and safer experience for the end user.
ADM: These are questions for today about web apps, but how do you see the landscape of mobile apps and progressive web apps in the future?
Taslimi: I believe they are going to find their ways in amongst specific types of apps for which they are suited well. However, I don’t see native mobile apps disappearing. There is going to be a lot of apps written in native technologies to get the best of the OS features and user experience.
One thing I believe is going to excel in the near future, is the ability to write your business logic of the app using cross platforms technologies, compiling them into a native library for each target platform and using them in the native UI.