To be clear, I am not a programmer.
I’ve taken my share of CS classes, spent my early elementary school years enamored with computers and playing around with QBASIC. Things I’ve learned in classes range from HTML to Java and C++. While working at Motorola I spent most of my time using C and .NET/Visual Studio. Then there are the Mathematicas and Matlabs and others of the world I’ve learned in order to do my research. On my own I’ve explored the likes of Perl, SQL, and probably others that I just can’t remember. The latest of these pursuits being Objective C and Cocoa (and Cocoa Touch).
Still, I am not a programmer. I am not a developer. I am not a coder. In general, I seem to spend a good deal of time deriding these people. Almost always in jest, because when I rely on the work of these people to do so much of my work (and play), and when I can see how things could just be a little better (suited to me), then I like to occasionally vent at them.
Also, I am not an adept programmer, and I largely stick to things I’m good at. So, it was unusual that I spent a decent portion of my afternoon in Xcode programming a simple tool I’ve been wanting to have. It essentially boiled down to me getting a little more comfortable with Cocoa and Interface Builder, as well as learning abit about the NSTableView class.
The impetus for this post, however, came when I needed to use NSFileWrapper in my app. Everything seemed simple enough, but it just—quite simply—would not work. After 20-30 minutes of my time, I finally figured it out. The very simple reason for it not working came down to this: the NSFileWrapper instance method initWithPath got deprecated in Mac OS X 10.6.
Why didn’t I see this in the documentation? Why didn’t the compiler catch it? Well, because I was still using Xcode 3.1.2, of course, and not 3.2. Why hadn’t I updated? Because neither Software Update nor Xcode seems to provide update notifications!
Of course, any real developer maybe would have updated as soon as the developer seeds came out, and—at the very least—known to update when 10.6, and later iPhone OS 3.1, were released. Plus, with such an integral tool, users of these software packages like—and need—to have more control over when new versions are deployed. But, after wasting all that time, I am still a little pissed.
Conclusion? Lesson learned.
P.S., Another cause for all of this grief is the 12 GB per week limit on my bandwidth usage at home. I spent the entire day trying to survive on my last 60 MB, so I was in no position to romp around the web looking for solutions, or to update the documentation database, much less download the new Xcode package. Twas truly a moment when I personally felt the empowering and enabling nature of the Internet… plucked from my fingers.
P.P.S., Add Tumblr as another thing that has totally wasted my time today. Stupid up and down maintenance. No estimated or planned time of return. And now, it isn’t even popping up the “Under Maintenance” page.