Building simplicidade.org: notes, projects, and occasional rants

Now seriously, iPhone SDK

I'm not a indie Mac developer but I buy a lot of their wares and it has been a major factor making my Mac experience more pleasant than any other previously had.

And as some of them, I was disappointed about them not getting the iPhone SDK they all wanted. It would spur a flurry of applications for sure.

But bottom line: the iPhone is a very restricted platform. Low memory, battery operated, and very different user interaction than your keyboard/mouse combo. Those set of restrictions raise the trust level we must put on applications and their developers before pushing some software out of Apple Downloads site into my phone, a device I like to have always available.

I think that the smart developer will rapidly work around the low memory and the new user interaction. But the battery usage problems are harder. Your applications must be written with low power consumption in mind, in a very big way. I would naively say that minimizing network traffic and CPU intensive work is just the beginning, the are bound to be subtle issues.

So expecting your smart but used to multi-megabte RAM devices, with big disks and lot of power to develop power-saving-oriented applications without help is a bit to much.

On the other hand, this is the place I can see Apple giving them something very cool in a future. I could tell you how good and fun XRay is, but then I would have to kill you. I will say that it is an amazing piece of GUI on top of DTrace stuff, much much better than I was expecting.

The tool I see that the iPhone SDK must have to be a real SDK is just that: a XRay for power consumption. Developers need, more than frameworks and guidelines about UI design, tools to check power consumption of their apps. And I would expect that sort of tool to take some time to develop.

Bottom line, I really would like to see a iPhone SDK, but I don't mind waiting a bit to make sure that it comes with the tools that help developers not break my phone.