More thoughts on smarter e-mail software – The Great Lake

One problem the ``database" (see my recent post here) would have to solve is how different remote mailboxes should be handled. I have several accounts at different locations, and not all of these are directed at me personally, and I also use IMAP for most of them (hmm, if not all).

Using IMAP I may create as many mailboxes as I like — mailboxes in the traditional sense. Different mail servers provide different means for filtering and sorting incoming messages on delivery, hence messages may be delivered to any individual mailbox in one of these accounts. The database view would have to take this into consideration.

Somehow I therefor feel that designing a completely new system for storing messages might not be the right way to go. Instead, perhaps one could create some kind of front-end to the already existing mail client protocols and message stores. For example, imagine each POP account and each individual IMAP folder as sources of messages, like mountain springs. The flow of messages from these springs gathers in a great lake, and from this great lake you can then look at each and every message any way you wish. The great — and most magical — lake knows the source from which a message stems so it's easy to track it back to the actual mail account it was delivered to.

Hmm, might want to find a better metaphor.

Brad Choate's e-mail software wish list

Via Peter I read Brad Choate's thoughts on smarter e-mail software. I couldn't agree more. I've tried a lot of e-mail clients and they're all so alike... which is good in a way, but bad in that — as Brad writes — there's no innovation taking place anymore.

I agree with Brad that the paradigm of putting a mail message in a folder is a bit old. Simple and functional yes, but we should be able to do better. The ``database" approach sounds better as it gives you new ideas of how the content of this ``database" could be accessed.

I don't really like the word ``database" though. It's far too programmer-centric, so I'd like another metaphor. Message store, message space, big-pile-o-messages. I don't know. Something else anyway, but that'll give just about anyone an idea of what can be done with it and its content. Also, saying database implies (to me at least) the use of ``a real database", which isn't really necessary either. The key features of this great store of messages that we're talking about should be that it 1) can be dynamically searched (or filtered or what ever) according to a plethora of criteria and 2) it's as fast as a roadrunner doing it.

As for the dynamic filtering options Brad is writing about, I think this has been addressed in a few clients already. If I'm not mistaken Outlook Express has something called ``views" that closely resembles what Brad's describing. The technique could still be improved I guess, and combined with the all-messages-you've-ever-received-gathered-in-one-place approach it'd be a winner.

I also miss threading in the mail reader I'm using right now (the reader shipped with Mac OS X). Jwz has a detailed description of an e-mail threading algorithm which according to himself is the only real way of doing it. It'd be interesting to see how this algorithm performs in real life. Perhaps I should send Apple a feature request.