My iOS device has never once shown me "this website requires Chrome." I get to use the mobile web without needing Google. And Apple is the only reason why.
Maybe some day, web apps will become so undeniably awesome that Safari's position is untenable. But the agitation is not coming from iOS users missing out on awesome PWAs. Instead it's web developers, who are just annoyed that they have to actually respect the conventions of the platform they're building for.
I couldn’t agree more. As a developer, PWAs are amazing. Write once, run more or less everywhere. Our enterprise software deployments wouldn’t have been possible if we had to target iOS, Android and Windows specifically.
As an end user, I dread the days PWAs ever go mainstream. They’re horribly inefficient from a power and performance point of view, and never have I come across a PWA with a user experience half as good as native apps (especially on mobile). Until they’re indistinguishable from native apps in terms of user experience, I want nothing to do with them. Beyond that, there’s some very serious privacy concerns as well with PWAs, especially with developers abusing APIs for fingerprinting
I also build PWAs for enterprise and I have to disagree on performance and UX. My users love them.
Many didn’t understand what a web app was until recently and now they want nothing else. For starters the speed and ease of deployment can also impact the user experience; people love seeing problems fixed and tweaks made on the fly in reaction to their feedback.
But more than anything they’re thoroughly impressed with the interfaces compared to other shitty desktop enterprise software they use. At the end of the day it’s the same story as with all software: quality often depends more on craftmanship than on the flavor of tool that you’re using. PWAs offer enough means to build beautiful and performant software, with full offline capabilities that can make them nearly indistinguishable from a native app.
I can’t disagree that native apps have advantages in some use cases. For the most part I wouldn’t build something like a graphics editing program as a web app - companies like Figma challenge this, but they’re using techniques at the edge of web dev that go beyond PWA capabilities (eg, WebAssembly), and unless you have an all-encompassing product strategy like they do you’d probably be better off building something like that native.
For many CRUD app use cases however PWAs can be more than sufficient. I’m very bullish about their future, and I wouldn’t be if I hadn’t seen real, happy users, because that's what matters to me the most.
> Beyond that, there’s some very serious privacy concerns as well with PWAs, especially with developers abusing APIs for fingerprinting
If TikTok was a PWA it couldn't have done a fraction of the tracking it was doing. The irony is that apple is forcing you to use a much more privacy-invasive alternative to PWAs.
> If TikTok was a PWA it couldn't have done a fraction of the tracking it was doing.
This is misleading when the motives of PWA is to make the web browser acquire as much capabilities as a native app. If browsers keep on expanding access to the underlying platform without any regards of the consequences, TikTok would be able to track you more without you ever having to install anything. This would kill the web as we know it because you’ll have to give websites the same trust you give to software when you install them on your computer. We won’t be able to browse the web freely as we do now.
Misleading how? You have one platform that already allows crazy privacy violations natively, and you have another platform that you suspect might some day allow similar levels of privacy violation, yet you champion the privacy stance of the first platform.
I pretty much explained everything after the first three words of my comment.
> You have one platform that already allows crazy privacy violations natively,
Give me a single example of an OS for a personal computing device where you don't have to trust what you install.
> and you have another platform that you suspect might some day allow similar levels of privacy violation
No, this isn't speculation, this is the inevitable future of going the PWA route. If browsers expand access to a platform that, as you put it, "allows crazy privacy violations," then it's bound to allow similar levels of privacy violations, plain and simple.
One of the best things about the browser runtime is that it has (or perhaps, had) pretty good isolation from the host platform [1]. This is great for browsing because you can click on a link without thinking twice about it. When that isolation is rendered meaningless, you really have to stop and think about whether you trust the website you're going to visit, just like you would when you install native apps on your device. So get ready to kiss bye-bye to visiting a random blog you saw on HN.
> yet you champion the privacy stance of the first platform
You've made that one up. I explicitly mentioned that you have to trust the apps that you install.
Please note that I'm not hating on PWAs for the sake of it. I just don't want to sacrifice the privilege of being able to browse the web freely because of it.
[1]: I know, there are bugs in the implementation, but they're relatively costly to exploit in a meaningful way, especially at scale
Define "pretty good". Compare the permission model of the browser against the appstores. Think about what their manual review process actually is for 99% of the submissions.
> When that isolation is rendered meaningless
PWSs don't and won't do that. That's your whole argument and it's misleading.
It's a well-known fact. Actually, I'm pretty sure you're aware of this, considering this statement of yours:
> If TikTok was a PWA it couldn't have done a fraction of the tracking it was doing.
As for this:
> Compare the permission model of the browser against the appstores.
What are you even talking about? It has nothing to do with browser isolation.
> PWSs don't and won't do that. That's your whole argument and it's misleading.
That's an interesting assertion but you haven't left me any clue why you think so.
I also notice that you chose to quote a conditional sentence out of my argument, claiming that it was my "whole argument," but I'd also like to add that I did explain the hows and whys that lead it.
sorry, I misquoted the first quote, I mixed up contexts.
> the motives of PWA is to make the web browser acquire as much capabilities as a native app
This is misleading. To get to the point, your argument is that PWAs strive to be just like apps, but run in the browser instead of the OS. This is simply not true.
If you want back the web of old times, just documents and links, then you can pick up any one of such initiatives. Reality however is that PWAs are a successful model: just go to a URL and use it. It runs on a protocol, not some proprietary platform, which gives users enough control (e.g. tracking), while being useful.
> To get to the point, your argument is that PWAs strive to be just like apps, but run in the browser instead of the OS. This is simply not true.
I'm confused, because it's supposed to be PWA's major selling point. Google says as much in their documentation [1], as do many commenters in this thread.
> If you want back the web of old times, just documents and links, then you can pick up any one of such initiatives. Reality however is that PWAs are a successful model: just go to a URL and use it.
Don't get me wrong, I don't hate web apps in general. On the contrary, I happily use them on a daily basis. However, I don't like the direction PWA seems to be heading. Acquiring more "native" capabilities is one thing, though I won't be going over this again. Another important point is that it doesn't fit quite well with the "browsing" aspect of browsers. Web apps are nice, but they're hardly the only kinds of websites I visit. I visit quite a lot of random websites every day, many from HN, and I want almost none of these websites spinning up Service Workers or asking me to turn on push notifications. Web apps being more capable is nice, but I don't want them at the cost of a more spammy browsing experience.
I do want the web to be more capable, but careful design and consideration is equally as important when it comes to making the web a better place. I feel that many accusing some browsers of "holding the web back" are overlooking this point.
You are right, PWAs (as far as their main driver states) want to be as capable as native apps. However, there is a huge distinction in that native apps start from a baseline of (almost) full system access, and PWAs must ask for permissions for anything but trivial capabilities. Permission interactions can be fine tuned on a case by case basis. If they are too spammy, they can be set to require a user event, a button in the address bar, etc. It has worked perfectly fine for android in the case of push notifications. I don't use it much, but for some webapps I do appreciate it a lot. For example twitter, I like to get a notification of some interactions, and some games notify me of scheduled events or when it's my turn.
Re: "holding the web back" 1. Not having push notifications on iOS _is_ sadly a dealbreaker when chosing between creating a native app and a webapp. 2. Android has had this feature for over a decade I think, and it works fine. 3. Apple gets a huge revenue cut from all native iOS apps, and has a general "platform image" it defends.
So there _is_ a huge contradiction, in that apple does obviously hold some key feature back, in the name of privacy, pushing users to use their preferred much more invasive platform.
>My iOS device has never once shown me "this website requires Chrome." I get to use the mobile web without needing Google. And Apple is the only reason why.
Let's be real though, Apple didn't enforce this to save user's the small annoyance of 'use browser X' popups. Instead it gives them full control over what web APIs are available on iOS devices, so they can avoid implementing those APIs that would impact on their App Store revenue. They have a clear financial benefit in not supporting the PWA technology that would move the 'simpler' apps off their app store and into web - where they wouldn't receive their developer license fees, a cut of paid apps and a cut of paid subscription fees (outrageous). Also, I believe it was Steve Jobs who first shared the vision of web applications on iPhone “that look exactly and behave exactly like native apps” ?
> Instead it's web developers, who are just annoyed that they have to actually respect the conventions of the platform they're building for.
Developers already get around this to some extent with cross platform tools such as React Native, Xamarin, Flutter. Native apps will always have a place, PWAs are not going to replace sufficiently complex app experiences, much like on Android or Windows.
Not many websites explicitly require Chrome. I don't know what you mean by 'My iOS device has never once shown me "this website requires Chrome."'
Why would your iOS device ever need to show such a message, unless it's implemented by the website itself? I don't understand the scenario you're describing at all.
Apple only allows the Safari browser engine to run on their phone.
So Google (and other web developers) can't do what they do on other platforms which is only test their website on Chrome or block users of other browsers.
For example, Firefox on Android gets a crap Google search from like 2005 unless you spoof your user agent and it works perfectly.
By that mandate has kept complete control over the browser space from Google.
I've very rarely seen a website block a user because of their browser in the last 10 years.
If a website doesn't work in Safari, it just doesn't work. That's it. I do know that devs have to work A LOT harder to get things to work in Safari when compared to Chrome or Firefox. It's like Safari is the new Internet explorer.
People "can" do that but that's not what either the commenter or Apple is doing.
And it's a package deal anyway. As long as PWAs do not provide viable competition to App Store on iOS, you can criticize App Store till you're blue in the face and nothing will change. So if you choose to force native UI holyness on others, at least take the responsibility for what else this brings as well.
> People "can" do that but that's not what either the commenter or Apple is doing.
It’s not even remotely fair to pretend that HN commenters and Apple share the exact same interests. It’s not anyone besides Apple’s fault that they are doing what they’re doing in the AppStore.
> So if you choose to force native UI holyness on others, at least take the responsibility for what else this brings as well.
Again, what responsibility? The idea that anyone who dislikes PWA has to take “responsibility” for Apple’s actions is plain ridiculous to begin with.
Another thing I’d like to mention is that there are also reasons for disliking PWAs other than worshipping “UI holiness.” Honestly, I don’t care as much for that.
The main issue I have with the pro-PWA agenda is that it’s pushing for browsers to expand access to their underlying platforms. If browsers keep on doing this, we’d have to give websites the same trust we give to apps when we install them on our devices. This would mean the end of browsing as we know it because we’d have to think twice before choosing to click on a link.
There's a difference between merely "disliking" something as a personal preference and insisting that other people should not have the things you dislike.
Neither the commenter I responded to nor Apple are simply "disliking" PWAs. Apple is not allowing PWAs to bolster their monopolistic moat, and the commenter is supporting Apple's decision to not allow _other people_ to build & use PWAs on iOS, seemingly just because they personally prefer native UX. Both of those are far beyond just "disliking".
This might seem like mere semantics about what "disliking" is, but while simply having personal preferences is fine, taking _actions_ that affect _other people_ or publicly expressing support for such actions necessarily comes with some moral responsibility for those actions I think. Perhaps some puny PWAs and their market effects aren't important enough for people to consider that, but the principle is all the same I would think.
> This might seem like mere semantics about what "disliking" is
Yes it is. Because you have cherry-picked a single word out of my whole argument to make your point. I dedicated an entire paragraph describing the undesired consequences of going the PWA route and you refused to acknowledge it, claiming it's only the "UX" people are taking issues with.
My original comment was in response to a particular commenter who did in fact imply that UI conventions were the reason. I even asked a question to clarify if that was the case. Snarky it was, but still a question. You have your own reason to not want PWAs, that's fine. Your reason is not the reason I'm protesting.
Not including your reason in my question does not make it a false dichotomy. I never stated that UI conventions were the _only_ reason to dislike PWAs, it was simply the only reason the commenter implied.
If _you_ think promoting walled gardens and Apple's monopolistic power is less of a problem than expanding browsers' scope of functionality, I disagree, but that's not what I came here to argue about, that doesn't have anything to do with my original comment that you have an issue with.
>My iOS device has never once shown me "this website requires Chrome."
Why would any PWA say that, if Safari had proper support for PWA?
>Instead it's web developers, who are just annoyed that they have to actually respect the conventions of the platform they're building for.
Say the developer is from a village in India or Nigeria who has just a Raspberry Pi to develop apps -
•What if the developer didn't have thousands of dollars to invest in new equipments just to develop for iOS?
•What if the developer wasn't able pay $99 every year for the Apple developer license?
•What if the just didn't want to give 30% cut to Apple from the revenue each time?
For all the times Apple uses 'Equality' in its marketing, the Apple platform & ecosystem restrictions clearly seems to be aimed at the privileged, pushing the agenda that 'Privileged is good' and 'Everyone should aim at being privileged'.
Less empathetic would respond, 'Well that's not Apple's fault that they aren't privileged'; Well then, we have to go back into colonial imperialism & American capitalism to prove why they aren't privileged in the first place and why Apple holds a responsibility every time it uses 'Equality, Human etc.' in it's marketing; which would be digressing from the topic.
> Why would any PWA say that, if Safari had proper support for PWA?
For the same reason that far too many desktop websites say that today.
> Say the developer is from a village in India or Nigeria who has just a Raspberry Pi to develop apps
Apple is not catering to this developer demographic.
> For all the times Apple uses 'Equality' in its marketing, the Apple platform & ecosystem restrictions clearly seems to be aimed at the privileged
You're conflating developers with users. What fraction of iPhone users are writing apps? If you wanted to prioritize users, there's much tougher questions you could ask.
Ha. Using Foundation, Swift and SwiftUI I can write an app that doesn't require a trip to GitHub or Node.js in order to work properly. I can prototype my UI right there in Xcode, and if there's something I need that hasn't made it into SwiftUI yet I can bring in things from UIKit without very much effort. Best of all, I can build for macOS as well as iOS from the same codebase now. It's really hard to get more developer-friendly than that, unless you mean "web-developer-who-doesn't-want-to-learn-iOS-friendly".
My iOS device has never once shown me "this website requires Chrome." I get to use the mobile web without needing Google. And Apple is the only reason why.
Maybe some day, web apps will become so undeniably awesome that Safari's position is untenable. But the agitation is not coming from iOS users missing out on awesome PWAs. Instead it's web developers, who are just annoyed that they have to actually respect the conventions of the platform they're building for.