My lab at MIT publishes a calendar of events on its website. Lab staff can use the site to enter information about talks, seminars, and special events. Lab members can even sign up to get the day’s announcements sent to them by e-mail. When I see a talk that looks interesting, I copy the announcement’s text and paste it into my computer’s calendar.
The registrar’s office at MIT publishes the institute’s academic calendar. This calendar tracks official events, such as the start of classes, institute vacations, and thesis deadlines for grad students. At the beginning of the school year, I spent half an hour entering these dates into my computer as well.
My wife, Beth, has a calendar, too-this one filled with doctor appointments for the kids, my daughter’s gymnastics lessons, and the nights that I have child-care duties. She keeps her calendar on her Mac with Apple’s iCal program and occasionally e-mails me reminders about important appointments. But she doesn’t have to: less than 15 minutes after she enters an appointment into her calendar, it automatically appears in mine.
Like the MIT calendars, Beth’s is also published on a website. But instead of being published in a form that’s easy for humans to understand, her complete calendar is uploaded every 15 minutes in a computer-readable form called iCalendar. My calendar program downloads this file every 15 minutes and displays Beth’s calendar events in a different color on my own calendar. Likewise, my calendar events are automatically uploaded to the Web server, downloaded by Beth’s copy of iCal, and displayed on her calendar.
Don’t confuse Apple’s iCal program with the iCalendar file format: iCal is an application for the latest Macintosh operating system, but iCalendar is a six-year-old open standard that was developed to let desktop applications share calendar events. An iCalendar file can consist of a single appointment, a repeating appointment, or items from a to-do list.
Those same engineers who developed iCalendar also created vCard, a kind of virtual business card used to store names, phone numbers, and other contact information. VCard has become the standard for moving that kind of information around the Internet; you probably have received hundreds of e-mail messages with vCards attached. With most e-mail programs, you can just click on these attachments and have them automatically added to your address book.
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.
It will soon be easy for self-driving cars to hide in plain sight. We shouldn’t let them.
If they ever hit our roads for real, other drivers need to know exactly what they are.
Maximize business value with data-driven strategies
Every organization is now collecting data, but few are truly data driven. Here are five ways data can transform your business.
Cryptocurrency fuels new business opportunities
As adoption of digital assets accelerates, companies are investing in innovative products and services.
Where to get abortion pills and how to use them
New US restrictions could turn abortion into do-it-yourself medicine, but there might be legal risks.
Get the latest updates from
MIT Technology Review
Discover special offers, top stories, upcoming events, and more.