Jump to content

Mail/Threading

From UX Parula
Revision as of 16:27, 24 January 2025 by Elenuzza (talk | contribs)

Problem

Large email discussions can become hairy. It can be difficult to follow the conversation. All messages about one subject are combined called a "thread", and it can have many people who wrote in it. There may even be sub-discussions about a very specific sub-topic forming. When you come into a thread, or come back to it, you ideally want to have an overview and see the discussion structure. This is what "threading" is about.

Threading is hard. Many mail apps don't show threads at all, some are showing only flat threads. But you want to see who responded to who.

When you read a long email discussion, it can be difficult to navigate. But usually, your main needs are:

  • Seeing which emails you have not read yet, and what sub-topic (sub-thread) they are talking about.
  • You might want to look for a specific email in the long thread, for example, the decision that was eventually taken, or emails from a certain person. See the rest of the problems with the current apps here: ReviewThreading

Our solution

Mail threading
Mail threading

How do we show threads nicely? We have beautiful solution, which we'd like to show to you.

Mobile Mail Threading
Mobile Mail Threading
Thread bar
Thread bar

A thread bar next to the message content shows the entire conversation structure (who answer to who) and who wrote each email. This system guarantees a great use of space and full control while choosing what message to read.

Remove clutter

We don't show the subject in this view, because the entire thread typically has the same subject, so there's no point repeating it over and over again. What is left? The author and the date. The date is implicit, because we'll order branches of the discussion by date, with the earliest message shown first. That leaves the most important information: The author, and which email he responds to.

Lines show replies

Each email is represented by a bubble, and the lines show which other email this responds to. The lines allow you to follow the discussion structure.

Bubbles show author

We show the email using the avatar of its author: Either a picture (if available, for example within a company) or a placeholder with the initial of his name, and a color that is specific to that person. The color will be generated from the email address using an algorithm and will always be the same for that person, so that you can associate that person with that color. Of course, you can change the picture of that contact in your own address book.

Message states

Unread messages are highlighted by thick green line leading to the unread message, and the the message bubble laso has a thick green border around it.

The currently selected messages, which you are reading right now, is highlighted using a separate border around it.

Clicking on a bubble selects that message and allows to read it, and also focuses the graph on that msg.

Messages that are starred will have a little star on the top right. That allows you to mark emails with decision or otherwise important messages in the thread, and to quickly find them again. They will also be starred in the normal message list.

Algorithm

  • If a msg is a reply, it's indented one level more to the right, and a short curvy diagonal line joins the line to its left.
  • ... unless it's the only reply, in which case it's not indented, but directly below the previous message, and has a line straight up.
  • ... unless (space issue) it has multiple replies and there already is a message to its right, which also has replies.
  • Line goes straight down from a message, unless it has no replies.
  • Subject to change during implementation

Conclusion

Imagine how much easier it would be for users to navigate through messages when they can visually track who is involved and how responses are connected. We believe that user will love it.

Feel free to tell us what you think about it! Please send us email to [email protected] .


User survey and testing

User testing