I'm on board with most of your examples, but in my mind the iOS example is different from the rest. iOS is an operating system designed to run native apps with a default UI. Apps can build on top of the SDK and optionally build it using the default UI. I've had apps that did these and they've been fairly stable throughout the years. It's even functional for iOS 7 if I wanted to leave it alone. I also have apps that have its custom UI that won't be changing at all for iOS 7. Of course, the same way that a developer might want to update a Win 95 app for Win 7, he or she might want to update apps when new iOS versions come out.
Is the criticism due to the annual version update? Or is it because there are API changes every new version? If it's the latter, wouldn't updates be expected, and in fact desired? It may just be me, but I've had good experiences when it comes to API stability with iOS. I've been unable to keep up with the newer features (I'm indie and only work on apps jn my spare time) but the new features rarely get in the way of my app being able to run with the calls they are already making.
I'm aware of the UDID deprecation from before, but devs were given plenty of time to transition from it. Actually, I was surprised how much time they gave.
Is the criticism due to the annual version update? Or is it because there are API changes every new version? If it's the latter, wouldn't updates be expected, and in fact desired? It may just be me, but I've had good experiences when it comes to API stability with iOS. I've been unable to keep up with the newer features (I'm indie and only work on apps jn my spare time) but the new features rarely get in the way of my app being able to run with the calls they are already making.
I'm aware of the UDID deprecation from before, but devs were given plenty of time to transition from it. Actually, I was surprised how much time they gave.