One thing is the revenue generated by the App Store but suppose JavaScript web apps were just as powerful and well integrated as native apps; then why use native apps at all? Why have an App Store at all? Why have a Mac or an iPhone if any device with a modern web browser would do?
When Huawei tried to create their alternative to Android. The big thing missing wasn't the hardware or the operation system. It was the App Store with your map app, your banking app, your scooter app and so on.
The App Store and the proprietary development platforms for Android and Apple has become a way to keep their duopoly in place.
Look at a sophisticated web app, like Google Docs. This has a menu bar, which is a bad copy of the native Mac menu bar. Web apps are copying native app conventions, to try to be more familiar. But they're also eroding those conventions.
Eventually only click and swipe will be left. And this problem is not going to be solved by Web MIDI or whatever.
I can’t say I agree with this. There are a ton of MacOs apps that implement fully custom GUI (first one that comes to mind is Jira native Mac app which looks nothing like a Mac app I’ve seen before)
I agree web apps are likely eroding OS conventions though. The Jira app is an example of that (they decided to make their native app look and behave the same as the Jira Web App instead of using standard MacOS GUI conventions.
It’s a tough trade off.
These apps are frustrating for someone accustomed to the Mac UI. Basic interactions (like context menus) don't work at all, or work in unexpected ways. I have no idea what these apps can do because they all have a unique UI vocabulary. So I don't try.
I think Apple has really dropped the ball on this. They ought to have spotted and embraced the web's great strengths early. Ephemeral, zero-install apps, using native components - that's the platform I want. Though I understand how others may disagree.
Why have native apps at all?
Because web apps are crap, excuse my Swahili.
Or is it that Tim Cook was looking at Apple's balance sheet and decided that they couldn't afford to lose the 30% cut of all the MIDI-capable iOS/iPadOS apps that could be completely replaced by a web app?
The reality is that the real cost of this feature to them would be developer time; it would be a colossal waste of their limited WebKit/Safari developer resources to implement Web MIDI rather than something that would actually be used by more than a scant sliver of a percentage of Safari users.
Sure, you'll be suspicious, but I seriously doubt you're the average user. I bet a very large proportion of Safari users have no idea what a MIDI device is and some significant portion of them wouldn't think twice about granting those permissions.
The parent comment implies a bad actor using the API for something like fingerprinting, and a common user who may have never even heard of MIDI, let alone have a device.
This is assuming we moved to a model where more permissions had to be requested rather than just allowed
Say no.
Average Joe doesn't need to learn what all these things are. In the unlikely event he knows what the thing is and knows that he wants it, he can answer yes. But his default response needs to be no.
>Web should be built for everybody
Exactly. That's why Average Joe needs to adapt.
The app clips feature they showed? That should have been a qr code triggered pwa with notifications, except everybody had to build it as an app because they couldn’t do notifications, and then apple used the cumbersome nature of those apps as the reason for app clips. It’s the snake eating its own tail, and I’m getting IE6 vibes because microsoft also strategically stopped improving IE for web apps because they wanted to push app developers to native because of the improved user experience. Yeah, the web is worse, but worse is better.
You only think from a developer’s perspective. What if you are the user receiving 50 notification requirement a day from a web browser?
People have very strict mental models of what “the web” and “native” should do but they’re not actually based on anything. There’s no actual reason why a web app sending you notifications (which it has to prompt for permission to do) is different to an app doing it. From the non developer perspective the divide makes no sense.
Not to mention the privacy argument by Apple feels disingenuous. The reason people are so outraged by tracking on the web is because they know it’s happening. Meanwhile native apps include bundles from Facebook to implement sign in with Facebook and it does whatever it wants. But because you can’t inspect and check no one talks about it.
I get that making an app instead of a PWA is a pain the in the ass, but the reason I pay $$$ to Apple is so that pains like that exist in the developer’s ass instead of mine. I want to be in their walled garden and I want them to keep lazy developers and poor UX out.
The internet became more powerful so it does more things. The PWA spec allows for zero-install apps that are just as performant (or more) than native apps. You can view their network requests in the console, and they run in a sandboxed environment. You want to download and install a binary for something that can be accomplished in a few kb of cached JavaScript?
I don’t want any websites triggering the browser to ask me if they can send me notifications.
I don’t want any websites asking me if they can ask the browser to ask me to send me notifications.
I don’t want any websites using their classic scams like tiny “x” buttons that have insufficient contrast and are impossible to click on a mobile device anyways to ask me if they can ask the browser to send me notifications.
I don’t want to see my grandma dealing with scammers who trick her into allowing potentially phicious notifications that she doesn’t know how to cancel, or even what the source is.
I want developers to jump through as many bullshit hoops as possible before even having the chance to send me notifications. Apple and their review prices help me out there, and for all above points.
It seems to me like you believe everyone is the same as you: they value small package size, they personally audit all code they run, they want random corporations to have an easier time getting a presence on their home screen, and they’d be able to easily identify and stop all corporate badgering they do end up receiving. I don’t think any of those are true even for me (someone in the industry), let alone the population at large.
I agree with you actually, but not everybody does. Some people do want push notifications when they get a new email or Facebook update. I wish it weren't so, but it is.
> I don’t want any websites triggering the browser to ask me if they can send me notifications.
> I don’t want any websites asking me if they can ask the browser to ask me to send me notifications.
> I don’t want any websites using their classic scams like tiny “x” buttons...
Given that we live in a world where there are notifications, you have the choice to disable them on your device, or decline them on a site by site basis. For your grandma, I'd suggest the former strategy.
But if you don't want the site to ask you, and you don't want the browser to ask you, and you don't want to disable them for all sites, you're setting yourself up for disappointment. All the whining isn't going to bring back 90s internet.
> It seems to me like you believe everyone is the same as you: they value small package size, they personally audit all code they run, they want random corporations to have an easier time getting a presence on their home screen, and they’d be able to easily identify and stop all corporate badgering they do end up receiving
What's the difference between a native app asking to send you notifications vs a web app?
> I don’t want any websites triggering the browser to ask me if they can send me notifications
That’s fine for you but some of us who are in niche communities or have weird applications don’t want to wait for a VC to fund the development of a native app.
Right now I can’t get notifications from IRC at all which pushes me and everyone else to centralized chat services. This has distorted the evolution of the internet and I would argue has contributed heavily to the “fake news” problem.
> It seems to me like you believe everyone is the same as you
You’re projecting. We want a feature that the user can disable, not ever being able to use this at all means everyone has to want the same things you do.
It doesn’t take a VC to make an app, I made some starting in HS (with push, yes), and you can too. Be the change you wish to see.
You're clearly wrong then. iOS already does something similar with location and doesn't suffer from this problem.
>It doesn’t take a VC to make an app, I made some starting in HS (with push, yes), and you can too. Be the change you wish to see.
That's actually kind of upsetting. On my other machines I do fix problems. The cost of volunteering to deal with apple's shitty phone is an overpriced machine where even the old used desktops are more expensive than the modern one I just built, the time it takes to learn a new language and an (IMO pretty crap) environment (GUI toolkit not withstanding,) the time it takes to maintain an app for a platform with constant API churn, and $100 a year for a developer license (nope, you can't use push notifications without paying this.)
Here's the change I want to see: people abandoning an abusive company. I'm buying a pinephone so that the next time I have a problem I can deal with it without having to buy the beater car equivalent of a computer (and spending as much.)
Most (all?) of us like to be the one who controls what we can do with our own devices.
These standards return some control to the user, rather than the corporation.
But then we get more prompts! Well, not necessarily. The user could choose to have all prompts automatically rejected, and only opt-in when they desired. This would not create more information for trackers to track, because Apple could make it the default for all of their devices.
This seems to solve the problem: People who want the features can have them, and the people who don't want them can ignore them without interruption.
This is where our problem with Apple is: there are solutions to be found but rather than solve them, Apple hides behind lies in order to protect their bottom line while harming many users and the internet as a whole.
Their browser share dropped a little recently (https://gs.statcounter.com/browser-market-share). If that continues, it'll certainly irk them!
Now, I can't see people suddenly not using their iPhone because of the pandemic (quite the contrary actually) - perhaps this signifies a slowdown in iPhone sales?
Currently my desire for both privacy, convenience, and usability align with Apple's current business decisions, so I choose iPhone. When Apple pivots to a new business model, I'll find the best compromise product.
Apple is relevant today because they actually are focused on products, not profits. Sometimes it really is that simple.
On the other hand, which apps that make money via in app purchases would be viable and successful as web apps?
All of the APIs that Apple isn’t supporting wouldn’t help a single major revenue producing app move to the browser.
And still waiting for someone to give me an example of an app that makes a lot of money on the App Store through in app purchasing, that could probably make just as much money as a PWA if it weren’t for mobile Safari.
And maybe I'm missing something, but wouldn't the fingerprinting concern be mitigated by the fact the app has to ask for permission before using the API? If an app that doesn't have to do with MIDI asks for permission to use my MIDI device, I'm going to be instantly suspicious.