PWA and why it is good

November 9, 2020
user

What is an application?

Many years ago, when people said a software application, we know they are telling about a program where:
– Users need to download and install it on their devices only one time
– After that, they can use it without an internet connection.

But that is the old story. Nowadays, I can not have a clear definition of a software application since we have:
– Lots of application now do not need to download or install, cloud applications is an example.
– Lots of applications now need an internet connection.

From the user’s point of view, an application is just a shortcut icon where they can place it somewhere on a desktop or mobile screen, and when they click it, it shows the real interface of the application. They do not know where they can download it or how the actual installation progress going on. They just click and see. That is all about the application our users see!

What is the difference between desktop applications, mobile applications, and websites? The border is blurry.

Now we called the above kind of software application are native apps to distinguish from web apps.

What is PWA and why it is helpful?

PWA stands for Progressive Web Apps simply are web applications with more features. It brings new features for traditional web applications to nearly like a native application.

Good technology will become useless if it does not solve a real problem from the user’s point of view. What is the incredible benefit we give to our users? That is the key to choosing any technical solution.

And of course, PWA is not an exception.

Here is the list of advantage PWA brings to a traditional web application from the user’s point of view:
Installable: now we can make a shortcut icon like we usually did with native apps.
Offline mode: users can work with the app even offline! This is an incredibly huge difference since we can do nothing with traditional web apps.

If you are a web developer, you now have one more advantage: a single code base for everything, no need to have another in a different programming language.

From the product’s point of view, we have some interesting fact like Twitter case study after applied PWA:
– 65% increase in pages per session
– 75% increase in Tweets sent
– 20% decrease in bounce rate

How about the cost of applying PWA?

Considering the trade-off when choosing any technical solution is unavoidable. With the revolutions in front-end development recently, the cost for applying PWA is reduced nearly zero. Many frameworks abstract PWA with higher APIs where all things developers need to do is defining the things they want. No need to manually implement service workers anymore, except you really understand what you are doing.

Some notable frameworks:
https://www.gatsbyjs.com/
https://nextjs.org/

Conclusion

PWA is a good design pattern where it enhances the user experience, development experience, and product quality as well. The cost of applying it now is not notable, too. But PWA is still not extremely well about performance if compare to native apps because of the limited power of the browser. However, we can hope in the future where the hardware infrastructure is dramatically improved. It is just a time problem.


Thank you for your valuable reading time!

@ShinaBR2