There are a couple of trends in mobile software development that I don’t understand: 1) the over-focus on iPhone and 2) the over-emphasis on locally-running (native) applications.
iPhone or Die
On point #1, don’t get me wrong. I use an iPhone, it’s a great product and platform and clearly has mental share in the market. But it’s 10% of the smartphone customers. RIM has twice the market share with BlackBerry; Symbian four times that sell in plus a large installed base.
Maybe Yahoo! isn’t the best example, as it’s a consumer-oriented service, but apparently they have stopped developing a BlackBerry app to focus on their iPhone app. Is that a reasonable decision? Maybe. If I’m deciding, though, I look at who my customers are first. Making an enterprise or government sale? Better focus on BlackBerry first. Apple’s App Store isn’t even set up to handle large corporate purchases. Are your customers mainly in Europe? Better focus on Symbian, which is dominating the EU.
What’s a Website?
The second trend that’s bothering me is the plethora of websites pretending to be applications. The most amazing thing about the iPhone is the web browser. And yet all these sites are making native applications that are nothing more than a web site. The data still has to be downloaded to make them work, so it’s not like “offline” has any meaning to them.
Do I really need a Wikipedia app? A Google app? A Netflix app? All they do is connect me back to the web site anyway. Heck, if Twitter had a half-decent interface then I’d use their website instead. I’d much rather see time spent on making these websites really mobile-enabled. For a great example, check out ESPN’s mobile site. They’ve done an incredible job of making it look-and-feel iPhone while keeping it on the web.