One of the changes that I made in Pinbook 1.2 was to supporting iOS 5. I started working on Pinbook before iOS 6 was released, so I decided to try and support both. For example: on top of using
UIActivityViewController for sharing, or
UIRefreshControl for pull to refresh, I also implemented UI that people on iOS 5 would see. It seemed like a good idea at the time, but as I went forward I started to realize how much of my code was just there to support the older OS.
I wanted to take it out support for three reasons. First, I knew I was going to be adding iPad support and that the first generation iPad could not run iOS 6. Anyone else running Pinbook on iOS 5 would be able to upgrade, but if I started supporting these other users and then dropped support in a future version there were going to be some people who got left out and couldn’t do anything about it. The second reason is that since I don’t run iOS 5 on any of my primary devices and I’m a one man shop, that version of the app was never going to be as well tested. Lastly, it was adding more code to the app than needed to be there and I didn’t like that.
The potential negatives of dropping support were that I’d have a vocal group of pissed off iOS 5 users, or that sales would go down. Thankfully, neither of these happened. I’ve received no complaints, and sales have been better for this version. Dropping iOS 5 also let me lower the total amount of code in the app by about 8 percent.