Tuesday, June 10, 2008

Calendar Dancing

Every few months I sit down and try to mash all my calendars together, in hopes that the various calendar services I use have fixed all their bugs. You'd think that in today's world of well known ical formats, ics subscriptions, and new browser protocol handlers, webcal://, that things would work well together.

The energy is definitely here. Dozens of products and services offer calendar "imports" or "subscriptions" which purport to import calendar entries. Some do this well, but most either don't work with arbitrary services (e.g. they only work with a select set of other calendar feeds), or are severely buggy. I'll keep dreaming of seamless integration and mashups, but for now, here are some prohibitive issues that consistently come up.

HTTP Basic AUTH and Subscription access control - If you've been anywhere near me over the past few months, you'll know my stance on HTTP Basic AUTH. In short, it's woefully underused. An old colleague has a great post that personifies my perspective. If more software supported HTTP Basic AUTH it would be the perfect way to support access control to calendar subscriptions; something that effectively doesn't exist today. Protocol level auth is often the only way to resolve this kind of mashing up.

Google Calendar - oddly the worst at importing/exporting. I'd expect a company known for parsing/derivation to have imports nailed; hardly!
  • webcal vs. http schemes - the transport is identical, please just treat the URLs the same.
  • get your own imports to work. I can't even import a Google Groups calendar into a Google domain hosted calendar.
  • importing 30boxes shared calendars via tags doesn't work. the same calendars imported into Apple iCal work just fine.
30Boxes - my personal favorite.
  • again, webcal vs. http schemes - they're the same thing folks... allow both and determine what format you're dealing with in the HTTP response that comes back.
  • Many ics subscriptions are PRIVATE and use the VFREEBUSY blocks for entries. Please support these so I can import more content into 30boxes.
Dopplr - great tool for communicating overlapping travel schedules
  • I've noticed webcal vs. http scheme madness here and there, but overall fabulous import facilities.
Apple iCal - great, except it's client-side, and I need hosted calendars for arbitrary endpoint/location access.
  • the gold standard in importing and exporting. if it doesn't work here, it won't work elsewhere. I wish other apps worked this well.

No comments: