| "precious few threaded discussion models survive on the web." Citation needed. Seriously, you can't just casually throw out a phrase like that and not expect to back it up. HN seems to be going fine. Reddit seems to be going fine. Facebook has threads now I've noticed and it hasn't exploded in a ball of threading-related fire. I can't think of a website that has died because it uses threads, nor can I think of a website that is overly popular because it doesn't use threads. Anyway. let's talk about his arguments a little: 1) It's a tree. His argument seems to be it's unnatural and confusing to read. This is sometimes true. What's even more confusing though, is when people wish to reply to one particular post, but since it's flat it all gets smushed together into some kind of massive confusing shouting match. 2) Where did that reply go? - "How do you know if there are new replies?" Yep, that sucks, no question there. - "reply at the wrong level" I'd argue that occasionally getting your reply wrong is better than constantly replying into a shouting match and never being heard. - "responses buried somewhere in the middle" that kind of thing is lame totally, but it can be "fixed" (to a point obviously, imo, ymmv etc) with a upvote system 3) It pushes discussion off your screen. Aka "indentation is ugly". That is certainly true, but it can be mitigated (at least in terms of wasted vertical screen space) with expand / collapse buttons. In terms of horizontal space, I think that's an UI issue waiting for someone to solve it (I don't think it's a fundamental failure). 4) You're talking to everyone. Not sure what he's really talking about here, I don't think anyone thinks a reply to a comment is private-- you reply to an existing comment when you want to comment on the comment, not talk to the person who wrote the comment. Otherwise "polluting the tree with these massive narrow branches" seems to be #3 again. 5) I just want to scroll down. Basically, he finds it too hard to navigate in tree-space. The problem with this is that everyone else wants to reply in tree space, so even if your site has flat comments people still going to use @originalCommenter at the top of their comment, or if you're lucky quote the originalCommentor's post. And then originalCommentor will quote back, and so on and so on until, surprise!, you have threaded comments again, except this time it's adhock, ugly and with no collapse button. I'm also confused as to why Jeff includes a couple of paragraphs implying that Stack Exchange is a good commenting system and then says "but remember: Stack Exchange is not a discussion system.". So then why bring it up? It not being a discussion system implies that perhaps the techniques used there may not actually translate into something that is a discussion system. In the end, I understand that there are elements of threaded discussions that are frustrating, of course there are, nothing is perfect. But I would argue that flat discussions are, for certain types of conversations (specifically those had on HN and Reddit), far more detrimental. I'd go so far as to say that Reddit would not be even remotely as popular if it had a flat discussion system. |
1) Outside of computers people don't experience recorded threaded discussions
Instead what they experience is much like a flat forum. Everybody talks in chronological order about the current topic at hand. Some small number of side conversations are free to start, but too many and the rooms becomes noisy and all the conversations are hard to follow. If you come to the end of a discussion thread there is no record of the discussion you can refer to and pick the thread up elsewhere. Instead the best that can be done in one participant recalls some kernel of a previous thread and throws that back into the conversation in the hope that other participants will both be interested in discussing it and remember enough of that previous thread to continue.
For normal human discussions this is fine; there are a small maximum number of participants, conversations are limited in both time span and time between comment and separating the jumble of chronologically ordered threads is labour intensive.
The environment which makes this flat threading model of conversation work in the real world don't hold. An Internet discussion can have hundreds of participants and span weeks with any particular person responding only once a day. With suitable UI the computer can carry the entire burden of organizing and displaying the record of conversation in any subthread of discussion.
2) Web forum writers don't pay attention to the lessons of Usenet.
Atwood himself mentions Usenet and quickly discards it. This is the single biggest mistake of thread proponents and forum developers. News readers have already tackled the most serious issues with a threaded display with a few powerful techniques:
The first is that newsreaders explicitly show their user which posts are new since they've last read the thread. This solves the issues of "Are there new replies?" and "Buried responses". It does this by allowing users to skip to the next new post quickly as well as to see which subthreads have new replies.
The second is that news readers allow the user to trivially close an entire subthread or mark it read. I would argue that this is the second most important feature of any threaded system anywhere and yet is missing in nearly every threaded commenting system. When somebody comes back to a discussion they don't tend to be interested in rereading posts they've already seen. Instead they want to view the new posts yet have the thread context readily available.
The lessons of Usenet are not complicated, but they do depend on the understanding that computers should do work for humans. It's more work to track which posts a particular user has read, but it helps the user. It's more work to jump to the next unread post or collapse a subthread in the UI, but it helps the user.
3) Nobody seems to realize the UI middle ground between flat and threaded.
The vast majority of the cause of threads indenting themselves into infinity is a linear chain of responses, usually two people going back and forth. While this is technically threaded out to infinity, it is effectively a flat discussion in chronological order.
Take a look at the threading display Nitpick uses http://travisbrown.ca/files/nested_threading.html .
Nitpick doesn't display the technical threading, but instead the effective threading. Instead of indenting a linear series of replies once for each reply, it displays one indentation for the entire linear subthread. When the technical threading doesn't add any information it isn't displayed. You don't have to scroll right and down to read it, just down.
It seems that a threaded forum which took these considerations to heart would solve all his issues or at least reduce them to minor annoyances. Yes it's still a tree and as Usenet has shown that's not always enough, but most of the time it is. If the computer provides the necessary tools to navigate to new posts in a thread then it doesn't matter where in a thread the response goes, you'll be able to find it when new trivially. If you don't indent when it doesn't add value you aren't required to scroll left.
All this leaves is the fact that you have to scroll down. As you state his complain seems primarily focused on having to close subthreads he isn't interested in. This seems like a feature and not a bug. You can just read downwards, it just takes longer than collapsing the thread. In a flat forum you have no other option but to scroll down.