Progressive Web Apps: de optimale customer experience?

Progressive Web Apps (PWA’s) zijn een serieuze concurrent van native apps. Ze zijn sneller, veiliger en goedkoper om te bouwen. Wat houdt de online wereld nog tegen? Software Architect Lucien Immink zet de voor- en nadelen op een rij.

Progressive Web App (PWA)

Progressive Web Apps zijn een antwoord van het web op technologie van anderen. Dat het web met een antwoord moest komen is niet voor het eerst. Zo was er een tijd dat je Flash nodig had om interactieve content op je website te tonen. Alleen Flash had continue updates nodig, anders werkten websites niet. Dankzij HTML5 en krachtiger browsers zijn die technologie en irritaties bij de gebruiker verleden tijd. 

Optimale customer experience voor elk device

Zoals HTML5 en krachtigere browsers een antwoord van het web zijn op Flash en interactieve content, zijn Progressive Web Apps het antwoord van het web op apps. Vanuit gebruikersperspectief is het namelijk best tegenstrijdig dat je op een website de vraag krijgt of je een app wilt downloaden. Waarom zou je niet gewoon die informatie en functionaliteiten bieden vanuit de browser, waarbij deze functionaliteiten voor elk device geoptimaliseerd zijn? Google bedacht het antwoord op dit vraagstuk in de vorm van PWA’s. Bijvoorbeeld YouTube, Twitter en de Chinese retailgigant Alibaba bieden alle mobiele verkeer aan via PWA’s.

Waaruit bestaat een PWA?

Technisch gezien bestaat een PWA uit de volgende onderdelen:

  • Een veilige website.
  • Webmanifest bestand die bijvoorbeeld beschrijft welk icoon getoond wordt, welke naam de PWA heeft in je appoverzicht en welke url geopend moet worden als je op het icoon klikt.
  • En een Service Worker. Code die gebruikt wordt om het internetverkeer te onderscheppen. Het is daardoor mogelijk om tóch een nette pagina te tonen als er geen actieve internetverbinding is. Maar het wordt bijvoorbeeld ook ingezet om nog beter in te spelen op bestanden die op de device moeten worden opgeslagen. De Service Worker blijft draaien in de browser, ook al ben je niet actief met de website bezig. Pushberichten kunnen daardoor ook worden gestuurd, hoewel dat op iOS (nog) niet kan.

Door deze techniek in te zetten en te integreren met een (bestaande) omgeving gebeurt het vaak dat dan ook naar de gehele techniek van je front-end wordt gekeken. ISAAC Architect Bavo gaat daar dieper op in.

Onderdelen van een Progressive Web App

Waarom wel een Progressive Web App?

  • Een PWA start je vanaf de browser en net als bij een native app kun je een icoontje installeren op het home screen.
  • De technologie is snel en je kunt er offline mee werken. Je hoeft niets te downloaden en daardoor is de PWA altijd up-to-date en hoeven oude versies ook niet meer onderhouden te worden.
  • Verder helpt het hebben van een PWA bij SEO en een optimale customer experience. Google stelt tools beschikbaar om te testen of je PWA goed genoeg is, waarbij vooral een snelle laadtijd en de beveiliging belangrijk zijn.

Voor de contentmanager betekent een Progressive Web App minder werk. Daar zijn twee redenen voor:

  • Aan de ene kant kan de contentmanager standaard webtechnieken gebruiken voor dat ene platform. De content wordt nu vanaf één platform gedistribueerd in plaats van dat je die moet onderhouden op de website plus twee apps, namelijk voor Android en iOS.
  • Daar komt bij dat je niet te maken hebt met de eisen en eventuele geografische restricties van appstores. Hierdoor werkt de PWA op alle devices.

Waarom niet een Progressive Web App?

Genoeg voordelen dus. Waarom heeft de Progressive Web App de native app dan nog niet vervangen?

Ik hoor vaak het argument dat bedrijven vanuit hun branding zichtbaar willen zijn in de Play of App Store. Mijn antwoord: als je in Google te vinden bent, hoef je jezelf niet ook nog in een app-winkel te etaleren.

Een ander veelgenoemd bezwaar is dat iOS de technologie niet ondersteunt. Apple gaat er inderdaad minder hard in mee, wat logisch is, want het ondermijnt het verdienmodel van de App Store. PWA’s werken wel op iPhones, maar niet alle functionaliteiten doen het. Denk daarbij aan offline werken en pushnotificaties versturen.

Ik denk dat Apple uiteindelijk wel mee gaat doen, al was het alleen maar omdat klanten een goede ervaring verwachten op alle platformen. In 2019 heeft Apple bijvoorbeeld Service Worker geïmplementeerd, dat is de proxy voor het netwerk die de kern van de PWA vormt. Hierin ligt bijvoorbeeld vast wat er moet gebeuren als de verbinding wegvalt, hoe lang of hoe kort er moet worden gecachet, et cetera.

"Zoals zo vaak zullen de voorkeuren van de consument uiteindelijk bepalend zijn voor de toekomst van PWA’s en native apps."

Lucien Immink - Software Architect, ISAAC

Derde struikelblok is dat niet alle functionaliteiten van een native app nu al beschikbaar zijn voor ontwikkelaars van PWA’s. Bluetooth en Near Field Communications (NFC) ontbreken bijvoorbeeld nog, al ondersteunen sommige browsers nu al web bluetooth. En PWA’s hebben geen toegang tot de contactenlijst van de gebruiker, noch kunnen ze pushnotifications sturen en zijn plug-ins van website minder makkelijk te gebruiken.

Verder moet het verdienmodel ontwikkeld worden. Wie in een native app niet lastig wil worden gevallen met reclame, koopt een pro-versie voor 99 cent of meer. Dat kan bij een PWA niet. En omdat het webtechnologie is, loop je het risico dat de PWA volloopt met banners. De vraag is dus hoe je advertenties kunt weergeven zonder dat die hinderlijk zijn voor de gebruikerservaring.

Je moet sowieso goed nadenken over het design, de snelheid en de veiligheid van je PWA. Een voorbeeld: iOS heeft geen back button. Die moet je er dus zelf inzetten, wil je dezelfde gebruikerservaring bieden als in een Android-browser. Het is dus goed om je te realiseren dat PWA’s geen wondermiddel zijn die alle verschillen tussen de bestaande besturingssystemen weghalen.

Progressive Web App versus native app?

Wat mij betreft zijn Progressive Web Apps geschikt voor ieder bedrijf dat online actief is. Maar ik denk niet dat er een ‘progressive web apps versus native apps’-tegenstelling zal ontstaan. Natuurlijk blijven native apps bestaan, al was het alleen maar omdat Google en Apple er veel geld aan verdienen. Dus ja, er is een beweging gaande richting het open web, en nee, dat betekent niet het einde van het lucratieve gesloten systeem. Zoals zo vaak zullen de voorkeuren van de consument uiteindelijk bepalend zijn voor de toekomst van PWA’s en native apps.

Meer weten over Progressive Web Apps?
Meer weten over Progressive Web Apps?

Wil je meer weten over de toepassing van Progressive Web Apps in e-commerce? Lees dan het artikel van Software Architect Bavo Janss of kijk zijn webinar terug. Of vrijblijvend sparren over jouw e-commercevraagstuk?