DataCrux

I don't have any further plans to work on DataCrux for now. I've known about Core Data for a while (well before WWDC 2004), but I kept working on DataCrux because Tiger was still a ways off.

I realize Core Data is not an option for everyone, but working on DataCrux now would mean I'd be one person attempting to replicate the work of a team of people who have access to the source of Cocoa itself. More to the point, I'd have to charge money for it to justify the time. It is, of course, open source so somebody else could pick up the torch if they wanted to.

A data persistence framework is a really interesting beast because you're constantly balancing features, ease of use, stability and performance -- much more so than in an application.

I wouldn't completely rule out picking it up again if there was a substantial amount of interest, but Core Data is getting a lot of attention right now, and rightfully so. This is really the type of thing that belongs in the OS itself, and Apple has done a fantastic job.

DataCrux started out as a code generation application, if you can believe it. It just turned out that formatting input for code generation was somewhat similar to formatting input for a database. Unsurprisingly, there are a lot of things I'd do differently if I was starting from scratch today.

On a personal level, DataCrux has been a fantastic learning experience for me. I figured out a lot about the Objective-C runtime, the limits of Cocoa performance and quite a bit about SQLite itself. It also put me in a unique position to hit the ground running with Core Data, because I understand the basic challenges and how the underlying SQLite mechanisms work.

A lot of people were surprised to learn that I had essentially zero experience with EOF or WebObjects before putting DataCrux together. A lot of the similarities were just the result of ending up at the same logical point.

A revamped version of the core DataCrux design will live on in another project, though. I hope to talk about that soon. If anyone feels really strongly about development continuing, either email me or grab me at WWDC.
Design Element
DataCrux
Posted May 3, 2005 — 3 comments below




 

Dan — May 04, 05 159

I'm about to release an app which uses DataCrux and I'd just like to express my thanks to you Scott. DataCrux fills a real need for those of us writing for pre Tiger users, I've had nothing but good experiences from your code and your kind assistance, best of luck with Core Data - jeez what took Apple so long?

Martin — May 19, 05 164

I am also about to release a program with DataCrux at the heart, and would also like to express my thanks. You did an awesome job! Personally I decided on using DataCrux over CoreData because at the moment many people aren't going to jump away from Panther and that is a valuable user base; leaving them out isn't something I want to do. As a result, I chose DataCrux. Anyway, thank you very much for your code!

Scott Stevenson — May 19, 05 165 Scotty the Leopard

I'm starting to realize that there are more people using DataCrux than I thought!




 

Comments Temporarily Disabled

I had to temporarily disable comments due to spam. I'll re-enable them soon.





Copyright © Scott Stevenson 2004-2015