Bear Bits

Bear Bits

Karen  //  Random thoughts that happen to interest me.

Oct 3 / 5:53pm

Core Data

I've decided to (once again) attempt to learn Objective C and Cocoa. Although I work in IT, I soon realised that analysis was much better suited to my skills than programming. Despite this, I've long maintained an interest in programming - from Basic XL on the Atari 800, through FastBasic on the Atari ST, some Basic and scripting languages on the Amiga followed by Visual Basic on the PC and then REALbasic and Revolution on the Mac.

Much as I enjoy using Revolution, it can be a struggle getting programs to look like native Mac OS X code. The situation is improving, but I often hanker after trying to learn Cocoa - particularly when the iPhone uses a lot of the same frameworks. I'd rather develop something that looked native on the Mac than a cross-platform program (which is where Revolution really shines).

Fortunately there are a lot of good texts available, and I'm currently working my way through a few of the Pragmatic Bookshelf and O'Reilly ebooks. I've been looking at Core Data (with the Marcus Zarra book). It is a prime example of the power of the Mac OS X frameworks - you can create an impressive front-end with next to no code. Of course, there are a few hurdles to overcome - and I've found that Interface Builder can trip you up if you don't get the bindings exactly right. I'm determined to prove that you can teach an old dog new tricks (and I always think of a particular Far Side cartoon at this point).

The other tricky thing (ignoring pointers and memory management) is starting with simple tasks at first. When I've picked up a language, it has been through starting with a simple concept and then gradually developing it into something more complex. There is a constant temptation when starting again to jump straight to a complex goal - but that way lies madness. So I'm trying to keep to "baby steps" right now.