In a previous life, I designed software systems for the Joint Strike Fighter (JSF). Among the things I learned was that at mach 2 your UI better be pretty darn responsive. Fighter pilots do not have time to wait for things to load or animate or whatever. In some ways this is true for mobile users as well.
Overall iPhone interface responsiveness takes a step back
One thing I instantly noticed with the iPhone 3G is that is just isn’t as responsive as the first version. It is hard to say whether this is because of overall system instability or merely my impression being skewed because of immature 3rd party apps. These apps often crash and have their share of bugs, which I understand. What I worry about is the ability of 3rd party developers to deliver apps as smooth and responsive as the Apple ones. Mobile applications have a different set of constraints than those on the web or desktop. With less speed, limited power, and a user on the go, mobile apps have to be developed to use minimal resources and provide information quickly. Fancy animations and splash screens (yes I mean you twitterific) need not apply. Thankfully, to keep developers on the right path, Apple provides a performance monitor and a great SDK. Most importantly, developers only have to write for one set of hardware (iPod touch being very similar to iPhone)
Android opens a can a worms
The challenge for android is that application developers have to write code that runs multiple hardware platforms. Small shops simply will not be able to do performance testing on every phone if the OS takes off. Will the android emulator be able to solve this issue? Will the SDK allow testing by USB like Apple’s iPhone? If not, the result will be some applications that run very poorly on certain android phones.
The first android phone released will set the tone for the platform. It will hopefully be a high powered smart phone. Underpowered hardware platforms may give android an unfair black eye if Google is not careful. We will see how they manage expectations.
Conclusion
It is exciting to see mobile computing become a reality with the new OS’s by Apple and Google. As they get more stable, the user experience will depend less on their OS’s stability and more on the capability of 3rd party developers. Both companies need to make sure software development is as easy as possible and the power of their SDKs will be the key.