For those that have known me for a while, you know I’ve always saved most of my vacation for the holiday season. I do this for a few reasons, as a project manager I try to avoid key deliverables during the month of the December as I know staff are light on the ground, and as a old timer in business that vacation time serves as a severance buffer should I be terminated earlier in the year.
The upshot of this strategy is the month of December is always my opportunity to learn new technology or brush up on old skills.
This month I’ve been focusing on Cocoa, and so far I can say its pretty cool. I’ve developed GUI applications in a number of languages and frameworks. Java AWT, Java Swing, Microsoft’s Visual Basic, Microsoft’s Foundation Classes, Borland’s OWL, I’ve done em all. My biggest complaint with most frameworks has always been the challenge of laying out a GUI, and binding that GUI to data.
I must say that once you get over the shock of Objective C (come on Apple, C++ has been around for over a decade – catch up), its a pretty elegant framework. The binding is the simplest I’ve encountered to date, simpler even than Visual Basic (an ugly language – but great layout and binding). Right now I’m in tinker mode – writing applications that leverage my large existing C/C++ code base to do cool things (FTP Clients, IRC Clients, Mail Clients, etc.), but I’m hoping to reach high competency shortly. Once I pass that hurdle I’ll be jumping back into iPhone development.