The market right now is absolutely flooded with indie games, some light pruning is probably for the best.
The market right now is absolutely flooded with indie games, some light pruning is probably for the best.
If you say something like “apps that are recently updated and using all of the latest APIs should be ranked higher within Apple’s search algorithm and recommendations”, that would make quite a bit of sense to me as an incentive to keep development and progress moving forward with all of the updated tech.
But it makes no sense to force devs to expend the effort to recompile and update an App just for the sake of staying on a store if everything is already working perfectly as intended with no security issues. This is especially a crap deal for small developers without endless resources to continuously be working on rebuilding and retooling projects just for the sake of Apple’s inability to do search and discovery well.
And then, I dunno, decide you are not going to upgrade because you don’t want devices in your house to be expensive bricks.
No it hasn't. They can rebuild without improving anything.
Sure, but realistically how does Apple tell perfectly fine apps apart from apps that are abandoned and do have security issues?
Hand-auditing every app doesn't seem realistic. I doubt a good automated solution is either.
They could just take developers' word for it, but Apple has a responsibility to protect end users. If you tell a developer, "your answer to our next question determines whether we remove your app", then you can't count on them to answer honestly because you gave them an enormous incentive to lie.
Not to mention, the more apps with an inch-thick layer of dust there are on the App Store, the more they become trapped in the same kind of backwards compatibility mire that Microsoft is now stuck in. They could just hide apps that don’t run on newer versions of iOS I suppose, but with the extremely high system upgrade rate of iOS users that’s practically the same as removing them from the store.
How is the age of the app relevant?
By arbitrarily removing perfectly working older games? This is why indie devs such as Vlambeer that used to make quality mobile games now avoid ios and android like the plague.
https://variety.com/2019/gaming/features/android-ios-apple-g...
The result of this is mobile games require significantly more upkeep then games on PC or consoles, and as a result the only games that are profitable in the long run are those that exploit their users with f2p microtransactions.
The end result of this is the sea of uninspired exploitative trash that makes up the games market on ios and android.
Kicking them off the only store on a closed platform is erasure of artistic history. It's doubly insulting when they still work perfectly without modification.
For comparison: I've never heard of a game getting kicked off of a console's store because of a "lack of updates". The stores themselves usually shut down eventually - which is its own problem - but at least there's a reasonable business argument for why the company can't be expected to offer that service indefinitely.
It's a good thing I don't care for online gaming!
There are plenty of old 32 but apps that are “unavailable” in the App Store that are still available to older devices. Apple explicitly said that the authors app would still be available to people who already owned it.
Software is an ongoing commitment and periodic recompiles and fixes should factor into architecture and planning. Some decisions early on can save you a lot of pain. For instance, building your app with stock UI widgets to the greatest extent possible and limiting custom widgets and third party stuff to a minimum goes a LONG way for making your apps weather new OS versions better. These days my UIKit apps only need a handful of minor changes when a new OS version is released, making them trivial to maintain.
Choosing Unity was a big part of the problem in this case because Unity is terrible about maintaining particular versions of their engines over time. Devs need to start dumping Unity over this, because it’s the only way that Unity is ever going to fix it.
You can on Windows. Microsoft has shown us what a three decades of maintaining an OS to that standard will do to a platform and its software ecosystem. There are definitely pros and cons to taking that approach. These days, as a user I'd much rather have decent emulators of older platforms and operating systems, rather than rely on the current OS to be completely and forever backwards compatible. But that doesn't seem like a good solution for mobile platforms or their app stores.
https://developers.redhat.com/blog/2019/08/01/how-the-gnu-c-...
I have linux binaries from 2001 that still work fine on recent Linux kernels.
If they link against libstdc++, Qt or Python, good luck...
You could “hack” a Windows server running IIS just by encoding DOS commands in the URL bar.
http://cd.textfiles.com/hmatrix/Tutorials/hTut_0239.htm
Also, by Apple eventually abandoning backwards compatibility, it was able to migrate Macs to different better processors four times.
By abandoning 32 bit software support, it was able to save space on its processors.
68k -> PPC actually did not break backwards compatibility at all. They realized it they had to make it good for the transition to work, so they built emulation right into the OS. A well-behaved app made for a 1984 Mac will run unmodified on the last version of old Mac OS, and on Mac OS X up to 10.4 under the Classic environment, that's over 20 years of compatibility. Apple could have maintained this level of compatibility until today, but they choose not to.
Apple couldn’t maintain 32 bit app support with newer processors without wasting die space.
According to Raymond Chen (author of “The Old New Thing”) there was literally code scattered all through Windows of the affect:
if app == “SimCity 2000” then doCompatibilityHack()Almost no one else seems to care, but I am too stubborn and lazy to do it any other way.
Auugghh! This is the wrongest thing I’ve read on HN since 2021 COVID threads. Sorry you get the distinction!
Software absolutely should keep working as it did the first day it was released. The binary is the same, no cosmic rays have flipped any bits, so why should it stop executing exactly the same, but for a deliberate choice made by the platform to break backwards compatibility?
This idea that software should have to get recompiled over and over with the latest SDK simply to keep doing the same thing is maybe the worst idea ever thought of in software: and Apple leads the charge.
And Apple ecosystem is rapidly changing. OSes are changing every year. Phones get reiterated every year. 2 years of no updates mean 2 cycles behind. And Apple is very good with pushing updates on the users.
And to be technically correct - both software on the tape brought to Mars and removed games will work in the same hardware and running context exactly the same. But for Mars context made it not runnable anymore and for Apple we’re talking about taking it down from storefront (but all existing customers can still get it).
I’d recommend checking Emacs - Elisp is very stable and some code is working well for decades and yet with all the carefulness of the developers some thing breaks due to API changes.
[0] https://media.handmade-seattle.com/self-hosted-conference/
If the argument is that OS vendors should include virtualized old OS environments for compatibility with old binaries to make sure OS development remains unencumbered, I could get behind that, but in that situation App Store listings of seldom updated apps should include a highly visible indicator that it’s been many years since the last update and as such expectations of significant bug fixes and support should be tempered.
No one opened your app in 2 years? It gets the boot.
If an app is still actively being used, removing it hurts developers and users!
I have apps on my Android phone that haven't been updated in years. They work just fine.
Heck on my MacBook I use an app that wad last updated in 2016 or so, and I consider it a vital pri0 part of my daily workflow!
[1] https://boisefoundry.com/scam-apps-on-apples-macos-app-store...
But even more recently, there were deprecated APIs that eventually Apple stopped supporting.
Have you read “The Old New Thing” Microsoft blog? There are all sort of special case hacks in Windows just to keep one version of one third party app running.
Should Apple also have kept shipping its 68K emulator from 1994 in its 2022 ARM Macs?
As if that was the concern there at all. Most people who publish free games consider them "art", not "business model".
Too much backwards compatibility is as bad as too little.
(Windows user on and off from win 3.1 to 8)
That would make ongoing maintenance more expensive for games than for other apps. Maybe Apple should honor that and allow more slack for games.