I’ve opened the book from the guys at Big Nerd Ranch. I’m reading it on my iPad using the Kindle App and I’ve downloaded their source files and sample apps to be used throughout the book. I’m a registered developer with Apple, I have been for a while, but only for a free account. I haven’t paid the $99 to access beta software or to publish an app. Maybe someday.
I’m excited about getting into it, but as I read the introduction of the book, they tell me that if I’m not familiar with C or Objective-C that I should purchase and read Programming in Objective-C by Kochan. So, I went to Amazon and ordered the book for about $7 used. Turns out, it was an older edition and the Big Nerd Ranch book didn’t specify that initially. Amazon’s top result was what I bought. The new one is about $35. But frankly, both books are longer than the bible and I don’t suspect I’ll get much use out of it. So, I’ve decided to trust my brain to figure things out as I go through iPhone Programming. I at least have the older edition of Kochan’s for reference.
I start in on a Quiz application and things go well. Many of the principles, such as hooking up objects, is somewhat familiar to me. At the same time I’m reading through this book, I’m also subscribing to a Stanford class on iOS development via iTunes U. It’s moving fast and clearly designed for folks who know how to program. I’m getting the impression from the Stanford course and this book that learning how to develop iOS Apps was probably not intended to be the first language someone picks up. Knowing Apple, that’s probably a feature and not a bug.
The quiz application goes smoothly enough. It takes me through arrays, which I still only slightly understand. I know what they are to a degree. I’m a visual person and programming isn’t really a visual area of study. I have to imagine arrays are like eggs in an egg carton, each with a number value painted on them. I can access the whole carton or individual eggs in the carton by counting from “0” at the top left corner. See how my mind works?
I followed the book, copied the code by re-typing it by hand and built the app. Naturally, I encountered a bunch of syntax errors — things like missing colons, semicolons and parentheses. But, it eventually worked. Since the first chapter covered Interface Builder, I suspect it was easier for me because it felt like working in Adobe Fireworks, my preferred application for designing websites.