As I’m sure many of you are aware, I have a love-hate relationship with programming. Namely, I love the idea of being able to put together custom solutions to my problems, or (dare I say it) write my own games, but I find that actual process of learning to program simply drives me bonkers, and falls through my brain like water through a sieve. Every few months or so, I go through my increasingly large collection of technical and programming books, and take another stab at learning a programming language. “This time, it’ll be different. This time, it’ll stick!”
Only it doesn’t. I took Logo in 4th and 5th grade (even went to a summer camp for it), TrueBASIC my freshman year of high school, Introduction to Object Oriented Programming using C++ my sophomore year, PASCAL my junior year, and then a course in Visual BASIC at a community college after graduating high school. And that’s just formal courses. I’ve got piles of books on learning C, Objective C, Java, even PHP that I’ve either slogged through or started to, and virtually none of the practicum has stuck.
There is a rhyme to this rant, however. It comes down to learning styles. Different people learn in different ways, and some ways are simply more effective than others. Now, in my experience, the most effective method I’ve found for retaining new information is through synthesis and participation, and that’s simply not happening in rote situations like books and most of the programming classes I’ve taken. So, my idea is this:
I’m going to blog the whole damn thing. As I go through the books and exercises and programming attempts, I’m going to write about it and post it here, in a new “Code” category on the blog. It will help me think about and restate the things I’m trying to learn, as well as hopefully serving as a helpful resource for others trying to learn. I’m hoping to start this task on Monday, as that will give me a few days to get things set up on the site and otherwise (I’m installing Xcode 2.3 as we speak). My focus (unless one of you convince me otherwise) is on learning Objective-C, so if anyone has any suggestions on books, sites, articles, et cetera, please post them here or IM me. Also, those of you out there who are gurus on the subject, if you’re willing to help me through pitfalls I might run into, it would definitely be appreciated.
For reference, the books I plan to use/reference:
Programming in Objective-C by Stephen Kochan
Cocoa Programming for Mac OS X by Aaron Hillegass
Core Mac OS X and Unix Programming by Mark Dalrymple and Aaron Hillegass
The Mac Xcode 2 Book by Michael Cohen and Dennis Cohen