Even stupider is their OS yearly release cycle. Apple OSes are feature-complete. They have been for quite some time. They do need iterative updates to add new APIs for new hardware, but that's really it.
I like to stay on older OSes because I agree they're feature complete and I don't want to lose battery life to the newest ML hotness I probably won't use and won't run efficiently on my old phone.
I've praised Apple for allowing me to do this by continuing to put out security updates for older phones, but the most recent set of pretty important security updates (15.7.2) have artificially been restricted to only devices that don't support 16. This is incredibly frustrating because all the work has been put into making my older device secure without having to update to the latest OS, Apple won't let me have the update and I have to go to 16 instead.