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.

Always open to suggestions and improvements, and development continues.