This week I went to a secret Sprint developer conference in Florida. Unless you are “in” with Sprint, you probably have never heard of it. Even if you are in, there are a lot of things you will still not be able to do in your programs that run on their phones. In the end, of course, this results in you being unable to provide what you think your customers want to be able to do on their cell phones.
The wireless carrier industry is notorious for this kind of behavior. The CDMA side is particularly bad, it seems. Perhaps they learn this behavior from Qualcomm, the inventors of CDMA. Qualcomm is particularly nasty, having decided to go a step further and invent their own platform (BREW) instead of using the standard J2ME for cell phones.
On my flight back from Florida, I read an article in Wired about the Silicon Valley Homebrew Mobile Phone Club. This is the second time I’ve heard about the group, and I find it really fascinating. Their vision is to create a phone from scratch that is based on an open platform (Linux) that anyone is free to program. This is very similar to the PC in its current incarnation. If you imagine a world in which you have to get approval from Microsoft to write an application for the PC, you have something similar to the wireless industry today. I don’t think we’d be anywhere near where we are if that had happened.
In any case, the idea of creating an open platform GSM phone is cool, but the hardware part seems pretty difficult. If you visit their web site, you can see pictures of the phones they’ve created, and they aren’t too pretty. What I would like to see is something cool that can work in the forseeable future. Then I remembered seeing that someone got Linux to run on the Treo 650. I happen to have one, and it seems like it would be a good platform for the “open phone”. It looks like the Linux project is decently far along. I’d love to try it out and sort of build a platform that is easy for developers to use. I really like the Blackberry model where nearly everything is written in Java. It makes things easier for people to jump in and write programs.