The iCalendar format has been decidedly less successful. One reason is that Microsoft has not embraced it; Outlook 2003 claims to support iCalendar, but the implementation is incomplete and doesn't work properly. But support for iCalendar is picking up steam. You can now create, display, and subscribe to iCalendar files over the Internet using either Mozilla Calendar or Ximian's Evolution; both of these open-source programs provide full support. A nifty Web-based application called PHP iCalendar displays these files directly on a website.
Tools like these, based on standards that are both open and easy to use, are incredibly powerful. I have set up a password-protected website with PHP iCalendar that lets a few trusted people access my entire calendar, with all of its confidential information. But I've written another program that can create a version of the calendar suitable for public viewing; in this "sanitized" calendar, descriptions of appointments and events are replaced by the word "busy." I publish this sanitized calendar on my website. It lets people know when I'm free for meetings but doesn't reveal any of my secrets.
All of these issues came to mind this spring when a bug in my lab's calendar notification system caused it to send multiple copies of each announcement to everybody in the lab. In the discussion that followed, it was clear that some people wanted one announcement sent out for each event, some wanted one daily message with all events, and some wanted reminders sent out 15 minutes before every talk. Finally some bright scientist (who happened to have a Mac) suggested that the lab simply publish the events in an iCalendar file; that way lab members could have the talks automatically displayed on their own calendars. It's a good idea-one that I hope will be taken up not just by the Computer Science and Artificial Intelligence Laboratory but also by the registrar's office and every other MIT organization that publishes a calendar. Publishing in iCalendar format makes it possible for people to subscribe and get updates automatically.
And let's not stop at MIT: every organization that has a website should publish its upcoming events in the iCalendar format. People could subscribe to whatever lists they wished and have the events automatically dropped into their calendars. If an organization starts publishing information that you find annoying, all you have to do is unsubscribe; the events will automatically disappear.
As with all open standards, the power of iCalendar is that it lets developers of different applications stop squabbling about file formats and spend their time delivering features to users. The sooner Microsoft and other companies selling proprietary calendar systems get on the bandwagon, the better.
Comments