pros, cons, pitfalls

Last fall, we decided to make a PWA for the platform: in our case, it turned out to be significantly cheaper, simpler, and more practical. I decided to share why I chose PWA, what advantages and disadvantages I found when comparing technologies, what the team and I managed to do in six months, and what problems the technology currently has.

How We Learned PWA Isn't Glue

A joke, of course. For a couple of years now, the Progressive Web Apps technology has been on the lips of programmers, but in reality, few have worked with it, especially in the Russian-speaking IT sector.

But if you don’t know: Progressive Web Apps (PWA) is a technology for creating a progressive web application, essentially adapting a website to a mobile device that looks and works like an application. The user may not even know whether it is a PWA or a regular application – a PWA is launched via an icon, but the icon activates not the installed application, but the browser. The website opens inside the browser, where the address bar is not visible, so there is a feeling of using a classic mobile application.

PWA technology was introduced by Google back in 2015. And in recent years it has developed rapidly, including for iOS. Six years ago, nothing could be done with PWA in iOS due to Apple's restrictions, but now more and more tools are appearing for work.

TZ

Let me tell you a little about the task we were solving. Our main product is the SaaS platform TYMY, a technological tool for large and medium-sized businesses that provides direct communications between companies, banks and users, fast document exchange, electronic signing and other similar tasks. First of all, at the initial stage of development, we were focused on b2b and b2e (business to enterprise). The main task was to build communication chains and business development, there was no particular need for a mobile application – users solved everything in their personal account mainly from the desktop, or from the mobile version. From time to time, we began to discuss the application, but we took on this task seriously after a request from one of our key partners – now there was definitely nowhere to put it off.

Our task pool for the mobile app is quite simple. We do not use a video camera or voice commands, there are no features that cannot be available on the site. In fact, it was logical for us to adapt the existing site, or rather the online platform, for correct and comfortable work from a mobile phone. It was at this point that my team and I thought – why not PWA? The idea seemed quite suitable for our case.

There was certainly a lot of anxiety. The technology is relatively new, few people know about it, including developers and project managers. Actually, I think this is the main reason why the technology is rarely taken into projects for large companies – PWA is most often rejected in favor of a mobile application, simply because they do not know what it is and how it works. Although today PWA is used, for example, by Twitter Lite, Pinterest and Spotify. There are already enough cases in global practice to at least try to take a closer look at what it is before sawing an expensive application.

Home page of the web version of TYMY

Home page of the web version of TYMY

Pros and cons

Before defending the idea to the team and the board of directors, I conducted a small preliminary comparative analysis of the pros and cons of a mobile application and PWA. The results were significantly biased towards the latter, but I would like to emphasize once again that this is our case in particular, and the pros and cons may probably be completely different for other businesses.

Mobile app:

pros

Minuses

Integration with the device: there is access to all the capabilities of modern smartphones (Bluetooth, Face ID, etc.).

Price: The preliminary estimate for PWA according to our technical specifications was 3.3 million rubles, and for the mobile application – 7.7 million rubles.

User Trust: The technology is not new, users can not worry about security when downloading from places other than Google Play or App Store.

Additional resources and time: team work, search for Android and iOS developers, new setup of the current API.

Risk of sanctions: There may be difficulties when registering an application in the App Store.

More difficult to maintain and improve

PWA:

pros

Minuses

Speed: According to calculations, we could have made PWA twice as fast.

Functional: The capabilities of the mobile application are significantly broader and may limit future development.

Price: again, 3.3 million rubles versus 7.7 million is a minus for the app and a big plus for PWA.

Limited device compatibility: no access to calendar, contacts, voice control.

Instant update: New features appear in PWA at the same time as they appear on the website.

User loyalty: Few people know what a PWA is yet, and some users may be wary of downloading something that is not from official stores.

Variability: PWA can be installed on a phone, tablet, MacBook, etc., no separate development is needed for each system

Ease: weighs significantly less than the app. The difference is 10-20 times – PWA takes up 1-1.5 MB on the phone.

Safety: PWA works through a browser, which itself is responsible for a secure connection.

Time and human resources

It took us half a year to complete the work. We managed it using the existing development department, without hiring additional people or a separate team that would only work on this project. I think that if we had allocated a team, we would have completed the work on PWA twice or even three times faster – in two or three months. But we did not reduce the speed and volume of workload on other tasks, we simply distributed the work with PWA over time.

The project involved a product manager, full-time Backend and Frontend engineers, a QA engineer, a lead designer, and a UX/UI designer. If we had decided to make a mobile app, we would have had to hire a separate developer for Android and a separate one for iOS. However, in our case, this was not even the main problem. The main one was that we had to rebuild the API for the app. Historically, we built the platform's IT infrastructure without an independent API. Our frontend is closely connected to the backend, which at one time allowed the development team to complete many tasks in a short time. But this would not have worked with the app, for which we needed to build a new API to work correctly with both the web and mobile apps. This task alone would have taken us two months, provided that we fully occupied two or three people with it.

PWA TYMY Home Page

PWA TYMY Home Page

With PWA it was faster and easier. We used our API and involved people from the team on a part-time basis. In fact, the main thing that needed to be done was a deep redesign of the site for PWA, to think through an intuitive user interface that would be as organic as a mobile application. It cannot be said that this was a difficult task, but changing the scale of the layout and cutting off the corners was not enough. The format of our platform provides for a large amount of different text content that must be readable.

We literally had to take each page, redesign it and check its readability on different phones. The process was labor-intensive. Since there were many tasks, we did not keep them on the test stand, but immediately put them into production. That is, we did not do one global task of redesigning the entire site, but went gradually: made a page, tested it and rolled it out. As a result, we had many iterations and the ability to immediately correct errors and shortcomings.

In July, we launched PWA with real users, everything works. Although I would be surprised if it didn’t work — looking back, I understand that PWA is extremely easy to develop. But of course, there is a fly in the ointment. Even several and a heap.

Underwater rocks

The expected task with an asterisk was the integration of biometrics. We currently have fingerprint and face ID login enabled in our PWA. Why difficulties arose: developers usually know how to implement biometrics for Android or iOS, but they have very little experience working with the web. The introduction of biometrics into the web is, in principle, a new technology, for which there are no extensive guides available yet; giants such as Google and Yandex are just beginning to gradually implement it. For example, in Google's settings, you can enable biometrics for logging into mail on the web.

What we wanted to implement, but haven’t been able to yet, is one-click PWA installation, when the user sees the “Install app” button, clicks on it and that’s it. Unfortunately, this feature is currently only partially available on Android on certain browsers and is completely unavailable on iOS. We have created step-by-step instructions with pictures for users on how to install PWA from our website. This is currently a significant drawback, since we need to conduct additional communication with users, explain what PWA is and how it works. If we had more diverse users, it would be more difficult, but as I said at the beginning, the platform works mainly with b2b and b2e, we can afford additional targeted communication.

Instead of a conclusion

Having become more familiar with Progressive Web Apps, I am now sure that in the coming years we will see a widespread trend of its use in various areas, very significant advantages in comparison with traditional apps. Yes, we still need to deal with some nuances that distinguish PWA from mobile applications, but I believe that soon the difference between them from the user's point of view will finally be erased.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *