July 19, 2007

Latest Mozilla Sunbird is a well-connected calendar

Author: Nathan Willis

Mozilla's Sunbird calendaring application lives perpetually in the shadow of its siblings Firefox and Thunderbird, garnering just a fraction of the developer effort and publicity lavished on the browser and email client. Nevertheless, it is slowly maturing into a reliable tool worthy of the Mozilla brand.

You can test-drive Sunbird in two ways: either with the standalone Sunbird application (available in official binaries for Windows, x86 Linux, and Mac OS X), or with the Lightning extension for Thunderbird (which comes as an XPI cross-platform install). The two applications are developed concurrently; the current releases of both are numbered 0.5. Lightning 0.5 will install into Thunderbird version 1.5 or later. To install Lightning, download the installer using Save as ... in your Web browser, then open it from within Thunderbird's Tools -> Add-ons menu.

A detailed list of changes since the last release is available from the Thunderbird development blog The Rumbling Edge. The big attention-grabbers are support for Outlook meeting requests, use of shared Google Calendar calendars, support for calendar printing, and nearly four dozen new public calendars available at the project's Web site.

Support for Outlook meeting requests is a windfall for users in Outlook-dominated office environments. For the uninitiated, Outlook users send meeting requests via email that can be acted upon as both email and calendar data -- adding the meeting as an event, confirming the time, suggesting an alternate time, and so on. Support for these requests and the various actions performed on them brings Lightning users one big step closer to seamless interaction with their Outlook-bound officemates.

Getting started with Google Calendar support

I am more excited about proper Google Calendar support. Unlike rival calendar services from the likes of Yahoo and MSN, Google has always provided users with a standard iCalendar feed for every calendar they create.

In Sunbird and Lightning, subscribing to an iCalendar feed is as simple as subscribing to a CalDAV calendar. You merely select New Calendar..., choose On the Network instead of On My Computer, and paste the URL into the text box. Using these steps, you can subscribe to any remote calendar in read-only mode -- from a friend's public Google calendar to a published events schedule from a third-party site like iCalShare.

But when it comes to read/write support for your own Google calendars from either Sunbird or Lightning, you need one extra puzzle piece: the Google Calendar Provider extension. It is written by the same people that added read support for Google Calendar to Sunbird, but for now it is a separate download that you can install from Tools -> Add-ons. The extension works for Sunbird 0.5 or greater, and requires Thunderbird 2.0 if you are using Lightning.

After installing the extension and restarting Sunbird or Lightning, you will find a third option when creating a new network calendar: Google Calendar, just below iCalendar and CalDAV.

To subscribe to your calendar, copy its private address from your Google Calendar page. Click on the Manage calendars link, then click on the calendar name to view its details. The last item on the calendar details page is Private Address, listing three links: XML, ICAL, and HTML. The XML address provides data in RSS format, the ICAL address in iCalendar, and the HTML in Google's standard Web interface. Copy either the XML or ICAL URL; each is a long address containing a hash that allows you read-write access to your calendar. In Sunbird or Lightning, paste that URL into the Location box when you are setting up your new Google Calendar subscription. You will be prompted for your Google username and password -- don't worry, the extension uses HTTPS to authenticate to the server, so your credentials are safe.

Working with Google calendar event data is easy. I tested a host of Google calendars in both Sunbird and Lightning, adding, removing, moving, and updating events in both clients and through Google's Web interface, and lost no events. You do need to make sure that you set your timezone correctly in Sunbird and Lightning in order to keep times straight with Google.

Sunbird's interface looks more professional every day. The event settings dialog (used for both adding and editing events) is easy to work with -- although I still find the time selection widget frustratingly different from every other such widget in the world. A lot of work has clearly gone into the visual presentation of the calendar in the day, week, and month views, as evidenced in details like the color of text automatically changing from white to black depending on the calendar's background color. Something needs to be done about the toolbar icons, though -- they all look the same, necessitating the use of text labels to distinguish between them.

My main complaint right now is that Sunbird and Lightning lack support for editing recurring events. Such events show up correctly when you create them through Google's Web interface, but you cannot alter their details through the desktop app. Less critical but still noteworthy is the absence of mappings between Google Calendar and Sunbird's alarm systems, which differ substantially.

Essentially both drawbacks fall under the "it's hard to edit one set of data from an unrelated system" umbrella, and that serves as a good reminder that even though iCalendar is a standard way to represent calendar info, iCalendar itself does not make the challenges of synchronization any easier to solve.

All in the (Mozilla) family

I regard Google Calendar support as a big win not because I'm a Google cheerleader, but because it is an online calendaring system that people actually use. In informal surveys of friends and coworkers, I could not find a single user of another online calendar service.

That is why Mozilla fans should celebrate this particular enhancement: it means people are contributing to the Sunbird project because they actually use it. Only a handful of extensions exist that support Sunbird at all, and of those the majority are extensions like Quick Locale Switcher that work in all Mozilla-based applications. There are also a pair of themes at the Sunbird Add-ons site -- welcome news, since Sunbird's default theme renders the calendar in sickly sea-greens (bad enough on their own, and made worse because the project has chosen bright orange calendars for the icons and logo).

Since Sunbird/Lightning is still a 0.x release, changes are rapid and can be significant. Users who want the latest versions will be happy that Sunbird now has a nightly update channel, and Lightning updates will show up in Thunderbird's built-in extension updater.

Calendaring will probably always run behind Web browsing and email in popularity, but its appeal is only going to grow. I think that the Thunderbird + Lightning unified client will appeal to more users than the standalone Sunbird app, but it's good that users have a choice. Now that Sunbird/Lightning supports the most popular standards-based online calendar system, it has its first real shot at gaining widespread adoption as its Mozilla-based predecessors have done.


  • Reviews
  • Internet & WWW
  • Desktop Software
Click Here!