Forum OpenACS Q&A: The Problem with Threading UIs

Posted by Michael Feldstein on
I very much like the enhancements to the flat UI. I can see that we all have learned a trick or two from blog interfaces.

However, I think there is a deep and fundamental flaw in the thread view (and every other thread view implementation I have seen anywhere so far). Basically, users who don't have the data model of threading (which is really branching) in their heads are encouraged by the UI to mis-use the "reply" button with the result that you end up with unnecessarily deep branching most of the time.

The root of the problem is the question of what the users are replying to. Are they replying to the post or the conversation as a whole? In most cases, users mean to do the latter. But in order to do so in most threading interfaces (including this one), they have to scroll up to the top of the page and reply to the parent of the thread. This is both counter-intuitive and more work that should be required of the most likely user intention. In contrast, replying to the particular post, which corresponds to branching in the data model and is analogous to starting a tangent in a conversation, is the easiest thing for a user to do. This is bad, bad, bad.

If you must enable branching in a discussion thread (and frankly, I think the feature is useless at best in the majority of conversational circumstances), then the right thing to do in the UI is to have two reply buttons on every post. One, the obvious default, is essentially a "reply to conversation" button and has the effect of replying to the parent of the thread. The other, an obvious non-default, should be called something like "start a tangent" and has the effect of replying to the post and creating a branch.

If you're curious, I blogged about this topic in more detail in the context of a critique of Sakai's discussion board UI:

Also, as a side note, the radio button interface for switching UIs appears to be broken in Safari.