2010

2009

2007

2006

2005

Why I chose CoreData over Maildir

Entry published dec 19 2005

I’ve gotten a few e-mails now from people asking me why I have chosen CoreData over a standard mail format like Maildir. Kiwi will support Maildir for importing and exporting your mail (via Libetpan), but it will not be using it as it’s primary storage method. Here’s a few of the pro’s and con’s for each:

CoreData


Advantages
  • Fast
  • Atomic Commit
  • Manages object graph
  • Simplifies implementation of multithreading
  • Allows for easy integration of added metadata like tags

  • Disadvantages
  • Format is application specific
  • Makes Spotlight integration more difficult

  • Maildir

    Advantages

  • Standard mail storage format
  • One message per file makes Spotlight integration easy
  • Small memory footprint

  • Disadvantage’s
  • Slower
  • Makes persistence code much more complex
  • Makes implementation of the interface much more complex

  • It’s impossible for me to ignore the speed and ease that CoreData brings to the table. While there are definite advantages to using an open standard like Maildir, CoreData is going to make it easier implement more innovate features. In a way the format for Kiwi is not proprietary, since the application will be open source and everyone will have access to the schema for the SQLlite database. So hopefully, CoreData will be the right choice and will allow us to build a better app faster.

    ← Previous: Subtle Errors and CoreData  //  Next: How many messages do you keep in a folder?

    comments