Systems improve over time. Apple's privacy in iOS improved a lot. Not updating your apps makes it hard to keep up with API changes. Its normal you have todo some work to ensure it still works. Sometimes you're out of luck. But not all dependencies stay with us forever. Software is sadly enough not immutable, environment impacts how software runs... My old android game stopped working on newer devices 3 years ago due to a OpenGL bug that was fixed, i depended on the bug in order to make my app work.
While I loathe apple's moves lately, including this one, I have to agree with this comments sentiment.
Software is not free once written. You need to expend resources to keep it up to date and secure.
If you aren't keeping things up to date, you are neglecting the maintenance of your application. You wouldn't be surprised if your car stopped working if you never change the oil. Apple is taking proactive actions here, presumably to protect the end user experience. Wether or not I agree with the manner of proactive action is a different issue. We know apple loves to exert tons of control over things like this.
Apple is difficult to work with. It takes maintenance to keep apps up to date. Yes, the two year thing seems a bit over the top but remember the real issue is that this guy can't submit a new build because he hasn't added support for the last two OS versions.
The app store is hard to work with, but they payoff is immense also.
Immense - 30% they take to give you more trouble and kick you out whenever they deem it "necessary"... you know 'cuz you, their customer is the biggest threat to them and the users (Google/Apple)... honestly at this point I am all down to just go to another app store... once they let you do that without restrictions on the device Yyou paid for....
Listen, I totally agree with you. It's total BS and should be better.
That being said, I also think your frustrated and typed word salad into the reply box.
I'm not apple. I don't like apple's practices. I don't own any apple devices (beyond what's required to support an iOS app) because I take an issue with the same things you do.
The reality is, if you want to support apple devices, you have to play their game, and that means updating your apps regularly. Sorry if you don't like it. I don't either.
This is ridiculous. A game that has no online component has roughly zero maintenance burden. This is why, for example, the original Deus Ex is still one of the better ways to spend your time playing games on PC.
Network connectivity has brought along with it a certain level of toxicity around updates and maintenance and such. At the very least Apple could be shipping older runtimes, downloaded on demand similar to Steam Proton runtimes.
The more reasoned part of me says that you're totally wrong and you can boot up Windows and run software from two decades ago and the only real issue will be high dpi support which can be worked around.
There's nothing actually necessary about what Apple is doing in the least. They could even take a soft approach and simply slap a "vintage" tag on old unpatched software and call it a day. There is something profoundly stupid about automatically banning any software more than 2 years old from all Apple devices without even giving users the choice to use that old software. I'm not even saying it's morally wrong, or it's bad for consumers, I'm saying it an incredibly dumb decision.
There is SO MUCH niche software out there designed for a tiny audience which nobody will ever be able to afford regularly updating so long as it's still basically working. Trying to maintain this ideal where only well patched up to date software appears on the app store is just dumb.
Sometimes they just force you to implement feature for them, like “Sign in with Apple”
> We’ve updated the App Store Review Guidelines to provide criteria for when apps are required to use Sign in with Apple. Starting today, new apps submitted to the App Store must follow these guidelines. Existing apps and app updates must follow them by April 2020. We’ve also provided new guidelines for using Sign in with Apple on the web and other platforms.
> 4.8 Sign in with Apple
Apps that use a third-party or social login service (such as Facebook Login, Google Sign-In, Sign in with Twitter, Sign In with LinkedIn, Login with Amazon, or WeChat Login) to set up or authenticate the user’s primary account with the app must also offer Sign in with Apple as an equivalent option.
And implementing Sign in with Apple in Unity is one of the worst experience in my career that I dedicated a blog post talking about:
- Native Sign in with Apple button not working in Unity
- Official Sign in with Apple plugin provided by Unity also not working
- Hooked up API with help from GitHub and created Sign in with Apple button by myself ended up getting `4.0 Design` rejection without explanation
- Trying crazily to contact Apple reviewer for weeks only to find out you have to use system font on that button
- Unity cannot support new Thai system font after iOS 13 and they mark it won’t fix
- Ended up building a native sample app and screenshot Sign in with Apple button from it in 12 different languages into PNGs and ask the my designer co-worker to remove background for me to import them into Unity
- After all these the update is finally accepted by App Store
- Casually downloaded games by other companies a week later, saw a totally malformed Sign in with Apple button not being nitpicked by reviewer and just went live like that
While Apple could do a Microsoft and try to keep third-party software working for decades, they've realised they can offload that work to the third parties for free.
I can easily run old x86 Linux binaries on ARM, and vice versa, automatically with binfmt_misc. User-mode emulation allows you to run x86 Windows binaries on ARM WINE, as well.
And Microsoft fully supports running x86 applications on ARM Windows[1], as well.
My raspberry pi boots Windows 3.1 just fine (through dosbox). It's more likely to run a random dos / win 3.1 program than my iPhone is to run a random piece of old iOS software.
Put another way, the raspberry pi runs all but two of the games I played in that era. I can think of 6 iOS games that no longer run, and I played at least 10x as many games on DOS as iOS.
My experience with productivity software has been similar.
Totally, but that’s not what I’m talking about. We did the move from OpenGL to Metal, for example. It was tough, but it is a huge improvement and we were glad to do it to avoid code rot. I’m talking about how something that we wrote and compiled with the last fully updated IDE a few months ago suddenly stops working in the next release and requires tweaking. This isn’t 20 year old code that we haven’t touched. It’s 20 year old code we’ve been religiously updating the entire time.
Technical debt has a cost. Raymond Chen has countless blog posts about what it takes keeping backwards compatibility working. For example, an update to some part that should not break anything actually ends up breaking an app because the developers decided to monkey patch based on a match of a byte string or whatever that ended up changed.
The only reason WINE works is because of a massive community effort to reimplement those bugs that Windows is forced to keep.
there is no reason to assume a priori that systems improve over time. if anything, the opposite is the case. the overall computing experience has been steadily declining for many years, due to the web, javascript, electron, etc
Systems improve over time. Apple's privacy in iOS improved a lot. Not updating your apps makes it hard to keep up with API changes. Its normal you have todo some work to ensure it still works. Sometimes you're out of luck. But not all dependencies stay with us forever. Software is sadly enough not immutable, environment impacts how software runs... My old android game stopped working on newer devices 3 years ago due to a OpenGL bug that was fixed, i depended on the bug in order to make my app work.
Welcome to the real world