email has been much on my mind again lately. The fact that no email reader (client, MUA, etc) does things the way I'd like is frustrating, and many powerusers I have spoken to agree...
This evening I hooked up with Karl again, and over some green tea and a sticky thai rice desert with mango, we discussed, amongst other things, email UI. For the nth time. Semantic Web ideas were fresh in our minds as Karl had given a presentation on it and RDF earlier this morning.
Now in researching for this post I remembered and retrieved two email projects which actually DO much of what I want. However one was merely an IBM research project (they do SO MUCH awesome stuff at Big Blue!) and the other is, well, temperamental. I will mention them again later after I have described what I have in mind.
So, imagine this:
You don't manage your email anymore into folders/hierarchies. Your email client just stores everything into a dated space - like weblog archives, "/2004/10/21/21.14.49.mbox" - just to keep things nice and structured, in small parcels so as not to choke the OS and the Indexing mechanisms, and to have unique IDs for and URIs to every email.
THEN
The email client gives you a few configurable view options:
- Smartlists (Entourage has always had this, and it is coming in Apple Mail.app 2.0)
Smartlists would filter based on rules you derive from data already part of every email your client archives. Date sent, Date recieved, status, presence or absence of attachment, junk-mail headers, etc...
"show me all unanswered email from the last 3 days"
"show me all emails with attachments" (this becomes a pseudo filesystem - Cory would love this)
SmartLists are basically saved searches for known/established meta-data and character strings. - AddressBook/LDAP integration/contact-based aggregation + analysis
i.e. a list of all contacts, whom you have email to/from, sorted by most recent/frequency/volume + Bayesian(/Bloom?) filtering/learning/weighing (don't show me this contact, drop priority on this sender) - Unlimited and customizable TAGS (à la del.icio.us/flickr... the current sweethearts)
You assign tags to emails by maintianing a list of them and dropping emails onto the tags you want to associate them to or using the existing filtering tools - instead of sending it to a "folder" assign it a tag or two or three. (Filters could also influence weight...)
Filter: incoming From: karl -> montreal, quebec, canada, french, friend, +10
Filter: incoming From: joi -> tokyo, japan, english, friend, client, +10
Filter: incoming From: mom -> family, guilt, -5
The killer feature of this is you can have emails in multiple "categories", whereas previously with folders, you had to come up with a taxonomy - which needed revision every few weeks as your situation/sotial network/needs evolved - and place your email within it. Each email could only be in one folder... - Thread arcs and thread highlighting
I think most recent email clients do the thread highlighting, but only one I know of (GNUmail.app!) implements "thread arcs". With all the above display possibilities, the odds that all or even some emails which are part of a thread are displayed in the same list are slim, making thread highlighting marginally useful, if not outright useless.
A thread arc (IBM Technical Research Paper PDF), on the other hand, appears in the individual email's display, and shows you that a) this email is part of a detected thread, b) where it is positioned in that thread AND c) allows you to click through the thread history.
Sounds good, no? I think so.
Ok, so I mentioned a few existing developments which have some or much of these features, as well as some of the plumbing.
IBM "Remail"
Remail does much of what I described above and more (calendars, IM...). Instead of tags, it does "collections". Similar concept. As far as I can tell, it is purely an internal research tool. Someone should learn from what IBM has learnt and DO IT.
zoe
Zoe is interesting for a number of reasons, but equally uninteresting... The good and the bad are as follows:
Good:
a) flat hierarchy
b) indexed / fully searchable (Lucene)
c) Contact sourcing
d) Plays nice with various outside stuff, Mail.app, Entourage, FTP, Blogger, RSS, etc...
Bad:
a) Web-based app (u'd think this was good but eh...)
b) in neverending and sporadic development
c) a PITA to install and use properly
d) the developer is a bit of a character I've heard...
Funny thing is that zoe was trumpeted all over as "Google your email" over a year ago. Then Google unleashed GMail. And GMail does tagging...
Other worthy mentions:
GNUMail.app
Ludovic hasn't updated the main news page recently but the changelog for the "nightly builds" for the most recent one shows he's still working on his very nice MUA which runs on Linux, OpenBSD, FreeBSD and Mac OS X.
PostHistory
Awesome research project for visualizing "email landscape" and "email social network". Not only stunning but useful for the above mentioned Contact listing/visualizing.
p.s.: Yes I've mentioned much of this in the past. Goes to show how important email is to me. ;)