Hacker News new | ask | show | jobs
by saurik 4935 days ago
I very often will find a post on HN where the conversation forked in numerous unrelated directions: one thread taking about the politics, one talking about the economics, one talking about the font used on the website, and another angry that the post got enough upvotes to be on the front page in the first place.

I consider it of immense value that I can skip most of the content I am not interested, and concentrate on the parts in which I am. Further, I will contend that it would be impossible to even have that many interesting discussions were every participant forced to struggle through all the other parts in a massive flat discussion.

Of course, you can then argue "let's have multiple flat discussions", at which point you start to see something more like a typical web forum: with categories, forums/topics (I will maintain "topic" going forward; to be clear, by "categories" I mean the section headings on the list of topics you often see), specific threads, and then linear posts within the thread.

But, if you think about how that maps to a site like HN, you find that the part with the flat posts isn't analogous to the comments on an article: the are more akin to individual thread trees, each one diverting off to talk about the politics, economics, etc. of the overall topic (the link). Now, the article does seem to realize this, as it explicitly is mentioned that capping the thread depth has value, but doesn't seem to understand that that's the world that most of the systems that he's operating in already have.

Take StackOverflow as an example: he says there is one level, but there are actually a bunch, from the site as a whole, to the individual interest areas, to the level of individual subjects (which are modelled as a DAG due to being structured with tags, but are of course used in the field as the next level in the tree, as that's how humans can conceptualize it) to questions to answers to individual comments on answers (where it stops).

That's a lot of levels of depth, and it lets the site help you weed out all of the stuff you care about from the stuff you don't. That depth was important: if you came to the site and you saw all of the questions at the same time, you'd be frustrated; if you came to the site and saw all of the comments, it would be worthless.

Now, go back to HN and attempt to remap that kind of depth: we have links, but there really are lots of sub areas that people like to talk about with regards to those links; as I mentioned: politics, morality, design, alternatives... and each of these is really a fairly high-level goal that tends to get rapidly paired down to "what you actually wanted to discuss".

It doesn't feel like these levels are occurring if you concentrate on the schema, but if you examine how the site is used they are clearly there; the exact boundaries, though, tend to get blurred depending on how many people are participating, what kind of article it is, etc.: there isn't a hard/fast set of rules like on StackOverflow, but the site serves a wider set of purposes.

Of course, when you get down in the trenches, things can get confusing. That's the only place this article has any meat: however, to turn this into a David v. Goliath "Discussions: Flat or Threaded?" kind of topic, claiming "Web Discussions: Flat by Design" misses the essential complexity of this field, throwing out all of the fascinating parts of discussion communities and bordering on linkbait :(.

Further, it then ignores the ways in which Hacker News attempts to do this (the reply delay limit that kicks in the deeper you get down in a discussion tree), and doesn't offer any enlightening solutions. That said, this is the same author (Jeff Atwood) who wrote a massive tirade about discussion systems in 2009 called "The Value of Downvoting, or, How Hacker News Gets It Wrong" without realizing that HN actually supported downvotes, so I'm not certain what I should expect here.

(Oh, and the idea that Twitter somehow makes it easy to follow conversations because it attempts to group replies back/forth is kind of ludicrous if you've attempted to dig back through a conversation on the site that involved more than four people after the fact: the mechanism often doesn't work, and it fails to deal with how Twitter is actually insanely NON-linear to the point where there is often a cacophony of discussion going in every direction at once by people who may or may not even be following other people who are involved in the same discussion... how that model--the least linear model in existence today--somehow proves that any linearity at all is valuable is confusing to me ;P.)

3 comments

Speaking of categories: I was browsing many pages deep in HN a few hours ago and I noticed a ton of "Ask HN:" topics buried on pages 6-10. That kind of implies those should be different category area on the site, rather than being mixed in with the regular "here's a link, discuss the content on that link", perhaps? To me, there seems to be a very broad divide between "here is a link to an article, discuss", and "here is something I am thinking, discuss". One is of the community, the other is fundamentally outside it.

> without realizing that HN actually supported downvotes

I have almost 500 HN "rep" and I still can't find any way to downvote. Is this documented anywhere? At Stack Exchange downvotes require 125 rep to cast, and cost you 1 point of rep for each answer downvote. (Question downvotes are free, but still require 125 rep to cast..) This is all listed in the FAQ.

> one thread taking about the politics, one talking about the economics, one talking about the font used on the website, and another angry that the post got enough upvotes to be on the front page in the first place

I should have mentioned this in the article (and I might revise it to add this, actually) but each one of those blocks the other. In other words, if the politics branch of the tree is first, that's 50+ replies I have to wade through to get to the next branch (say, economics). There's not even any way to collapse branches here as there is on Reddit...

Have we also talked about first topic reply advantage? How many people will bother to read past that first massive 50 reply tirade about politics to get to anything else?

Have we also talked about first topic reply advantage? How many people will bother to read past that first massive 50 reply tirade about politics to get to anything else?

How do you handle that anyway? If you make it a flat discussion, if someone brings up a new topic (in other words, a branch) then how do you respond to it if there were lots of responses between the time you wanted to reply and the time the original post was made?

If you have a long distance between the original post and the post you are responding to, then that means that the audience loses context and don't know what you are talking about - thus instead of asking "how many people will bother to read past that first massive 50 reply tirade?" you now have to ask "how many people will bother to read past the first insightful comment?"

Basically, how do you keep the thread of discussion without using indenting, or expanding/contracting the discussions? I can well understand that StackExchange needs to keep discussions punchy by design, because it's about keeping information succinct in order to properly answer questions, but on a site like HN that is designed for discussion I think that flat discussions would be an absolute disaster!

Slashdot actually allows for flat discussions, try using it sometime and I think you'll see that it's a nightmare.

> the audience loses context and don't know what you are talking about

In most forums, you just jump quote the post you want to talk about. Doesn't matter if you're on page 144 and the original post was on page 36. Click "Quote" and phpBB/vBulletin automatically adds a link to the other post.

And it's an unholy mess to wade through a 144-page forum topic. A lot of people just quote the whole post to add a one-liner. It's a nightmare. Any long thread is probably 90% quotes and 10% new content. Just the other day I was trying to find some information in an XDA Developers forum. I gave up after a dozen pages or so. Too much garbage thrown in between useful content.

On HN and Reddit, on the other hand, people quote one another much less frequently. For example, I only quote other comments if I want to say something specific about a particular passage. Here, we get along just fine without excessive quoting, because the context is already there. HNers understand the cost of context switching.

I wouldn't want to read a HN thread where 90% of the content was made up of quotes a.k.a. context-switching crutches.

> How do you handle that anyway?

Reddit does it by limiting both the tree depth with a "continue this discussion" link (often seen in pun-offs) and the vertical tree length / number of replies with a "load more comments" link.

This ensures that the top thread is never really more than 1.5 screenlengths. Works very well IMO.

(For completeness sake, there's one other comment hiding feature, "Comment score below threshold", but that serves a different purpose--a bit like HN's [dead] comments except you can collapse/expand them and reply to them).

> [...] I noticed a ton of "Ask HN:" topics buried on pages 6-10. That kind of implies those should be different category area on the site, rather than being mixed in with the regular "here's a link, discuss the content on that link", perhaps?

There is -- in the top bar, there's a link called "ask" [1] that shows only the "here is something I am thinking, discuss" sort of submissions.

[1] https://news.ycombinator.com/ask

> Speaking of categories: I was browsing many pages deep in HN a few hours ago and I noticed a ton of "Ask HN:" topics buried on pages 6-10.

I actually almost mentioned this myself as a form of "level", but decided that it wasn't explicit enough in the navigation; I guess it would then have been valuable to just point out "maybe it should be a level". ;P

The analogy to this specific gap in a traditional forum is the category change between "on-topic" and "chat"/"meta"/"general discussion" (with then having the topics come below those section headings, followed by the threads, etc.).

> I have almost 500 HN "rep" and I still can't find any way to downvote.

(Someone else already responded to this comment, but for completion-sake and because I'm the person who called it out in the first place: you need 500 points before you can downvote, so you aren't quite there yet ;P. Downvotes on this site are pretty powerful, actually, so they thereby seem to be reserved for people who have deeply invested in the website, of which there are enough people versus the total amount of content posted that this isn't a problem.)

> There's not even any way to collapse branches here as there is on Reddit...

I agree that this is useful; it is a highly requested feature and I believe it offers a lot of value: it is, of course, an important feature of the explicit tree... within a single collapsed linear level, all content blocks all other content, and you are just screwed if you want to skip anything, as there isn't even a visual differentiator.

(That said, some of us use user scripts to get past this problem; I wrote my own, but there are a few on the GreaseMonkey archive site whose name I'm forgetting, as well as in the Chrome extension store. If the content didn't have the trees at all, you wouldn't be able to do this no matter how hard you tried. That said, again: most online community discussion systems, even the ones that claim to be flat, have trees at least 4-5 deep.)

Well the downvoting was a question I had at one point (but now is answered). I have actually just noticed the FAQ and Guidelines links so that might answer many of the questions I've wondered about.

I am glad that they don't have collapsible branches here. It might be that here the discussion is generally on track and in general is educational and/or polite. On a site like Reddit though I do like the threaded as they (from the little I go there) seem to devolve into long threads with not much substance.

When I didn't find any extensions for Chrome that made comments' depth more visible (but did see many for collapsible) I learned how to write my own extension (not polished but functional) and am in the process of making another.

> I have almost 500 HN "rep" and I still can't find any way to downvote. Is this documented anywhere? At Stack Exchange downvotes require 125 rep to cast, and cost you 1 point of rep for each answer downvote. (Question downvotes are free, but still require 125 rep to cast..) This is all listed in the FAQ.

The min. requirement to downvote, I'm told, moves upward ever so slightly. I think I managed it just past 500, but that was several months ago (I lurk and/or comment on obscure communications articles). You're sitting at 496 as I write this so you're still a little while off.

confirmed, I now have 502 and see downvote.

Don't worry, I take downvotes seriously and don't cast them without a reason. That's why downvotes on answers cost you 1 reputation on Stack Exchange.

(here is why question downvotes are free, since I know you are wondering: http://blog.stackoverflow.com/2011/06/optimizing-for-pearls-... )

> The min. requirement to downvote, I'm told, moves upward ever so slightly.

That is what is told, but I think it goes upwards in increments. I recall clearly that I first saw the down arrows right at 500.

It'll get me further from 500, but here's a post that is being made with the intent of making the discussion less flat.
If I could add anything to HN, it would be branch collapsing.

And of course I can do that indirectly, via a bookmarklet of Greasemonkey.

Branch collapsing makes most of the navigation you describe easier.

I like the way reddit makes discussions more manageable, I often get frustrated with multiple page discussions in Hacker News that aren't relevant to the original topic, and it would be great if replies at a certain depth were collapsed automatically, just to reduce the number of pages I have to go past to find the next thread in the discussion.

I also wish there was some way to encourage concision in comments. The 824 words (according to my word processor) in the most popular comment is ridiculous to me, I'm not reading that unless it's about something very interesting to me. The article itself is only 1541 words (and I didn't read the whole of that either).

> ...it would be great if replies at a certain depth were collapsed automatically...

I agree: I love that feature. However, Reddit then has the problem that you often find a really stupid comment rebutted by the most exciting and interesting comment on the entire thread; in such a situation, the stupid comment gets downvoted and manages to auto-collapse away the juicy gold hiding below. Slashdot handled this better: they auto-collapse threads, but if an auto-collapsed thread contains a highly-ranked comment, it "bubbles out"... as in, you can still see it, even though its parent has been collapsed... I'm not certain how to best describe it, but it is amazingly useful.

> I also wish there was some way to encourage concision in comments. ... The article itself is only 1541 words (and I didn't read the whole of that either).

This community seems to encourage well-thought-out replies; I could technically have posted a "blog response", but I find it more interesting to end up in conversations in the comments of the articles where I think of things to write. (I may actually soon start a more real blog, but I've always seen that as an awkward way to do back/forths.) Personally, I find the longer comments to be the ones that are more valuable, and would rather short comments be discouraged ;P.

(Another solution to this, btw, is to just have comments get collapsed to something that then has a "Read More" that inline-expands to the full comment; this is how Facebook solves this, as otherwise it would become a problem that your Timeline or Newsfeed was dominated by a couple very long posts instead of being an overview of the material available. As someone who actually does read and value long comments, however, I have mixed feelings about this. I mean, if you didn't read the whole of the article, it becomes difficult to really comment on it effectively: it doesn't take that long.)

It definitely should be here, otherwise you have the "50 reply tangent on politics that I can't avoid reading to get to anything else" problem.

It still leaves the "I have to do a bunch of work beyond simply scrolling down to read this discussion" problem. I don't like solutions that put excessive burden on the largest audience of anonymous readers. Write once, read many, and all that.

> It still leaves the "I have to do a bunch of work beyond simply scrolling down to read this discussion" problem. I don't like solutions that put excessive burden on the largest audience of anonymous readers. Write once, read many, and all that.

I don't see how collapsing them all to a linear discussion would help this: you simply get one massive topic overtaking the entire conversation, making it impossible to even have the second discussion at all... if the content doesn't get posted because it is off-topic in the linear model, no amount of scrolling will find it.

Again, though, this is why almost no sites are actually a linear model; the closest you seem to get to a linear community currently is in the medium of real-time chat, where you still have servers divided into channels, but the channels are relatively fixed and difficult to browse.

The result is that you have communities existing within a single server/channel; as an example, there is a community which I started on an IRC server (not iPhone hacking, btw: a bunch of random friends and acquaintances that has grown and shrunk at various points over time, mostly concentrated with people form the small college that I attended) that has existed for years with a single linear thread.

Real-time chat, though, is a drastically different kind of medium: handling multiple real-time conversations is simply hard in a way that having multiple asynchronous conversations is not. I maintain, then, that this is why almost no discussion community has ever had a truly linear model: content tends to fall into 4-5 levels of hierarchy, with at least two of them being under direct user control.

Once you expand the scope of where you look for the tree in this way, you then note that StackOverflow is actually more threaded than classic discussion forums: of the five levels it has (sites, tags--which I will again explicitly point out is just another hierarchy level where the entries in lower levels might be seen in multiple places--, questions, answers, comments), four of them are under immediate user control, and the fifth is decided by a largely democratic process.

In practice, Hacker News threads sometimes get really deep (and I again agree that they can get confusing down there), but the very top-level is sufficiently shallow that you need some of that depth below to have any interesting conversations: if there were only one linear conversation per posted link, things would rapidly get really boring when only one of the politics/economics/etc. angles was able to be covered at a time (by which point the others would have missed their window).

Hacker News, does, though, actually have a form of thread limiting; I didn't go into it in detail in my earlier post, but I'll go ahead and do so now: as you get deeper into a thread, the "reply" button takes longer and longer to appear. This mechanism is actually defeat-able (which is funny, and some might argue a bug: you click "link", and on the comment's own page you can always reply immediately), but it still does help slow the rate at which a thread can get very deep.

> this is why almost no sites are actually a linear model

Pretty much every forum on the web is a flat discussion. There are a lot of forums out there. It is quite rare to find a forum that has any kind of threading at all. If you can point me to any web discussion communities that are 10+ years old which use threading, I'd love to see them.

Now, you could argue that lots of topics on a forum is a "kind" of threading, and I guess if I squint really hard I could see it, but that's a far cry from here or Reddit, where it's indentation city all the time.

> it still does help slow the rate at which a thread can get very deep.

I think that's too clever by half, but more than that, nowhere near as effective as an explicit cap on reply depth. Hacker News would be a better discussion system for everyone if the reply depth was capped at, say, 3.

(And of course if it had the ability to collapse branches, which is sorely needed. Nothing is more frustrating to me than being forced to read through 50+ replies about some dumb tangent I don't care about, to possibly get to something I do care about.)

And now that I've written the above, I realize that there might still be some awesomely insightful reply in that 50+ branch on politics -- but I'd never, ever see it because it is forever married to its place in the tree and the iron-clad parent child reply hierarchy... and cannot be sorted independently on its own merits and votes. That's sad.

> Now, you could argue that lots of topics on a forum is a "kind" of threading...

Yes, not only could I, but I have in all of my posts here so far, very explicitly. ;P A "classic web forum" has four levels: categories, forums, threads, and posts. It is critical to look at a web forum as having all of these levels if you want to compare it to a site like HN, as otherwise it is impossible to discuss how end users are able to navigate the site.

As an example, let's say that we were going to talk about your article on a normal web forum. First of all, that forum may already be divided into "on-topic" and "meta" forum categories, and there may then be multiple forums that are interested in your talk: the conversations don't conflict.

However, even within the same forum on the site (which will often then have the same general participant pool), your article will spawn multiple unrelated threads, each of which will consist of linear posts. Each of these threads will be discussing different areas of the topic, and you can ignore the threads you aren't interested in.

Hacker News can't do that: your article can only create a single top-level link, and all conversation has to exist underneath that. You get the same levels near the top (although managed in a distributed collaborative fashion by the users, as opposed to directed by the site operators), but additionally as you drill down it might get very deep.

... and, once again, I will agree with you that HN has a problem managing the discussion near the leaves of the tree. (FWIW, I actually was not allowed to reply to your post, but decided "screw that" and did it anyway: it could be nice to see something linear once you get this deep instead of just turning off "reply" altogether.)

> If you can point me to any web discussion communities that are 10+ years old which use threading, I'd love to see them.

In addition to classic web forums, which I maintain are the typical 4-5 level hierarchical tree, you will find websites like Slashdot, which is definitely a 10+ year old web discussion community, and is insanely threaded with tons of awesome mechanisms to handle that complexity (such as the feature of "bubbling up" good comments I mentioned elsewhere in this thread).

> but I'd never, ever see it because it is forever married to its place in the tree and the iron-clad parent child reply hierarchy

The solution reddit has for this--both in the commonly-used Reddit Enhancement Suite and as a feature you can buy as part of reddit Gold--is to mark new sections of the tree in an obvious way (such as with a blue box). I believe DISQUS does this as well now, and I have a similar feature in the HN script I sometimes run. In a system like USENET, you would have the option of resorting the messages in your client by date.

However, I maintain that a purely linear discussion model doesn't solve these problems: it just makes the content not exist in the first place. If you were to build even just a two-level system--links and posts; to contrast with a class web forum's four levels--which on HN would look like each article discussion being a linear chat, you could only have one of these conversations, as the interleaving would be crazy.

Slashdot isn't emulated anywhere (can you name any other site that has a discussion system like Slashdot?), and is near death from my perspective.

I view Slashdot as one of the weird Galapagos animals: interesting, to be sure, but a giant evolutionary dead-end.

> If you can point me to any web discussion communities that are 10+ years old which use threading, I'd love to see them.

There are virtually no such communities because 10+ years ago people were still having serious conversations on mailing lists and USENET. Those were threaded and had specialized clients allowing to easily find new posts, replies to own posts, filter content, etc.

The great improvement web brought wasn't flatness but post-moderation, editing and later karma/voting/sorting. You simply couldn't moderate articles after they were posted on USENET. And editing ("superseding"?) mostly caused confusion over what your readers are seeing depending on the server and software they're using.

(I largely agree with you, but will still point out that Slashdot is 10+, 15 in fact, and was/is an explicitly arbitrarily-deep threaded discussion system.)
I really like Reddit (with Reddit Enhancement Suite for UI Improvements + Reddit Gold for extra reddit features) for discussions.

It is really easy to follow conversations, and like you mentioned, chatter can vary a lot. I don't miss the old days of forums and other linear bulletin board software/mailing lists where it is impossible to follow relevant conversation...