Google Academy: Progressive Web Apps (PWA)
What did we learn from the Google Academy?
When we (the drpdigital team) discovered Google were offering some free training in PWA development at their Google Academy, in London, it seemed like a great opportunity to learn a bit more about how this could potentially benefit us as developers, as a department, and as a business, (as well as getting out from behind the desk for a change, even if it meant getting behind a different desk in the capital).
So, what are PWA’s and why do we care?
Progressive Web Apps, in a nutshell, are websites that are built in a certain way to help leverage technologies historically only available to App’s downloaded from an app store; such as, a home screen icon, loading full screen without a browser wrapper, fast loading, offline content and push notifications.
This enables you to give the end user a more native app-like experience, without the hassle of trying to market an app, pushing to an app store, and without some of the extra costs involved in native app development.
Google proposed the tech and have developed the tools available to make this possible (and are constantly working on new tools to make it easier for everyone to take advantage of the technology). Not only do these tools aid web developers in creating better web applications, but it also increases efficiency, as less time is spent re-inventing the wheel, which means more time can be spent developing new and exciting features or enhancing security.
Of course, this isn’t entirely for the betterment of mankind! You can’t deny that it’s in Googles best interests to promote technology they’re pushing forward to enable websites to compete with native apps. By offering free training, (free is always popular), we knew it would be popular, but personally we’d underestimated how popular this would be. Limited to two developers per company, we were not particularly surprised to be in a room with front and backend developers from Bolton, Bristol, Manchester, Leeds and London. The training also drew interested parties from further climes, including Dublin, Spain, Netherlands, Romania, Slovakia and Lithuania to name a few.
The training itself was handled by Edsel Them and Ed Wright from QA.com on behalf of Google, in the Google Academy themed and trendy offices opposite Victoria Station. It consisted of a 3-day course compressed into 2 days of slides, presentations, code examples and individual and group exercises. This included Q and A’s (our team came first in the pop quiz), and culminating in a Hackathon coding challenge to put everything we’d learnt into practice. There were chocolates as prizes, along with friendly and knowledgeable tutors who helped to encourage even the shyest there to participate. There was readily available coffee, pop and snacks that certainly didn’t hurt too.
The main gist of the training was to educate us on the use and scope of the key technology involved, ‘Service Workers’. These boil down to small chunks of code, which run in the background for each end user. They enable the end users’ browser to cache files and interact with offline data, as well as networks, to allow a more seamless end user experience, even with spotty network connection or limited bandwidth etc.
So, how successful was the training, and more importantly how useful is it going to be to digital?
To begin with, it’s worth pointing out that it is a technology that still isn’t supported by all web browsers (I’m looking at you Edge and Safari). However, following the best practices that both Google and PWAs advertise, it will enhance a web application regardless of whether the user’s device supports the latest and greatest features.
Even with the current lack of support for iPhone, there still seems to be a steady increase in the number of companies using this tech, (including Twitter, Lancome, Forbes and The Washington Post to name just a few, other examples and their reasoning can be found…
- here:- https://www.netguru.co/blog/10-popular-companies-that-do-progressive-web-apps
- and here:- https://www.mobify.com/insights/10-best-ecommerce-progressive-web-apps
There’s building evidence that Microsoft is already on board and that even the mighty Apple is beginning to bend on the subject that Service Workers are the way forward with offline capabilities. However, this move towards supporting Service Workers is something that seems to go against their preference towards their App Store, and could be a good explanation as to why it has taken Apple so long to start supporting these features.
This gain in popularity alone, makes considering using the tech for future development an avenue worth considering, or at least keeping up with the technology and techniques. It may well be that it won’t be too long before it’s actually something people ask for, either directly or the more common “How much for a site like ‘Brand X’?”.
In the meantime, whilst we wait for everybody to catch up, we can start to implement these technologies in our own development lifecycle to enhance our web based event apps and websites, to help the clients’ audience find information, even when their device is offline.
As always, every project, and every client is different (despite the familiarity of short deadlines and changing expectations/moving goal posts). So, there are some steps that can be made to get websites ready to become PWA’s that can increase the speed and usability of a website for the end user (some of which we already strive for). There’s also some evidence that building a website as a PWA, can benefit the end user even if the browser/device they’re using isn’t supported (Washington Post early PWA adoption case study), as well as the ability to turn only part of a larger website into a PWA if it looks like one area would benefit from it even if it’s not achievable/desirable for the entire site.
Does this mean we’re going to start building PWAs asap, and give up on standard websites and native apps? To be honest, no it doesn’t, as each platform we develop on (or for) will each have its own pros and cons, but we’ve brought home what we’ve learnt, and will be disseminating the knowledge throughout digital. Progressive Web Apps is a technology that will be on the rise over the next year or two, as more and more platforms support PWA based technology, popularity of the methodology will increase.
While we don’t believe PWA’s will fully take over native apps, they will definitely bridge the gap between a standard web application and a native app. We certainly plan to keep abreast of how the technology progresses, and keep up with the required techniques and learning required, PWAs are still in their infancy, so we expect many more advancements to come in the near future, so don’t be surprised if you hear we’re releasing PWA’s in some form in the not too distant future.
Adam Hill — Front-End Developer at drpdigital
Check out the original blog post here: https://drptalk.com/2017/11/29/google-academy-progressive-web-apps-pwa/