Vpim vs Icalendar

Posted by Rob Kaufman
on Aug 26, 05

Personal information management has long been a subject of interest to me. At various points in the past, I've come across both "Icalendar":http://icalendar.rubyforge.org and "Vpim":http://vpim.rubyforge.org and have actually used Icalendar in a small project. As I approched another project that required iCalendar support for Ruby, I went back and examined both Vpim and Icalendar libraries. In an attempt to gain understanding, I outlined my thought on these two projects. Since it takes little time to turn a good outline into a readable document, I thought I would publish my thoughts on my blog and send links to each mailing list. My main goal is to see which assertions sink and which swim. I hope to gain feed back and build a consensus. It seems to me that the iCalendar support in each of these libraries have similar goals, or at least achieve similar results. They both parse ics files and iCalendar streams and create the various objects that "RFC2445":http://rfc.net/rfc2445.html describes. I'm left to wonder why both exist? Nothing I could find about either project acknowledges the other, and the commit time lines (Vpim from early 2004, most recently July 2005 vs Icalendar in June 2005) indicated that neither the older Vpim project nor the Icalendar project has died. Is there some disparagement or ideological disagreement between the two project teams? I've set out to compare these two libraries and to attempt to come to some direction on where (if in either) to add my own code. Alas neither project fully meets my current needs, but I would hate to fracture the the mind-share and effort further by implementing my own, separate project. One note, for me later and for anyone else trying to make since of this: capitalization is very meaning full in this document. I will respect the Ruby / authors convention of naming modules and classes with CamelCase and the RFC standards naming of the file format as iCalendar.

Comments

Leave a response

  1. derekAug 28 05 @ 05:10PM
    vpim seems to be slightly more refined and developed imho, but I can't say I've spent much time with icalendar, or vpim for that matter. icalendar is more appropriately named, but i'm not sure much beyond that. Both, from my uninformed perspective, seem to be clones of projects in other languages and probably pretty open to suggestions on improvements or patches for the Ruby version.
  2. jeffAug 29 05 @ 01:56AM
    Nope, iCalendar is definitely not a clone of anything else in another language. Of course I looked at a bunch of other libraries for inspiration, but actually if you look at the core of iCalendar it wouldn't even be possible in most languages because I make extensive use of ruby's metaprogramming features. (Probably lisp or ml could pull it off, but a cursory googling doesn't bring up anything for either language...)

    Always open to suggestions and improvements, and development continues.
Comment