When Apple tests new ground, only their apps have access to a feature. Then only partners. Then only approved developers. Etc. This gradual rollout allows refinement and reduces the odds of screwups.
It looks unfair, but Apples goal isn’t to be idealistically fair, but to keep iOS a good experience to users.
For every good use of a feature there’s an abuse case.
Reduce the odds of a screwup by giving it to arguably the most popular app in the store?
This is nothing more than apple giving themselves and their preferred partners an unfair advantage - somewhat in opposition to Tim Cooks recent statement on developer equality.
Do I have to explain that giving something to a few key apps is much easier to control and analyze than giving it to thousand of obscure apps?
It also gives more to the users - the feature is available in apps most of them use.
Also this will be unpopular opinion but I don’t consider Apple giving themselves features an unfair advantage. Apple obviously trusts itself more than some random dude with a Mac mini.
I’m a huge Apple fan, and am often on their side on HN (check my comments). But this whole App dev and distribution unfairness I am dead against.
I really don’t see how you can view this behaviour as anything other than an unfair advantage. By all means let them level the field by not using private apis themselves.
And more importantly, when you are asked about it publicly, don’t lie about it.
Hilariously, “most popular apps” being Zoom getting busted for lacking basic communication security out of the gate when the pandemic hit and a/v comms became important. Please, tell us more about these most popular apps.
So the pandemic hit, use of teleconferencing apps shot up, and then security issues were identified in one of the most popular apps. How does that refute the comment you’re responding to?
I think the point is that as a small app. The security issues aren’t seen or found. So any parent comments about bigger apps being worse than other apps doesn’t work in this case or have any solid evidence of in general.
In the past [1] they'd "(ab)use preinstallation scripts, manually unpack the app using a bundled 7zip and install it to /Applications if the current user is in the admin group (no root needed)."
Every company does this. They roll new features out to trusted partners first to get feedback and then they polish it. For instance how do you think that AWS [1] can have testimonials about how great a brand new product is before it is available for public release?
Once you make an API public, you have to support it for the foreseeable future. It’s much easier to work with one or two trusted third parties.
When I was working for a small company that sold access to our APIs, we would test it internally first, then a few partners. Then make it available to all of our customers.
Even Epic admitted that it got special treatment from Apple and was able to test and recommend features before they were made public.
I am aware of how staged rollouts work, but you cant say that you treat all developers the same if you give some features you don't give others - regardless of their maturity.
Even giving those "preferred" developers advance notice of upcoming features isn't treating them the same as other developers. I really don't see how you can think otherwise.
No developer who has watched a WWDC demo since the first version of iOS supported the App Store in 2008 is unaware that some developers get prerelease versions of iOS so they have something to demo on stage.
No developer should be under the expectation that they are going to have the same level of access to Apple engineers as someone from Microsoft, Adobe, or Epic.
It is fair, if Apple uses one or very few select developers in bringing a feature to the market. But after a certain point when the feature is rolled out in production of a very popular app in a way that it is visible to exist to everyone, they should be very transparent about it and clearly document it. And make it available for development, even if getting approval to deploy an application based on it might be a separate step.
We might be missing out a lot of good apps. To get really good and innovative apps, a lot of developers need to be able to experiment with a features to develop good ideas and implement them.
It looks unfair, but Apples goal isn’t to be idealistically fair, but to keep iOS a good experience to users.
For every good use of a feature there’s an abuse case.