IMAP: How to implement GMail-like threaded conversations view

Chris Rebert clp at
Fri Dec 19 21:58:54 CET 2008

On Fri, Dec 19, 2008 at 11:54 AM, Michael Torrie <torriem at> wrote:
> Martin wrote:
>> Currently I am trying to get used to Python's imaplib and email
>> modules.
>> I'like to create a webmail client simmilar to GMail.
> This is off-topic, but why on earth would you want to emulate Gmail's
> conversation views?  It's horrible and a very broken way of viewing
> e-mail threads.  Compared the normal, threaded view of, say the
> discussions on this list to the view that Gmail gives you.  For
> conversations of more than half a dozen posts, Gmail's view is
> unnavigatable.  Suppose I want to break into a discussion that's already
>  dozens of posts long.  With a real threaded view I can easily see the
> flow of the conversation, grab random posts, then maybe read their
> parent or grandparent posts.  Looking at the rest of your e-mail, I can
> see that maybe you do want to have real threads rather than the google
> conversation view which removes all structure.

I disagree. Reading the messages in chronological order is natural and
if people quote their parent posts properly, which they nearly always
do, there's no need to consult the parent message again (and you'll
have already read it by that point in the conversation anyway and
recognize it). Why would you "grab random posts" anyway? It makes much
more sense to just read the stream until you reach an interesting post
(thus gaining the context of the _entire_ discussion) or just read the
post in isolation along with its quoting of its parents.
Additionally, for most normal people who've never heard of
mailinglists, email conversations are typically simple back-and-forth
exchanges displayed excellently by Gmail's conversation view; these
same people would probably find threading complex and confusing.

>> The thoughts above might lead to the second approach:
>> b.2) Use the "Subject:" field of the messages.
> Horribly broken.  Thunderbird does this and it drives me crazy.  I often
> get messages months apart that happen to have a common subject line,
> even though they aren't the same thread or conversation.  I don't want a
> new message, which does not refer to the old message in any way, to
> attach itself to my 6-month old message and force me to scroll down
> through potentially hundreds of e-mails to find the stupid thing.  No,
> the RFCs are there for a reason.  They bring sanity to the chaos.
> Anything else is madness.  And the fact the Outlook doesn't do proper
> referral fields just infuriates me.  Sigh.

Yes, apparently circa Netscape 3.0 they used an ingenious message
threading algorithm (described on but the Netscape 4 devs
foolishly threw out the code and wrote the broken algorithm used
today. Quite a shame.


Follow the path of the Iguana...

More information about the Python-list mailing list