Discussions: Threads vs. Chronological Order

    We've been discussing a lot the need for having Activity panel and Discussion panel, whether having both makes sense.

    My main argument for why it is necessary is that comments in the Discussion panel are grouped by threads, which makes it hard to stay on top of things on a regular basis — new replies can occur in any thread, so you basically have to re-read all the conversation to see what's new. On the Feed panel though things are linearized and presented in a chronological order, which makes it much easier to see what's new.

    It's true that the current implementation of the Feed lacks a lot of UX niceties, and especially more context for comments. For example when you see a reply in the Feed you never know what it's replying to, and it's not easy to go to the context either, because there's no button for that. Main point is that to stay on top of things regularly it's much easier with a single chronological view.

    Nevertheless, we've been discussing merging Activity and Discussions again into a single panel. Some systems like Linear and GitHub do that, and it seems to work for them.

    This screenshot from Linear shows how an activity event of creating an issue is mixed with comments. Comments are still grouped by threads in Linear, although it's not shown on this image, but both Linear and GitHub show the activity events in a much more discrete way than comments, which is nice.

    Linear screenshot showing how comments are mixed with other activity events

    So, when comments are grouped by threads, the chronological order of events is broken. I couldn't easily produce this situation in Linear, but the following sketch demonstrates it.

    You can see how a reply happened 1 minute ago appears before an older priority change event that happened 1 day ago.

    Sketch showcasing how replies grouped by thread break the chronological order

    So, this situation makes it very hard to keep track of things when you do it on a regular basis.

    I guess we don't suffer from that in Linear that much, because they have an Inbox. They also have introduced the new Pulse section, which let's you see what's new in a single linearized list. But in Seed we don't have Inbox (yet), and the current implementation of Feed is very helpful already to stay on top of things.

    Now, if we thing about merging activity and discussions like Linear and GitHub, we still debate how to group discussions there.

    One idea that I wanted to showcase (and I was coerced to write this document for it 😆) is the way Fossil does it: it lets you group forum discussions by threads, or chronologically — you can choose.

    By default forum messages in Fossil are grouped by threads:

    Fossil threads

    But there's a button to view them in chronological order in which case all the comments are linearized and sorted by time:

    Fossil chronological view

    So, maybe we should do something similar? We could merge activity and discussions into one view, add some filtering options so people could hide events they are not interested in, and they could choose if they want to see discussions chronologically or grouped by threads.

    You can play around with forums in Fossil here: https://fossil-scm.org/forum/forum.

    Actually, I do encourage you to play around. They have a few nice ideas.

      Threads are ordered by most recent activity.

      Because Fossil is a web page made with multi-decade old approach, they don't style links, so visited links are colored differently, because this is what browsers do. So it's a nice addition for you to navigate forums.

      The right column is really interesting. It basically shows you how many posts are there, and when the thread was created.

    Fossil forum main view

    And when you click on a thread, it automatically brings you to the most recent comment, regardless of where in the hierarchy of comments it is (it may not be at the bottom of the page if it's a reply). As it's shown in the image bellow, the most recent comment is number 13, and it goes before number 10 in the list.

    And of course you could go up and choose to display the discussion chronologically.