DEV Community

madebyjonny
madebyjonny

Posted on

PWAs are dead, long live PWAs

So it was WWDC this week and Apple as usual announced a tonne of new things for their suite of products. For me one thing stuck out: App Clips.

These are small applications that have a focused bit of functionality that can be activated from NFC, QR, or basically anything that links to a webpage with a specific meta tag. Stop me if you have heard this before?

This has of course been possible for a while through QR codes and NFC tags which can open a web page when scanned.

Before I continue, I should probably say I have been an advocate for the web and PWAs (progressive web apps) since you could add websites to the homescreen on the iPhone. Back then you couldn’t do anything apart from open a website full screen (without the URL bar).

This always made sense to me, as most applications which show a list of data (like Twitter or Instagram), I always thought were better off as web applications mostly because the work needed to develop a native application for iOS, Android, and at the time Windows Phone.

Obviously now we have tools like React Native, Flutter, Ionic and others. So developing a cross platform app isn’t that difficult, however you still need approval from App Stores, and if you want to monetise these apps chances are you will have to surrender 30% (see the recent HEY controversy). There are companies that get around this, but usually at the expense of the user experience; Netflix and HEY for example allow their users sign up on their websites to avoid this “tax”. Anyway, I digress; back to App Clips.

The announcement of App Clips took the wind out of my sails: I finally admitted defeat. The lack of support on Safari for things like push notifications make certain application types — like messaging, amongst others — redundant. The cynical part of me thinks that they know how this would impact their hold on the app market, but they do a fantastic job of protecting users from dark patterns, and let’s be honest who isn’t sick of seeing that “this website would like to send you notifications” banner. Unfortunately I think this practice ruins the legitimate reasons for using them.

Recently I was talking about hanging up my web dev boots and changing into native development, as I want to make cool things but I don’t want to be restricted by the technology and the things I want to build require functionality that just isn’t there on the web on Apple’s mobile web, and I don’t see it being added anytime soon.

I started looking into Swift and SwiftUI to start with, and how to actually create App Clips, and I realised that this could actually work in the favour of the web. If Apple can get people in the west to start scanning things to interact with them, then this benefits the web in the end, as these things will still open a website if you’re not on an iOS device or the website doesn’t have the correct meta tag, you will still be taken to the website. I think App Clips will actually promote creating “micro interactions” (as I have started calling them) which will be a focused interaction that will require minimum effort. For example, if you were renting a scooter, you could scan the code and have it open a URL with the ID of the scooter, and be directed to a method of payment. This could still have a Google and Apple pay button so it requires very little input to start riding the scooter. I know this might not be what a lot of businesses want, as people are in the data game, so they would prefer you to sign up, but that is another can of worms that I don’t want to get into right now.

So I probably did overreact to this announcement, I do think that App Clips are over-engineered, when the web exists, but Apple do have a habit of normalising things that are often seen as too techy initially. So I do hope they take off as it can only benefit the web. Once this interaction is normalised then why would you invest in creating a specific App Clip when you can create a website that more or less does the same thing? Invertedly I think Apple has possibly given PWAs a new lease of life through focused interactions.

Top comments (19)

Collapse
 
vickylance profile image
Vignesh S

I have a more fear that Apple might kill PWA. Because that is one thing that Apple is good at.

Collapse
 
marcogallen profile image
Marco Gallen

I think there's been more talk about PWA recently. And with governments, companies and developers complaining about stores practices (looking at both of them Google and Apple) more users could see the value in them. With this new feature Apple is trying to bridge that gap and I will not be surprised if at some point they restrict websites with PWA functionality to become Apple (App) clips.

Collapse
 
docluv profile image
Chris Love

I think this only sells PWAs more.
Apps are frustrating. Few want to go through the steps to download an app when they are already on the website, etc.
We also know about 3% of app usage is retail. So Apple is trying to bridge the gap to make apps more appealing.
But the web has had this feature for a long time.
I am now calling this PWA Clips!

love2dev.com/ios-app-clip/

Collapse
 
romulopbenedetti profile image
Romulo Pulcinelli Benedetti

PWAs are frustrating, themming is a mess, host integration is a mess... It is 2021, september and this STILL is not solid... All the same error again, poor multiplatform, poor themming, poor hybrid integration.

Collapse
 
madebyjonny profile image
madebyjonny

100% agree

Collapse
 
spock123 profile image
Lars Rye Jeppesen • Edited

Apple are good at creating monopolistic features thst keep their users in the Walled garden/Jail.

They don't care about users, they care about preventing users from having a choice.

Collapse
 
gorvgoyl profile image
Gourav

I dont agree with the author. Yes, they introduced app clips but along with that for the first time they are allowing users to change their default browser. User can set to Chrome and chrome has the first class support for pwa. Also, these app clips is Apple's answer to Android instant apps rather than pwa.

Collapse
 
madebyjonny profile image
madebyjonny

Chrome on iOS (and all other browsers on iOS) are skinned versions of Safari, so they have the same restrictions, so you don't have the same support for PWAs as Chrome on Android does.

App Clips are similar to instant apps, but the use cases are different, as App Clips are designed to be interacted with through NFC or QR, e.g. unlocking a rental scooter. On Android the default action of NFC is to open a browser not an app, so they don't quite have the same user flow, but this is where PWAs come into the question as I believe Google won't make something like App Clips because the web can do what App Clips are being aimed at.

Collapse
 
gorvgoyl profile image
Gourav

PWAs were not primarily built for being launched by QR, NFC etc. These were built to get native app like capabilities like offline support, notifications, full screen app experience, consistent UI on all platforms, auto-updates, small package size etc.
I'm not sure but will app clips work offline? Will these be available in my app drawer so that I can conveniently open them when I needed? will it notify me in realtime? can I access these app clips on other platforms? if answers are yes only then we can say app clips are equivalent to pwa.

Also QR (and possibly NFC) is not platform specific and can be programmed to open any app, pwa, copying email address, hack even connecting to wifi now.

Thread Thread
 
madebyjonny profile image
madebyjonny

App Clips are focused bits of functionality, not full apps, they are designed to get you to download the full app in the long run. The scooter rental is a prime example, if I visit Venice beach I could use my phone to scan a scooter and rent it without having to download the app, why is this useful? I am from the UK, theres no point in installing the app to only use for the day. However if I lived in LA I might download the app as I might use it fairly often. Like wise with a PWA if you open it from NFC/QR/some other thing, I would have the option to add it to my home screen, but once added it acts like an application.

It isn't about the apps themselves but the user flow of getting interaction from a user, and possible retention from a quick action like scanning a QR code. Yes they can be programmed to do those things, however you can't get them to open an instant app, you can get them to open a preinstalled app, but that is assuming users have that app installed which would cause friction is most cases. This is where App Clips & websites/pwas come in. As they open in the same way, with a url, if a website has a meta tag for an App Clip it will open on an iPhone, on Android it will open the website. Like I said before this works well to take a potential interaction and could lead to retention from a user.

Thread Thread
 
wm2015email profile image
Dr.Theopolis • Edited

Your missing the point... a PWA is an application that you downloaded... instead of the browser reading JavaScript from a web server, it reads a pre compiled web assembly... aka, an application. Granted this web assembly could have been created from JavaScript code originally...

Thread Thread
 
madebyjonny profile image
madebyjonny

PWAs aren't web assembly (they can be, but don't have to be), the definition isn't straight forward. But this is a good resource web.dev/pwa-checklist

Collapse
 
jwp profile image
John Peters • Edited

I dumped Apple's eco system on day one. I could see their overzealous control immediately.

Collapse
 
asdev808 profile image
asdev808

I'm finding working with service workers in PWA's very confusing regards updating an app, I have followed many tutorials but I just find the development experience a nightmare and will be trying flutter instead next time.

Collapse
 
ulitroyo profile image
Uli Troyo

I’m not impressed by Web Clips. Seems like a way to spam costumers with a new arcane type of notification. I don’t see the boomer dads and moms of the worlds understanding the feature.

Sadly, I think that’s what’s keeping people from adopting PWAs too: it’s too obscure a feature.

Collapse
 
misisol profile image
Meri

There’s always a way for getting things done!
You can wrap a PWA within an ios native app and get the web push messaging token in that way.

Collapse
 
madebyjonny profile image
madebyjonny

From my experience the UX always lacks, React Native or Flutter I think are the best solutions at the moment for cross platform. The nuances of how/why a user uses that specific device is often missed when porting a responsive website to a web view. Also It can be jarring if you have iOS type UI on android or vice verser.

I am planning on writing something on this topic funnily enough.

Collapse
 
souravprofile profile image
Sourav Bagchi

In iOS14 user can now change default browser. So long live PWA.

Collapse
 
madebyjonny profile image
madebyjonny

Problem is all browsers on iOS are just skinned versions of Safari, Apple doesn't allow for a custom engine.