This is meant to be a follow up to my January piece about how we perceive performance degradation on our computers.
I recall when I first brought home a brand new iPhone 4. I had purchased it only a couple months after its official release. Going from an iPhone 3GS to an iPhone 4 was a night and day difference. These two phones were worlds apart, not only for its new design and revolutionary Retina display, but for its amazingly faster A4 processor. Most of my apps that I had been using on my iPhone 3GS were not yet updated to take advantage of the Retina display. Those very same apps that I had used on my iPhone 3GS felt so undeniably faster on my iPhone 4. I was totally in love with this thing. I suspected this love would not last though, and I was right.
Flash forward to February 2012. I’m sitting here at my MacBook Pro whilst ruminating on why my iPhone 4 feels so damn slow. The hardware has not magically changed over the last 1.5 years. I also never completely fill up all 16GB of storage space on the device. I refuse to believe some ridiculous crackpot theory about how companies like Apple have planned obsolescence in their products (yes, there are people that believe this).
Since the debut of the iPhone 4, iOS apps have become increasingly more complex. It’s not just games that have been pushing the limits of the hardware, but all sorts of apps in different genres–from productivity to social networking apps. As developers and designers push themselves to innovate and reach for new possibilities, our apps are getting larger and more complex. This means many things: more lines of code, bigger and more beautiful graphics, and custom UIs.
In the early days of the iOS ecosystem, about a year after Apple released the SDK, many developers were pushing out apps that more strictly adhered to Apple’s own design guidelines. They used stock graphics provided by Apple’s toolkit, not to mention they stuck with standard menu and tab bar designs and UI conventions. Sure, this still happens to a degree with a large majority of apps, but some of the popular ones have diverged from this trend. This is a simple matter of our apps are becoming increasingly more complex over time. As users, we demand more functionality out of our favourite apps: more interactivity, better graphics, and better UIs. Unless we want stagnant software growth, newer software on hardware that hasn’t changed is going to continue to feel worse over time.