This is true. I wonder what version of macOS SwiftUI will be compatible with?
iOS 13 seems to be compatible with iPhone 6S which was released in 2015. This gives basically a 5 year lifetime for OS support which I think is actually fair enough. If you commit to more than that you end up spending all your time working on compatibility and it’s impossible to move forwards.
We basically have a 5-year compatibility cycle too. Any more than that and dev just grinds to a halt, especially in a small team like ours.
The environmental impact is a good point but a bit of a different issue. I’m not sure how motivated by iOS releases hardware purchases are. It’s normally a newer camera or bigger screen that people want, or simply just to have the newest item.
If Apple really wanted to address this, they could just not release a new phone every year…