Sony has a revealing article educating consumers about the technical differences between Android Gingerbread and ICS. In summary, users might prefer to stay with Gingerbread because ICS needs more powerful hardware. Those that upgrade might experience performance related problems.
This takes me back to last year when Google announced their handset unity initiative. At the time I concluded that consumers had expectations that probably weren’t viable. I mooted the idea that maybe OEMs should abandon major upgrades and only provide bug fixes. This wasn’t taken very well and I received lots of angry feedback.
Personally, having upgraded both iOS and Android devices in the past, both operating systems have exhibited much reduced performance after upgrade. I still question the merits of major upgrades.
I was especially surprised that one of the main problems Sony uncovered is very poor coding. Many developers have accessed SQLite databases synchronously rather than asynchronously. This means that, under ICS where SQLite is slower, you are more likely to get a fatal application not responding (ANR) error. This shows how dumb some developers are and in another way, begs the question why such API calls aren’t mandatory asynchronous calls by design.