AnnouncementsMatrixEventsFunnyVideosMusicAncapsTechnologyEconomicsPrivacyGIFSCringeAnarchyFilmPicsThemesIdeas4MatrixAskMatrixHelpTop Subs
2

Reddit introduced tree-style comments that go deeper and deeper. It was revolutionary in that you can follow individual threads of conversation. I guess they weren't the first to use that as Slashdot already had them and lots of forum scripts include threads, in fact usenet uses threads, but Reddit was the first to display entire threads on a single page afaik. With the others you have to constantly click to expand comments.

Now, here's the cost of Reddit's style: it clutters the interface as indentation keeps increasing. People prefer old.reddit.com but the new design does one thing right: it centers the comments. The pesky thing about old reddit is that the top-level posts are too wide in a normally sized window, and if you change your window size to make it fit, then 2nd+ level comments become too narrow. You can never make it fit for everything. The problem is also apparent in the new design: it optimizes for the first few levels, but for deeper levels you have to click to zoom in as it were, just like on Slashdot.

My solution to this problem is to give visual queues that make it clear something's a thread, without involving indentation. The queue is a chain on the left side that links them, just like some outliners do with bullet points. It looks like this:

|- Top-level comment
| Which is multiple lines long
|- Reply
|- Reply

Actually this is quite similar to what fecesbook does. That uses @someuser at the beginning of comments so you can see exactly who someone is replying to, and jewtube does the same thing, there are only two levels of comments and at least minimal indentation. The @ is useful, I recommend implementing that (so the reply button automatically inserts the right @user at the beginning of the input box much like on 4chan with >>number). But what's unique, afaik, is using a chain as an additional queue. And the comments still get sorted by what something is a reply to rather than chronologically. That'd mean:

|- Top-level comment #1
|
|- Second-level reply #1
|- Reply to the above
|- Reply to the above
|
|- Second-level reply #2
|- Reply to the above

|- Top-level comment #2
|- Second-level reply.

(Etc. Don't take the spacing literally, you can only do so much with ASCII.)

So it doesn't matter when someone replies, the comments get sorted by thread like on Reddit, but without cluttering the page with ever increasing indentation. It's the best of both worlds. What do you think, wouldn't that be cool?

Comment preview
[-]x0x7
0(+0|0)

I'll be honest. I like reddit comments. It would take a lot of levels before comments got too narrow, and I don't mind the top level being relatively wide. Though I do spend most of my internet time on a small chromebook rather than on my desktop. I've learned over the years to design for smaller devices rather than larger if you are going to be finding yourself doing on or the other.

I don't like what a lot of sites have done to "mitigate" the downsides of pure nested comments. Youtube, facebook, twitter. I hate their comment systems. I think having half nested comments sucks. The other comment system that is good is getting rid of nesting entirely. Chan style comments are quite good.

In theory a site could support both. It's just a display format. I'd actually like to do that. But there are some intermediary steps first. We'd need visible comment ids so the references make sense.

I was on another reddit alternative a week ago where the admin there was kind of antagonistic. I was able to clown on him pretty easily on his own site because you couldn't make comments below level 2. I assume that's not what you want but that's an example of breaking from the system I'm not a fan of.

[-]LarrySwinger
0(+0|0)

The problem with flat forums / chan style comments is that first you follow thread A, then B, then A again, then C, back to B, everything all at once. I'm a chantard as you know but even that I've used for the majority with 4chan x which makes it tree-like. The shortcomings of flat forums is also demonstrated by the fact that moderators have to step in and force people to stay on-topic or otherwise make a new thread.

Indeed, I don't mean a two level system. Visually it'd be only one level of indentation with either a chain visible or not, but under the hood it'd still be a complete tree on the server side. I do think two levels cover most situations but a non-indenting tree is still better.

[-]x0x7
0(+0|0)

I know you are saying there should be one level of indentation, but let's pretend there is zero indentation because in theory the problems that would create would exist within the one indented cell.

If there was zero indentation how would we know what was a reply to what? Wouldn't we need chan style reference ids? The pre-order traversal order would only partially indicate a what is a reply to what where as the chan style chronological order doesn't indicate it at all so it needs the references. But because the only difference between the chan style and the zero indentation variant is the order and the order only partially communicates grouping you would also need ids. Switching to the 1 indented variant we partially mitigate this but have the same problem within each 1 indented cell. Because visually it will look like you are replying to the first level comment you effectively are. You could click reply on a two level comment and it could even be modeled that way on the back end but visually we have max two level comments like Facebook or Youtube, just with a data structure the user will never see. Might as well model the data like it's rendered and use @ to indicate who is replying to who instead of chan ids. We just derived youtube comments exactly. I really really don't want youtube comments.

I get it. When you have a thread with only two people like we have now this could be rendered as a flat conversation. That would be nice. But once more people are involved and we have a tree instead of a linked list the only clear way to render a tree is as a tree. Maybe there is something to being able to identify linked lists and rendering them differently. The question then is this categorization done at the post level or within a tree. Doing it at the post level is probably cleaner. Switching between tree render to linked list render and back again could get weird. But it would be different. We'd be the only site with weeping willow comments.

[-]LarrySwinger
0(+0|0)

I don't really understand the post you linked to, like what is there to process about the root node, and what are the advantages and disadvantages of each method, how is anything except performance affected?

I get it. When you have a thread with only two people like we have now this could be rendered as a flat conversation. That would be nice. But once more people are involved and we have a tree instead of a linked list the only clear way to render a tree is as a tree.

Actually it depends whether or not people keep replying to the most recent comment in the thread rather than who's making the replies. Indeed, this thread is a good example, it could all be displayed on the same level.

I realized my idea was inspired by the new gaggit design so if you go there and click a thread you will see a line running down from each avatar and it connects to the avatar of the user who's replying. And so how do we distinguish between comments here? With coloured lines. Combine these two ideas and you can replace the indentation with colours entirely. Also check the final visualization in the OP again. There I distinguished between sub-threads through spacing. So all of the replies in this thread could be placed close to each other, and if someone else replies to your top-level comment above, first there'd be a space where you just see the chain running for a few lines, then it connects to that other comment. You can combine that with differently coloured chains. I hope that explains what I mean.

I agree that @ is better when people aren't anonymous but the @user should be a link to the comment being replied to in case of ambiguity.

Switching between tree render to linked list render and back again could get weird.

I don't think it should be yet another toggle or the option should be fine but at least tuck it away somewhere. It's best to simply make a good design that works for everyone. If the forum is different for everyone then it feels less communal that's one thing I don't like about presenting users with too many options although I get that it's sort of the point of this site.