By Carl Howe
I've been listening to the wailing and gnashing of teeth about the lack of an iPhone software development kit [SDK] ever since the June iPhone launch. And the application lockdowns in the iPhone version 1.1.1 software update and the recent rumors that the development environment will remain Web-based have inspired some developers to proclaim iPhone 1.0 forever and to give up any hope that the iPhone will ever have a "killer app."
Not to take anything away from Fake Steve Jobs who has his own words of wisdom and encouragement, but I do have a message for frustrated developers:
Wait for the Leopard Mac OS X 10.5 Leopard release later this month before you write off the iPhone platform. Apple hasn't shipped an SDK yet, not because Apple is evil, but because the iPhone is a Leopard device.
You didn't think all those nifty animations on the iPhone were all one-offs, did you? Everyone was so excited to hear Steve Jobs say that the iPhone was built on a Mac OS X foundation that I think many people never really thought about the fact that he never specified which one. I believe that the iPhone is built on a Core Animation and Leopard foundation, and since some Leopard functions are still not public, Apple can't release the SDK without (you knew this was coming) "letting the cat out of the bag." I have no direct confirmation of the statement above, but I have heard from developers that applications of all types are being held for the Leopard release. Why? Because they rely on either foundational data structures or features (typically Core Animation, but there are others; you can read about one rumored example here. I've made a similar claim about Apple TV as well; it won't get its upgrades until after Leopard ships because it requires new OS-supported secure distribution services for high-definition and movie rental programming.Now once the Leopard launch is complete and all the Leopard functions are public, all of these constraints will be relaxed, but that doesn't mean that Apple will release the SDK immediately thereafter. Apple still has to decide how it will deal with iPhone specific technical issues associated with third-party development, such as the fact that all iPhone application run with root privileges, and that runaway programs can drain the phone's battery life. And Apple never does releases without a clear roadmap and tempo in mind; it may decide to hold the SDK until January MacWorld simply to keep it from being drowned out in marketing hubbub around fourth quarter holiday shopping. But meanwhile, developers shouldn't despair that they are permanently locked out of the iPhone boom. All good things come to those that wait. And Leopard and its support for iPhone functions is certainly worth waiting for.
Full disclosure: The author owns Apple stock.