It’s Friday: Goofy but fascinating Thunderbird Add-ons day

Standard

Two different and equally goofy but interesting add-ons are in my personal news today:

Kent James released ToneQuilla, which I like to call “BiffTones!”, which allows you to set custom notification tones based on Thunderbird rules. Emails from the spouse make one sound, emails from the grandmother make another, etc. Neat!

Andrew Sutherland, on somewhat of a dare that I put in front of him (nothing like waving a red flag of visualization at a canvas bull like him) responded to the pretty but mostly useless Wordle meme which has been going around Mozilla circles, and built a wordle-like visualization of the database-driven queries that I blogged about a couple of days ago. If one can build an add-on to that in a day (well, a night without internet access), what couldn’t one do?

Both of these add-ons have somewhat of a goofy aspect to them, and both could evolve into something really useful. Notification overload is a huge problem in communication clients – it’s useful to know when something important happens, but useless to know when “a message was received” — tools like ToneQuilla can help. Simiarly, visualizations can provide insight into ones’ messaging history. See Themail for interesting research on the topic.

It's Friday: Goofy but fascinating Thunderbird Add-ons day

Standard

Two different and equally goofy but interesting add-ons are in my personal news today:

Kent James released ToneQuilla, which I like to call “BiffTones!”, which allows you to set custom notification tones based on Thunderbird rules. Emails from the spouse make one sound, emails from the grandmother make another, etc. Neat!

Andrew Sutherland, on somewhat of a dare that I put in front of him (nothing like waving a red flag of visualization at a canvas bull like him) responded to the pretty but mostly useless Wordle meme which has been going around Mozilla circles, and built a wordle-like visualization of the database-driven queries that I blogged about a couple of days ago. If one can build an add-on to that in a day (well, a night without internet access), what couldn’t one do?

Both of these add-ons have somewhat of a goofy aspect to them, and both could evolve into something really useful. Notification overload is a huge problem in communication clients – it’s useful to know when something important happens, but useless to know when “a message was received” — tools like ToneQuilla can help. Simiarly, visualizations can provide insight into ones’ messaging history. See Themail for interesting research on the topic.

Thunderbird 3 beta 1 – a platform for innovation shapes up

Standard

Today, we’re announcing our first beta-quality release since the Thunderbird project was re-energized about a year ago. It’s exciting to see the first in what will be a series of releases aimed at a broader set of testers make it out the door.

In some ways, this is a typical beta — we’ve changed a lot of code since Thunderbird 2, and we need a lot of people to tell us if we’ve made any boo-boos when fixing bugs. It’s also a good beta in that we’ve moved the product forward, in part thanks to new capabilities in the underlying Mozilla platform, which gives us faster performance all around, an add-on manager which will be even more useful for Thunderbird users than for Firefox users. We also have important new mail-specific capabilities, including a new “autosync” system that gets Thunderbird to download IMAP message bodies early, so they’re already there when you need them, and a much faster implementation for deleting and moving IMAP messages, which I can’t imagine living without at this point. The one-click add-to-addressbook is also an elegant and shameless ripoff of the Firefox bookmarking model, which our alpha users love.

As a result, I feel that even for a first beta, Thunderbird 3 is much better than Thunderbird 2, thanks to a lot of hard work by a motley crew of great contributors worldwide, to whom I’m very grateful. All that and more is described in the release notes, which I encourage beta testers to read.

However, in some other ways it’s far from a typical beta. In particular, unlike the traditional definition of a beta release, we’re definitely not done making feature changes, including some pretty significant feature work that we expect will be integrated in Thunderbird 3 in later beta releases, some features that will live as optional add-ons, and some experiments which may end up in later releases of Thunderbird or not, depending on the result of the experiments.

I’ll talk a bit about some of these upcoming attractions, as I’m quite excited about them (and some more that will have to wait for another post).

First, the autoconfig work, which refers to a complete rethink of the account configuration process in Thunderbird. The account “wizard” in Thunderbird made sense in the early days, but over the years it has acquired complexity and lost relevance, as email systems have gotten more complex. Unfortunately, if you’re lucky enough to have a secure email server, the current Thunderbird user interface unjustly punishes you by making you go through 8 pages of questions and you end up with an account which requires manual tweaks before you can check mail. That’s not good. To deal with this, we have rethought account configuration completely, and came up with a dialog which, when it lands (becomes available by default), should make account configuration really, really easy. It’s been hard to come up with an elegant minimal user interface that hides all of the complexities of email configuration, but it’s worth doing it right.

Next up is tabs. Thunderbird 3 has a great opportunity to be basically coming up with a tabbed interface at a time in history where we’ve learned a lot about how tabs work well or poorly. In Thunderbird 3 beta 1, it’s a fair bit easier to work with tabs than it was in Thunderbird 2 (although many improvements are planned before the final release). For example, it’s much easier to create new kinds of tabs (the calendar Lightning add-on makes great use of those, for example, as I show below). One simple example of this is Bryan Clark’s “glodabook” add-on, which is a starting point for exploring new ways of navigating the address book.

Addressbook prototype

Next up is conversations. Thunderbird’s default mode saves emails you send in a “Sent messages” folder, and emails you receive filed in other folders, typically decided on a per-message basis by the users (more on that below). This is a fine default strategy, but it can make it hard to find related messages if they’re not in the same place (e.g. messages that are replies to emails you sent, or messages that are part of a long conversation, some of which is in your archive folders, and some of which is in your inbox). Thunderbird 3 includes a powerful search engine (“Gloda”) which is designed to let us efficiently find messages that are related, no matter where they are. In particular, it makes it quick to take a message and “show it in a conversation context”. This lets you view the messages you sent interspersed with the messages you received, but also messages from earlier in the conversation which you may have archived. This is still experimental, and not enabled by default in 3.0b1, but early results are very promising:

Conversation view

Next up, search. Part of the Gloda search engine mentioned above is a powerful full-text search engine, which seems to be working quite well so far. Thunderbird search is already better in 3.0b1 than in 2.0 because we’re more aggressively downloading emails, and doing a better job of finding the downloaded copies. With the new search engine, we’ll be able to efficiently do searches like “show me all messages from bryan mentioning ‘conversation’ in the body or the subject”. And we think we can make that easy for users to discover as well:

First we do autocomplete on existing contacts:

autocompleting contacts

and then encapsulate them in graphical objects to simplify the display:

experimental search results view

On that topic, one of the design topics we’re exploring is how to make it easier for users to be smarter about search. Thunderbird has always had very powerful search capabilities, but to use them people have to think like database programmers, which most of us aren’t. We have some plans there to help people build smart searches based on starting with the simple searches people are used to from the web, using suggested sub-searches based on analyzing their search results. Now that we have the search engine in place, we can start to experiment with many different search models, and see what works best.

The last two screenshots are particularly exciting to me because they demonstrate that we can leverage the foundational bits of Thunderbird, and experiment with new ways of working with messages, without disrupting the user experience that Thunderbird 2 that many users are comfortable with. What’s equally exciting is that these new ways can themselves be platforms for experimentation, whether by us, or by others. One such experimentation topics is conversation visualization and interaction models. Andrew Sutherland implemented an add-on that shows thread arcs (here using a view that it out of date by a whole week):

Thunderbird has always been an interesting experimental playground, because of its open source nature and the add-on model. The technology platform in Thunderbird 3 will make it even more so — 1) we have better technology that allows new ways to slice the data, 2) as we’re exploring new features through the use of add-ons ourselves, we find out early what changes we need to make to make the platform more extensible, and 3) because we’re fully leveraging web technologies, something which is a bit new for Thunderbird. In particular, all of the views above build on some of the most compelling advances in web technology, from the canvas widget to Javascript toolkit-based animations (JQuery for now) and modern CSS features.

Finally, last but not least, the Lightning calendaring add-on is moving along great. The Thunderbird+Calendar team has made a lot of progress on tackling the stack of issues that made it hard to integrate into the new Thunderbird codebase. We’re not done yet, but it’s looking great:

calendar tab

There are some other add-ons that some contributors are working on that I’ll talk about as they get polished and ready for screenshots.

As always, we love to get ideas for interesting new capabilities we can bring to the platform. We’re focusing on some of the basic capabilities we think are crucial to solving today’s mail problems, such as search and message management, but it’s a huge field, and email users are desperate for innovative ideas.

We’re identifying way more topics of interest than we have time to tackle, so we’re hoping to reach out to designers to get a broader set of participants helping us with some of the design challenges of a modern approach to messaging, within the context of Mozilla Labs. More on that soon.

Whether you’re a designer or an implementor, if you want to build new features on top of the views we’re building, add new kinds of data to add to our database (twitter, facebook, rss, etc.), or new visualizations, do get in touch.

If you’re interested in the extensions above, and aren’t afraid to try out code that changes daily, my recommendation is to use an IMAP server, Shredder (the nightly builds of Thunderbird, which are already different than the beta 1 build), and the extensions at the following locations: