Monday, March 30, 2009

Starting ...

I've recently been developing an iPhone application. It's been an interesting experience since, although I've been a Mac user for years, I haven't really developed for a Mac platform in the past. All of my programming in recent years has been for server-based applications, so I haven't really done any UI stuff (outside of HTML/Javascript-based UI's) for a couple of decades. Learning a new programming language (with it's libraries and frameworks) and development environment is (in some ways) like learning to program again. Sure, you aren't learning everything from scratch; however, there are all the little "gotcha's" that you have to find out about and you have to look up documentation a lot more to figure out how to do certain things.

Learning to program in Objective-C was not a big jump. In the past few years, I've been mostly programming in C and Lisp (with a bit of Java and proprietary languages thrown in as well), so picking up Objective-C wasn't a big deal. For anyone who has programmed in C and who has had some exposure to an OO language, Objective-C is pretty easy to pick up. However, learning to program on the iPhone is a bigger jump. The resources that I found most useful were:

  1. Beginning iPhone Development: Exploring the iPhone SDK: Excellent introduction to developing on the iPhone.
  2. Sample code from Apple (you'll need an Apple developer account to click through the link): Great for figuring out how to do things.
An "honorable mention" goes to the following:I only bought the PDF versions of the books as I tend to toggle back and forth between reading a book and writing code. I've had to Google around a lot to find answers to some programming problems and to figure out how to do certain things. I haven't come up with a definitive list of "must read" forums/blogs yet; however, the following sites have been useful on multiple occasions: