Thursday, March 13, 2008

iPhone SDK - First impressions.

This is probably the most comprehensive SDK released for a mobile OS, even though Windows Mobile probably is similar. It must have been easy for Apple since most of the functionality was already in in Mac OS, throw in a different UI framework & a bunch of innovations on touch, acclerometer and location sensing you have the mobile SDK. RIM's blackberry SDK is many years old but is so immature compared to this.

It is not without it's own set of problems though. The reliance on old Mac tools means you need a Mac computer running Leopard to use it. The support for favorites like Java(upcoming from Sun)/C# is minimal and programming in Objective C is closest to programming in Win32. So, developer productivity takes a hit and would automatically reduce the number of developers who can produce business applications for example. It also doesn't expose some of the phone & SMS functionality to prevent misuse unlike similar offerings from competitors.
The availability of Xcode makes debugging & deployment so easy that you can write the first application in less than 5 minutes. Some of the UI design guideline docs are a must read if you are interested in how to design a great UI experience on any platform.

The distributions problems etc are discussed all over the net, but I don't see anything wrong in Apple trying to keep it's platform secure. Besides, small time developers get marketing & distribution for a 30% cut. But for mass market applications there has to be some sort of an agreement which they can work out with Apple.