I had the privilege to attend the Progressive Web App Dev Summit 2016 in Amsterdam. Google invited developers to learn and share experiences about Progressive Web Apps: web sites that comprise a combination of HTTPS, Service Workers, application manifest for features like add to home screen or push notifications and – maybe more as a result from making great web apps rather than being a PWA feature itself – reliable performance.
Google did a great job in choosing top-of-the-line speakers.They did not only sum up the problems visitors of a website face when surfing with mobile phones (e.g. Lie-Fi) or accessibility issues. They also explained solutions and tools and techniques like Service Workers or concepts such as RAIL or FLIP that, when combined correctly, all add up to the app feeling PWAs should provide.
Implementing HTTPS in your infrastructure is fundamental to use Service Workers or the new app manifest. However, it might often be perceived as one of the biggest obstacles to overcome. Emily’s talk about assumed cost and drawbacks of HTTPS could be exactly the right thing to convince people that it is just not that bad. Optimizations such as HSTS, TLS False Start and TLS Session Resumption help reducing TLS performance impacts. On the other hand, the massive performance wins that HTTP/2 offers, which is only supported over HTTPS, will let your setup outperform HTTP in many cases.
The raving about all the perks Progressive Web Apps offer, understanding about the building blocks needed to implement them and enjoying the Air Horner sure was interesting and fun. But what really made me “click” was migrating an existing web site to a Progressive Web App live on stage. Using The Lighthouse offered clear steps on the journey of migration. It sure is a valuable companion on the adventure of building a PWA.
Excerpts from such adventures where given by speakers from Konga and booking.com who followed different strategies in pioneering the implementation and distribution of their Progressive Web Apps. Konga went with a complete redesign of their website. They were able to reduce the initial weight of their web site by factor 10, which was a good but also necessary boost on its own. Then offering the new experience to a very small number (about 50 if I recall correctly) of beta users allowed them to get their early feedback. Konga’s experience with implementing Progressive Web Apps seemed to be solely great. Booking.com developers in contrast were very defensive in implementing PWAs and ran a multitude of tests before deploying a bare minimum to the home screen, allowing the user to load the last booking made. They reported issues with APIs in change and different grades of implementation of the standards throughout different browsers, often times invalidating test results making a new batch of tests necessary, which sometimes lead to frustration in the development process.
So new techniques and features, even when they are progressively enhancing a website, always depend on how much the browsers support them. Most major browser manufacturers (Google, Samsung, Mozilla, Opera and Microsoft – not Apple, of course) had sent representatives to the event who talked about the vision and philosophy behind their products and their different approaches in supporting the standards that PWAs make use of. As a refreshing finisher they also answered to Jeremy Keith, who was hosting the closing panel.
Progressive Web Apps eliminate the need to submit your creation to an app store and have it reviewed and accepted by the maintainers, too. As a side note, Microsoft said they would allow distribution of PWAs through their Windows Store. Scratching app stores from the board makes deployment, distribution and updates easy and fast and it keeps the versions of your apps that are used by your users homogeneous, setting you free from the worry of supporting multiple older versions with your services.
The idea of having web apps on the home screen may not be new at all. Apple introduced meta tags to add web apps to the home screen in 2007. But in my opinion it took almost 10 years to provide web developers with the right tools that are necessary to offer users the real “home screen experience”. The lack of those tools is why frameworks like phonegap became popular in the first place. And while they may still be a step or two ahead in some aspects, browsers are finally catching up. And they already did by a good margin, now offering rather stable APIs and the features web app developers waited for so long.
If you did not have the opportunity to attend the event but are interested in Progressive Web Apps, you can watch the talks from the Google Chrome Developers channel on youtube and listen to the addictive theme music on soundcloud.