After watching the various feeds regarding Apple’s media event this Wednesday, I picked up my iPad (1st generation) and went to download the new iPhoto app. Unfortunatley I was out of luck, as it said I needed a camera (why? If I had a Mac without a iSight Camera would Apple prevent me from using iPhoto on my Mac?). Thankfully I have an iPhone 4S, so I went to the App Store and was presented with the following Updates screen:
Now at first glance you may just think Apple have been busy, but if you look closely they updated some of their existing applications to requires iOS 5.1, a version of the OS which had only been available for a few minutes (and a version of the OS that refused to download due to server load!!!).
This made me think, If Apple requires users to update their devices to latest version of the OS to use their Apps, why don’t all developers?
The common approach of developers is to change the minimum specification of their applications only when they release a major version, but why does it have to be this way?
If we only supported the latest version of OS (and I mean even a point release) we would have the benefits of:
- Only having to test on one version of the OS
- You get to use the latest APIs
- Hopefully the newer version of the OS has less bugs than the previous versions
- You have to Write Less Code
- More chance of getting featured by Apple and other publications as your using new features
- Happy Developers
- Reduces the number of people that can use your app
But who are these users that don’t run the latest version of an OS? All iOS devices that have been avaliable for purchase in the last 2 years (not many people keep their phones beyond this) can upgrade to the latest OS for free. Since Over the Air Updates where introduced in iOS 5, the process of upgrading the OS on your device has become quick and painless. So my argument is, if all applications required the latest OS version to work, then maybe users would be more eager to upgrade their OS anyway…