Apple tends to expect a lot from its developers. Changing processor architectures is a big one. Unlike other platforms, Apple cuts support and moves on. If an app is abandoned, it starts to show sooner on Apple platforms than anywhere else.
If it’s something that will become critical to a user’s workflow, that can be a big problem. Why invest in an app without a future?
I prefer the perspective that a computer program is akin to a mathematical constant. This was true in the old days. A program I wrote in C64 BASIC, way back in 1980s, should still work precisely the same today (even on one of the freshly-manufactured Commodore 64 Ultimates).
You've honed right in on what's changed since the old days: Platform vendors (such as Apple) now continuously inject instability into everything.
You might argue that developments such as "changing processor architectures" justify such breaks from stability (though I myself have qualms with one of the richest companies in the world having a general policy of "cutting support and moving on"). But I would point out that Apple (and other vendors) create instability far beyond such potentially-justifiable examples.
To me, it appears as if Apple actively works to foster this modern "software is never finished" culture. This is seen perhaps most clearly by they way they remove apps from their iOS store if they haven't been updated recently (even as little as 2 years!): https://daringfireball.net/linked/2022/04/27/apple-older-gam...
Shouldn't we be demanding stability from our platforms? Isn't the concept of "finished software" a beautiful one? Imagine if you could write a useful program once, leave it alone for 40 years, and then come back to it, and find that it's still just as useful. Isn't this one of the most valuable potential benefits of software as a premise? Are the things we're trading this for worth it?
I keep looking for more useful DOS applications. Have had a git repo for 15+ years that has my config and virtual C:. Once something is installed it will just keep working and I sync that repo to all my machines so it have the exact same things running with the exact same versions. Binaries from 40 years ago still run fine. Just wish more modern applications supported it.
I also have QEMU installations of some Windows versions and old Debian versions (I like Debian 3.0, since the entire library of packages fits neatly on a single DVD ISO... that was the last release that small). Those are also useful for having stable platforms to run offline applications on without having to be bothered by upgrades.