

Do you thread comments on your startup? - spoiledtechie
http://www.spoiledtechie.com/post/To-Thread-or-Not-Thread-Comments.aspx

======
sam_in_nyc
My start-up is all about comments. I've spent months thinking about how to go
about commenting... and I still haven't cracked it yet, but let me just spill
my thoughts on the matter.

Threaded/Linear have their pros and cons.

To have threaded comments, it means you are limiting the user to explicitly
reply to one comment. As an aside, it's possible to make one comment be a
reply to many, and then creating some really neat conversation graph out of
it, but that's just so complicated. I think we can all agree that threading is
the ability to reply to one comment, and create a tree structure of comments.

Threaded comments create a tree of conversation; it's highly structured.
Nearly as important as your post is where in the thread it goes. You lose the
option to post something more general, or something that references several
other posts. The importance in threaded conversations is the structure and not
chronology.

Linear comments is all about chronology. The conversation evolves over time,
and you lose the structure. It's flat. If you want to reply to someone, you're
just quoting then. By the way, a linear commenting system without quoting, in
my opinion, is the lowest form of commenting. It almost angers me to see it
being used, anywhere.

Nearly all forums use non-threaded, and it seems to work out great! It's more
of a community builder -- let's all join this conversation as it passes
through time.

Threaded conversations have the problem of becoming highly specific very
quickly. But, they allow the structure to be clearly visible. Also, threaded
conversations don't allow you to dig for what you want as easily. You'll never
be able to order a tree-like structure in any meaningful way unless you
flatten it.

The conclusion I ultimately reached was always use threaded, because if you're
smart about it, threaded implies linear as well. You can always flatten a tree
-- the data is there. But it's much harder to take a linear set of comments
and imply which is a child of which based on quoted text. In short, you can go
from threaded to non-threaded, but not vice versa.

So, I allow my users to view the conversation as a thread, with very smooth
features, like instantly sorting children of any post by Date, Username, or
Score. And, coming soon, I'm going to allow a non-threaded view. It will just
flatten the tree and show posts, in any order they choose, date, score,
username, etc. If the post is a "reply" then I just annote: "In reply to
[link]summary of replied post[/link]"

One major issue with threading is scalability. What happens when you have 500
comments in one giant tree? Which do you show? How do you prune the tree? Do
you show that gem of a comment that has a depth of 8? Do you hide it's
siblings or parents? It really becomes a lot of trouble... and the solution
seems to be: "ajax it in."

-sam

------
ntoshev
Threaded comments scale the conversation better. Linear stay more focused.

~~~
dasil003
Concise and precise analysis. Most sites don't have the comment volume to
merit threads, and a threaded discussion is not truly a "conversation" as the
author wants to paint it.

------
csytan
Threading is a great idea because you can easily follow a discussion, and it
takes up much less space than quoting. The disadvantage is that often there is
a lot of scrolling to be done when you're not interested in a particular
subtopic.

I've been experimenting with a tree-like layout which doesn't have that
problem (although it may have other problems). It's no where near completion,
but here's an example with data pulled from a reddit thread:

<http://api.webnodes.org/>

Source: <http://code.google.com/p/webnodes/>

------
pclark
my startup will have threaded comments. I started making my own comments
engine, but realized I'd just be making Disqus (YC startup).

Disqus is very easy to integrate with your design, has a fantastic feature
set, Facebook connect and great development team.

Some issues are that it won't integrate with your accounts (obviously) and it
can be quite slow sometimes.

~~~
dasil003
The big downside is what happens when they go belly-up?

~~~
compay
They have an API that lets you access all your data. You can back it up
nightly as XML files and just port it into something else if you ever want or
need to.

~~~
dasil003
My comment was a little harsh. It's great that they offer that, and I'm
probably rushing to judgement. But honestly the idea that at some point in the
future when my site is humming along and I'm not thinking about it I'm going
to have to drop everything and port the comments to a new system to avoid
losing them makes me want to just implement my own comment system and be done
with it.

~~~
compay
I don't think it was harsh, I think it's a good point. Like you said, you have
to balance the convenience vs. the risk.

------
nx
If there are comments, you should thread them. Not Lifehacker-style, though.

~~~
unalone
I disagree: I don't thread them. Reason being, it kills linear conversation,
and that's something I _don't_ want. Linear conversation helps keep a strong
conversation going.

So on the site, there are two "commentesque" systems. There's one for the
general critiques (the focus of my site), which don't get threaded because
they're grouped by the user that made them. There's no discussion in those
comments, or there's not much. The focus is on constructive, objective
feedback.

For the forum, we decided to go almost entirely minimal. A screenshot from the
alpha can be found here:
[http://tinypic.com/view.php?pic=f18vb&s=5](http://tinypic.com/view.php?pic=f18vb&s=5)

The idea is that we wanted to focus on back-and-forth talk. The three of us in
that thread all knew each other on an older site of mine, so that's already
established, but we want a feel of _community_. As in, instead of lurkers and
posters, you've got a place where if you're new, you can talk to older users
and become sort-of welcomed into things. You lose that with threads, because
suddenly it's all-too-easy for a user to get completely ignored if they don't
join one of the bigger threads.

~~~
nx
Well, I like your point. The only problem I see with linear conversations is
when the comments are too many to follow responses easily, things get really
messy at that point and the very best one can do is jump around following
links and trying to understand the dialog.

And, you're right, if you don't join a popular thread in a threaded comment
system, you will probably be ignored. But you won't if you're one of the first
to post in that page, thus somehow making the oldest more relevant, and if you
get lots of replies your comment will be seen by more people, which makes
sense to me since it would be a hot topic.

There is no perfect commenting system, I guess, but the big flaw in linear
conversations is that replies are not emphasized and the relations between
comments is easily lost. It would be useful when time is relevant.

I would prefer a threaded system, sorted by rating as well, kind of what
Reddit or HN has: the hottest, top-rated, most recent comments on the top; the
oldest, lowest-rated, not-replied-to ones more likely to be ignored.

------
andr
Is it implied that a startup has to have comments?

~~~
joshuarr
It was implied:

"The current standard for any interaction is the comments section of the
sites. The comment section is the talk back, the conversation to the site. It
is what allows for user participation and what most people would declare what
Web 2.0 really is."

This kind of status-quo talk makes me simultaneously angry and sleepy.

