Thursday, September 01, 2005

Rx: Subversion

Let this serve as a reminder to all developers out there, source control is your friend.

I am working on my first Mac OS X development project, and I am the only dev on this, so I think I get rolling without figuring out the whole source control system.

A month later, and I have made pretty good progress learning the frameworks, Objective-C, and Xcode 2.1. I have been doing things the way I am used to in .NET and MS C++, but I just started wrapping my head around Cocoa Bindings, so I copy the code into a backup folder and proceed to start ripping things up to get Cocoa Bindings in the code.

I chop maybe a hundred lines of code out of my app using Cocoa Bindings, so I am pushing hard to do as much as possible using bindings, but then I break something that I SWORE was working with bindings, and I can’t figure out what it is.

I “restore” my backup copy and start adding stuff back in, which goes much faster because I know what settings to hit, but the thing I thought was working, having MyDocument class observe the NSArrayController for the keypath “selection.self” isn’t working. No exception, just nothing happens. I setup the observer in init, actually, maybe that is my problem. Have to try that on the way home. But if I had used source control, I would have had a log of my changes, probably, and I could have seen where things went off the rails.

I think I better get the Subversion stuff installed, find a hosting provider, and configured ASAP. Then maybe I can use Eric’s Subversion Cheat Sheet.