Doesn't it feel like wireless data is just about to happen? The vision that everyone has been speaking about for at least the last five years just feels palpably present. Over the last few weeks we've seen a bunch of VoIP startups from a year ago launch retooled versions of their products, which are now even better on wireless — Jangl, EQO, Mobivox to name three. This morning's NY Times carried an article about how CitiBank and Bank of America have launched online banking… via your cellular phone! Heck, even Mobio got in the act with their announcement last week that they've included a widget in their platform to help you find cheap gas.
But you know, it's still too hard. Some of the hurdles we developers of mobile applications face include:
- Browser support is awful. If you thought it was hard to write decent web apps that take into account the differences between Microsoft, Mozilla and others implementations of the standards, wait until you try writing for a mobile device. Your problem just got ten times worse. Some of those browsers (like the latest from Nokia) are pretty good, but heaven help you if your customers try to use your browser apps on… a BlackBerry.
- It's slow and expensive. Yup. You're constantly asking yourself "how much bandwidth will this consume?", and designing around the fact that pages just don't load that fast. Worse yet, users pay by the kilobyte at prices that would make any self respecting ISP blush. Next generation technologies promise to deal with the speed issues. Some are also talking about flat rate plans to deal with the pricing issue, but don't hold your breath. Flat rate plans are only going to come about as a result of significant market pressure or regulatory action.
- Platforms are fragmented. In the PC world, you can target Windows, Linux, or the Mac. In the world of the mobile, the problem is much more difficult. Sure there are Symbian, Microsoft and BlackBerry operating systems, plus a few others. And sure, J2ME was supposed to provide a cross platform solution, but it's really nothing a thin veneer that still requires you to target the device directly. The real issue is the near complete lack of an upgrade path from one version of the platform to the next, and the differing APIs supported on each platform version. A real world example: RIM recently released, amid much hoopla, APIs for BlackBerry Messenger, which has been around for nearly two years now. These are APIs that we should use in a heartbeat at iotum. But because they are only supported on the very latest BlackBerry OS 4.2, which a minority of BlackBerry users have today, we've chosen not to.
We've still got a long way to go, but it's looking better all the time. And certainly, judging by the number of entrants into the mobile applications field, a lot of others are seeing that opportunity too.