This post (via reddit) pretty much sums up what I thought about writing software for phones. Link.
- Phone platforms are about as homogenous as a fruitcake. If you thought that doing a Windows and a Mac version was bad, multiply by like twenty or thirty to get all the popular phones. And no, Java isn’t going to save your butt.
- Nobody is your friend. Forget about making financial deals with the telcos, they don’t care.
- Customers are stupid and lazy [with regard to phones, anyway], and won’t install your software even if they know how. For the few that do, when they upgrade their phones next year, your software won’t be on them (have you done the port yet?).
- Development environments will have you remembering with fondness the projects in the 80s when you used to blow sets of 256KBit EPROMs, and always had a few baking in the UV eraser; thirty minutes to an hour doesn’t sound too bad.
- Batteries still suck. (Phone engineers know how many electrons it takes to do an ADD. “With or without carry?” You think I’m kidding?) Nobody is going to play your Quake port for more than ten minutes, because they can’t.
If there’s an answer here, it end-runs the telcos and their crappy environments.