I'd like to follow up on my
initial impressions of the iPhone SDK. Overall, I think Apple did a great job with the SDK, and released a powerful, comprehensive environment for developers. I brought up a few minor criticisms in my post, but concluded with:
"Setting aside these concerns, I'm very impressed by the iPhone SDK. It builds on the strong foundation of OS X, while integrating with the multi-touch and mobile capabilities of the iPhone. You can tell a great deal of work went into preserving the Mac experience on a device lacking in memory & computing horsepower."
The Internet being the Internet, I shouldn't have been surprised to see my post quoted in an article by Alexander Wolfe of InformationWeek entitled "
iPhone SDK Developers Angry at Apple's Tight Control." A few points of clarification:
- I'm not angry at Apple or the SDK. Thrilled, actually. I can't wait to release native applications for the iPhone and iPod touch.
- Access to calendar appointments & media would be nice, and I hope it's added in a future version. (As Fraser Speirs notes, this is the beta SDK.) After perusing the technical docs, I thought it was a noticable omission and worth pointing out. It probably wasn't worth the "glaring" adjective, but I surely wasn't suggesting Apple keeps all the good stuff to itself.
- Access to the phone & SMS functionality would be great, but is problematic from a security/carrier standpoint. I made that point in my post, and Wolfe included it. I was actually impressed to hear Steve Jobs say that a 3rd party VOIP app would be allowed over WiFi.
Creating a developer platform and ecosystem is hard, especially when you throw in security constraints and the conflicting interests of the mobile phone market. Apple had to make trade-offs, and I think they made the right ones, but it's worthwhile to document and discuss them. In my opinion, the most interesting restriction is that 3rd party applications can't register themselves as the default providers for URLs that conflict with Apple applications (like Safari or Mail). I can see the reasoning: malicious applications would love to hijack all HREF-handling, but there's a legitimate business case as well (e.g. Opera or Thunderbird). These trade-offs should be discussed, and I was hoping to do so with some nuance. But then again, this is the Internet...
Now, back to
happily writing code with the iPhone SDK...
Labels: Apple, Cocoa, iPhone, Leopard, Mac