Four years ago, I said to a friend that I would never be caught dead writing server side code. Two years ago, I started learning Django. Two weeks ago, I started learning Objective-C.
But, rather than this be the usual Avalonstar post where I just go on about history, theory and theatrics1, I’ll just share some links that have helped me over the past few weeks in learning Objective-C and iPhone Development and leave it at that. Alright, let’s get started!
A great starter into the world of iPhone development would be Lynda.com’s iPhone Essential Training. Simon Allardice (or as Jen and I dubbed him, “iPhone Snape”2) gives a great overview of the basics of Objective-C and the basics of iPhone development. He covers a lot of the “whys” while making sure you’re not overwhelmed by the massiveness that is Xcode and Interface Builder. Each lesson is anywhere from 4-12 minutes long and it’s very point driven. It does cost money though, the price being the $25 fee of subscribing to Lynda. However, there are a few examples on the linked page that will give you a sense of what you’ll be going over and more importantly, Simon’s teaching style.
If you don’t mind college style lectures, then you’ll be happy to hear that Stanford University has a great iPhone Development course (link opens iTunes) up for free on iTunes U. You’ll learn just as much, if not more from the professors (and guest speakers from Apple, Yelp, LinkedIn, etc.). however, I felt the teaching style left much to be desired. Maybe I just don’t miss college, but Josh and Alan weren’t always “there.” In any case, it’s still a great resource and they introduced some great methods that Simon didn’t go over.
Download everything from Apple’s sample source code repository. Even if what they’re trying to demonstrate is not exactly what you’re looking for, you’ll find a wealth of great coding samples. Oh, can’t forget the official Apple documentation as well (remember that you can option + double-click any symbol and get it’s documentation)!
Once you’re done there, StackOverflow provides a wealth of information if you know how to search it correctly. My best searches have been ones that include specific method names and common procedures. If all else fails, ask. As long as you a little about the question you’re asking, there are a lot of people on that site that will quickly answer.
Two other sites that have provided me with a few insightful tutorials are MobileOrchard and iPhoneDevCentral. But wherever you find a tutorial, a word of warning: make sure and do a little cross checking with Apple’s documentation depending on the date the tutorial was published.
There you have it. I’m no Objective-C expert by any stretch of the imagination, nor do I believe I ever will be (same goes for design and Django), but it’s all about knowing how to search for the appropriate learning tools.
So don’t be scared of the SDK! As long as you have patience, an idea to drive you and some Google-fu, you should be fine. :)