I’ve been meaning to do this for a long time, bought several books, flipped through them, and thought to myself, by golly — one day, I’ll learn to program this Mac, but — of course — I never followed through. I thought I wanted to program graphics plugins or other funny little apps, like an app that would take in an image, and tell you how to make it on a Lite Brite. Oh yeah, I had big ideas.
Anyway, recently I’ve become addicted to comic books, and it’s all AAl’s fault! Really, though, I’m reading more now than I ever have before in my life, and my collection is growing quickly. As is my wont, I would like to have a way to catalogue them, like all my other media, and there’s no good app on the Mac to do this, so I’ve been thinking again about programming, and writing one myself— something in the vein of ComicBase (which no longer has a Mac version) or Library (take a look at the rumored version 3.0— that’s freakin’ gorgeous!). So, I’ve actually started on the path, and will be documenting my learning experience here, in hopes that it will help other people who are looking to learn to program in Cocoa for Mac OS X, but don’t already have the benefit of knowing the C programming language, or anything modern.
I have to admit, I did some BASIC programming way back when on my Atari 800, Apple II and later in high school, on some sort of Unix mainframe. Yes, BASIC on Unix. I am so ashamed. 😛 I almost learned C once when I was working for a guy, Bruce Miller, who was training folks in the C and C++ languages for a while, and I worked with him a few summers, helping him prepare his course materials, and even sat in on one of them. But honestly, I’ve forgotten everything I used to know, so it’s as good as starting from scratch. Yeah, I have a half-decent idea of basic programming concepts, but anything bigger than:
10 PRINT "FUNKY CHICKEN"
20 GOTO 10
is pretty much beyond me at this point. So, to get started, I needed to learn enough of the C language to get going in Objective-C, the language of choice for Cocoa programming. I found a great set of basic introductory lessons at the Programming with Cocoa section of the Oreilly MacDevCenter, called “C is for Cocoa.” The lessons, in order, are:
- C is for Cocoa
- What’s Your Function?
- Go with the Flow
- Loop the Loop
- The Double Life of Variables
- Repurposing Variables
Unfortunately, it looks like the series hasn’t been updated in a while, but maybe I can take it from there with something else. I’ll keep you updated!
You should check out my podcast about movie magic and VFX: The Optical.