I'm excited to read this book. That may sound like an odd statement from somebody's whose name appears on the cover of the book, but Learn Cocoa has a somewhat long and unusual backstory. Before I tell you about it, though, I think it's important to make sure that Jack gets the lion's share of the credit for this book. He's the one who toiled away doing the long hours writing. Dave also worked quite a bit on the book. Me? I didn't really do very much at all. I actually kinda feel bad that my name is featured so prominently on the book, to be completely honest.
Anyway, here's the abbreviated story of how Learn Cocoa came to be.
Back in late 2004 or early 2005, Dave approached me via e-mail about writing for MacTech Magazine. I didn't know Dave at the time except by reputation. I had read many of his books back in the eighties and early nineties. In 2005, he was the Editor-in-Chief of MacTech and had come across some open source application or project of mine and was just basically cold-calling me in a search for new authors. I liked writing, so I agreed to write an article. They liked it, and I started penning the Cocoa column for MacTech on a fairly regular basis shortly thereafter.
Dave and I hit it off right away. In late 2005, Dave asked me if I'd be interested in writing a book on Cocoa. Back then, he co-owned a small publishing company which was looking to fill a hole in their catalog with a book on Cocoa. They had Dave's Learn C on the Mac and Learn Objective-C on the Mac was being written.
Now, this was before the iPhone SDK. This was when Cocoa programming was still very much a small niche, but I was desperate for a way out of my day job doing enterprise software consulting, so I jumped at the chance, even though the book wouldn't likely make me enough money to bother with, at least directly. At very least, it would raise my visibility in the Mac dev community and might lead to more enjoyable work.
I began writing it, and Dave began working with me. And believe me, I needed the help. Writing a book is not an easy task. There's quite a chasm between being able to write a decent article and being able to write a good book. During this time, Dave and I began to work out the very time-intensive mode of collaboration we ended up using on both Beginning iPhone Development and More iPhone 3 Development. We worked for several months on Learn Cocoa, but not full time. We had to work around both of our other obligations.
At different points, our schedules would get busy and make collaborating difficult or impossible. After about 400 pages had been written, and maybe 100 of those pages had been edited and revised, I got on a crazy implementation project that left almost no time for working on side work like the book. Learn Cocoa began to wither on the vine.
And then, Leopard came out. Enough stuff in Cocoa changed between Tiger and Leopard, that I knew we had to go back and basically start over. The conceptual stuff was okay (and some of that actually made it into Beginning iPhone Development, most notably the discussion of Model-View-Controller, actions and outlets), but all the screenshots and step-by-step instructions had to change.
At that point, it just seemed like the book wasn't going to happen. Dave and I went our separate ways for a while, focusing on different endeavors and I gave up on my idea of going full-time as a Cocoa developer.
Then, a couple years later, the iPhone SDK was announced. Quite literally, the moment the announcement event was over, I called Dave and told him I wanted to write about the iPhone SDK. I didn't know that he was already in talks with Apress to sell SpiderWorks's catalog of books to them, and within a week or two, Dave and I had a contract to write Beginning iPhone Development for Apress. Apress still wanted Learn Cocoa, but they wanted the iPhone book much more, and that's what Dave and I wanted to work on.
Once Beginning iPhone Development was done, Apress started asking about Learn Cocoa, but I couldn't commit right away because I needed to make money after the long haul writing with no income. When we started seeing royalties from Beginning iPhone Development, I agreed to pick up and start working on the Learn Cocoa manuscript again.
Before I actually started working on it, though, someone came up with the idea of a follow-up iPhone book: the book that became More iPhone 3 Development. I don't remember exactly how it happened, but before long, I was switched to working on More iPhone 3 Development, and a new author had been recruited to work with Dave on revising and updating the Learn Cocoa manuscript. My name would be left on as a co-author, but I wouldn't be involved with the day-to-day aspects of the rewrite. So, I blew the dust off the incomplete, partially edited, and completely obsolete Learn Cocoa manuscript, and peevishly e-mailed it over to Jack.
He wisely decided not to use most of it and tackled the subject in his own way, which I'm very glad he did. I was welcome to be part of the process, but I was busy enough with More iPhone 3 Development that I didn't really look at more than a couple of the early draft chapters.
So that's how my name ended up on a book that I haven't actually read yet, at least not in its current form. But I have read enough to know it's a really good book, so congratulations, Jack!