I switched to using PWAs for social media apps for similar reasons the author outlines. A pleasant, but somewhat unintended consequence is that I just use them a lot less because the experience is pretty bad. It makes me a little sad because I’ve always believed in the PWA dream, but the reality is that they’re bad because companies certainly don’t want to make an experience that rivals the app they really want you to download.
Expected, but just leads to reinforcing the idea that PWAs won’t ever be as good when every one people try from someone with a popular app is so awful.
What's funny is that desktop versions of websites in a lot of cases are responsive, and work fine on small screen. BUT at the same time the mobile version is crappy and lacks some features (or just shows "download our app").
Recently I've set up Firefox on Android so that it always run in desktop mode. I needed to also change screen width in about:config, because otherwise everything is too small. But after this websites seem to work better.
quite likely that the site has a mobile "mode" and a small-screen mode (for desktop), each made by different teams. some mobile mode website is fine, but others suck. Where as the small-screen mode for desktop tend to be made by the same team/person as the main site (it's a css media query after all) - so it's likely to be more coherent.
Alternatively, you can download Firefox Nightly instead of regular.
"about:config" just works in Nightly. No fuss.
You can sideload extensions in Nightly, too, after you activate the developer options. I don't think they've added that to regular, as yet? At least not with as much flexibility.
Anyway, I'm gonna try this mobile desktop mode thing and see how it goes. Thank you to everyone!
Installing extensions from file is available on the release build as well, after enabling dev options.
I think the only difference is nightly allows installing unsigned extensions, which I don't personally have a need for (as getting a personal/non-published extension signed is very easy).
And you don’t realize that social media apps put cookies on other websites so they know you have been to another website and then start showing you ads based on your interests?
Apps can’t tell what you do in other unaffiliated apps nearly as easily at least now on iOS that there is no globally unique identifier that apps can use to track you.
Apps require you to sign in so they've got you immediately. They can share all your activity with whoever they want. Websites (many) do not require you to login (youtube, reddit, hacker news, etc....)
Apps also try to open all links into their own webview, a webview in which they can track all activity.
All privacy-respecting browsers block 3rd party cookies by default now, which prevents that kind of tracking. There's still other forms of fingerprinting they can use, but those can be used in apps as well.
But I guess apps can run web views that have access to all the same fingerprinting as a standalone browser, minus any ad-blocking plugins (on iOS at least)
With a browser, you have the ability to block cookies, block whole hosts/domains, alter DOM content, alter tracking URL's, and (often) disable low level features you don't like. With apps, not so much.
And still waiting for examples of how apps can track you better. If the server wants to track you by your originating IP, all of the client side blocking will do nothing
What is your definition of "track you" in this context?
If it's to pinpoint a unique device accessing a website even through VPNs and/or other IP changes, there are an untold number of ways that apps can track you better than a website.
Apps have access to many device-specific APIs in addition to all the web ones, and every additional bit of information used can be added to the mix to create an even more unique fingerprint of the specific device accessing a website.
For example with phones, an app (even if it's mostly just a webview) may now also have access to your phone model, phone number, maybe your contacts or GPS location, and many other things.
A website Can easily deduce your phone model based on the browser agent attribute which tells the operating system and the screen resolution with a fair degree of certainty, an app can’t get your phone number, it can get your GPS with your permission. But so can a web page with your permission. There is a standard JavaScript API for it. Contacts are also gated by permissions.
Some apps can/will detect that an OS-level VPN has been activated though, and refuse to work at all. Spectrum TV does this for example, as well as some banking and other types of apps.
Yes and sites can also fairly reliably detect when a user is coming from a well known IP address block belonging to a VPN or VPS provider. It’s a built in feature of I know at least AWS
Assuming you are using a "well known IP address block belonging to a VPN or VPS provider", yes, but it is also possible to setup VPNs/proxies outside of well-known IP blocks.
PWAs can be good, but for a lot of social media, they're only as good as their website experience. Many (most) companies seem to make their website intentionally slow and buggy, probably with the idea that users only need to use their web UI for a short while because they lost access to their apps or something.
For instance, I've installed Mastodon as a PWA and it performs great. Photoprism also works so well I haven't even bothered to look for an app.
The absolutely batshit insane part is that the 'native apps' are almost certainly created using web technologies which call the exact same APIs as the web app.
There's zero reason the web apps should be so slow.
You can't use Facebook Messenger on the web at all, unless you go to Facebook and switch to the desktop version. Then it's a simple matter of zooming in without accidentally clicking anything, using their fiddly interface to load up the conversation you're interested in, and get bounced around the screen as the input focus changes around.
Puzzled because I use Messenger web version all the time on the laptop. Works pretty normally. I don't use Facebook usually. Maybe if they detect a phone they refuse?
Usually they only break the mobile websites. They know they won't get people to install programs on their computers for "online things". Not least lots of people don't have admin rights in their computers, but also people are used to accessing "online things" via browsers on computers rather than an app per website.
But, they've managed to make "phones use apps, not browsers" a social norm that enough people accept tacitly, perhaps because near enough everyone has the ability to install apps on their own phones.
On iOS devices you can turn off the ability to allow apps to wake up on a one by one basis “background refresh”.
And if you are concerned with your privacy, it’s nonsensical to buy a phone run by an adtech company that only made the operating system in the first place to sell ads and collect your data
Pwa with permissions granted gives access to:
Location, create notification, phone state, phone #, IMEI, motion data
Mobile app with permissions gives access to
EVERYTHING a pwa gets PLUS, Contacts, sms, notification content, biometrics data, web browsing data, phone activity history, location history, camera access, microphone access, NFC access, near device history, nearby wifi listing, saved wifi networks, Bluetooth device ID, Bluetooth beacons nearby, some device settings, personal data access(photos/music)
Maybe on Android. Literally half of that shit isn’t accessible by iOS apps even with full permissions. This feels like you’re just throwing shit against the wall.
I was wondering if it's just me. I am using Brave on iOS with all the possible blockers enabled, so I'm not surprised when some website doesn't work well. Instagram literally freezes solid after 5-15s of being on the website, so I usually only quickly scan the top 2-3 posts in the feed. I only follow people I know personally, so this is usually enough to do once or twice a day and stay up to date. If I see a close friend posted a story I kinda want to see then it usually takes two or three hard closes of the browser to actually see it. Sucks, but sucks less than being mental gamed into doomscrolling every time I get an app notification.
By the stopwatch it takes 3x longer for me to upload a photo to the Instagram web app than it does to Mastodon. Facebook's blue website works pretty well but the Instagram site comes across like something that was vibe coded in a weekend or maybe a straw man that was made to prove SPAs are bad. Contrast that to the Mastodon application produced by a basically unfunded application that's fast and reliable.
Just hours ago I couldn't even copy-paste a description of a post I drafted in another app. Literally nothing happened when I tried to paste. No console errors, no feedback, nothing.
It was a bit of a longer one, but still far below Instagram's supposed character limit. The fact that they somehow broke copy-paste functionality really baffles me.
Surely at some point some team that writes this has to demo it and someone checks it. After however many years of it not working, surely that's strategic, not accidental.
It's such a pervasive pattern and somehow always in the direction: the app works better than the website. If there even is a website.
Sometimes it goes the other way, in fact enough it's a running gag that the banner that says "Download our app for a better experience" at sites like Reddit ought to have one of these
I don't know if big companies even know how to make web apps. Honestly. Which is extra insane to me because there's so much investment in web technologies. On my team at $BigTech there's like 1 or 2 people out of 30 people on our team that knows web, the rest are mobile. I'm a web guy but I refuse to touch our web-app because they butchered the tech stack and I don't have the energy to deal with that BS. We still have an mobile-web version distinct from the 'desktop' version because.... I don't know why, whoever wrote it never learned about responsive web design and we never bothered to move out of the stone ages because if people want to use the app on their phone, they should download the native app of course! And by "native" I mean we built our own half-baked framework so that we could cross-compile for Android and iOS.
Also I don't think these people know how capable PWAs are. There's very little you can't do in a web-app that you can do with a native app.
I have had a FOSS web app for learning arithmetic for quite a few years. I occasionally review it, and make changes. Each year Chrome and Safari both nip at the edges of what allows a PWA to be OK. No one really cares until one has to write documentation helping folks install the PWA and avoid issues that did not affect the PWA a few years ago. I mean really, are Tim and Sundar really that afraid ?? I guess so. They have dozens of millions on the line. Capitalism... gotta luv it.
Hmm, I'm making a site and I planned on using a PWA for the app experience instead of a native app. Am I setting up for a bad time? I'm not too worried about the installation hurdle, my potential early adopters are motivated and smart.
If you're using React, I'd recommend using Silk (silkhq.com) to create native-like bottom sheets, pages, sidebar, etc.
Most animations, including the swipe, are hardware-accelerated, and it deals with a lot of common issues you encounter on the mobile web (body scrolling, on-screen keyboard, etc).
Expected, but just leads to reinforcing the idea that PWAs won’t ever be as good when every one people try from someone with a popular app is so awful.