Many comments become noise over time. At the same time, some comments add valuable information to the question or answer and should be preserved permanently.

So far, all efforts to conceive a clean-up feature that makes it easy to distinguish worthy comments from noise have failed. When seeing a comment thread that should be deleted, the current modus operandi is to flag for moderator attention. That is arguably not the ideal way to go about it in the long term. It is work intensive and moderators will often be unable to judge the value of a domain-specific comment.

So how about letting comments decay by default, with the option of making selected ones permanent? This is not my idea; it has been thrown around repeatedly, for example in this conversation between Shog and Rich B.

Here's a concrete feature request.

By default, give comments a limited lifetime, for example 45 days. A comment that hits the maximum age mark vanishes from the thread.

Moderators and 10k+ users can see these vanished comments (but not actively deleted ones) using a new link:

To the right of every comment, add a new link that shows on hover:

Clicking on that link makes the comment permanent, ie. it does not vanish when reaching the maximum lifetime. It works like all comments do currently. Other than that, it remains a perfectly normal comment. It can still be deleted by the author or by moderators, of course.

When the author of the comment clicks on that link, the comment becomes permanent immediately. For other users, "Make permanent" could be a 2k+ feature or a vote that needs two votes (not sure about that part - would have to be throught through separately)

Permanent comments could be highlighted slightly.

Like the number of total comments, the number of permanent comments per day could be limited to prevent abuse of the "make permanent" feature, especially in heated discussions.

Discussions, requests for clarification etc. would clean themselves up automatically after four to six weeks. Only the stuff that someone wants to actively preserve remains.

Cleaning up comments becomes less important. Mods have less work.

The change would create added incentive to incorporate important information into questions and answers.

Possible disadvantages:

Occasionally, important information will vanish because users don't understand the system and no other users turn up to mark it permanent. With a system that decays comments by default, there is no way to completely prevent this. I feel it would still be worth it, as comments already are second-class citizens and fair game for mod deletion.

The feature could be abused by those who think everything they say deserves to be made permanent, or simply don't understand how the system works. That is not much of a problem though: their comments will simply work like every comment does right now, and can be easily cleaned up by moderators.

As the feature is not completely easy to discover, and differs from the old behaviour, creating permanent comments would become a privilege reserved to those who know how to use the sites. That is arguably a bit unfair, but could be remedied e.g. by showing a message before the user posts their first comment under the new rule.

To avoid bloodshed, when introducing this feature, make all existing comments permanent; apply the new rule to new comments only. Show banners and warning messages to inform users about the new behaviour.

@Arjan I'm not sure - a funny comment could earn a lot of comment upvotes, but still be noise in the long term. I guess one would have to look at a sample of highly upvoted comments and decide whether most of them are worthy of being made permanent
–
PëkkaJul 22 '12 at 7:49

3

I think of comment as rubbish from the time it is posted (the content may not be rubbish, but the container is like a PET bottle). If the information is that important - it should be incorporated into the answer (in case of discussion)/question (in case of clarification).
–
nhahtdhJul 22 '12 at 8:05

2

I don't see the benefit TBH. What problem do old comments really cause? People can just ignore them if not interested. This automatic cleanup could just lead to odd comment chains where half a conversation is preserved.
–
Martin SmithJul 22 '12 at 8:20

@Martin well, arguably a huge, outdated comment thread is noise, sometimes hiding really important nuggets of information between useless chatter. But yeah, maybe there is no automatic way that can work well
–
PëkkaJul 22 '12 at 8:54

2

The feature could be abused by those who think everything they say deserves to be made permanent... I think almost all commenters would click this on every comment.
–
ThinkingStiffJul 22 '12 at 22:59

2 Answers
2

Philosophically I understand where you are coming from, and you are not wrong. We point out all the time that comments are very intentionally third class citizens in the Stack Exchange world. And the ultimate goal of most comments, not all, but most, is to encourage edits to the post they are attached to. However, the devil is in the details, as they say.

Clicking on that link makes the comment permanent, ie. it does not vanish when reaching the maximum lifetime. It works like all comments do currently. Other than that, it remains a perfectly normal comment. It can still be deleted by the author or by moderators, of course.

Er, we already have that – it's called voting on comments. Why would we want to make it more complicated by adding yet another dimension of voting, more stuff that people have to do for the system to work?

Anyway, we do most of this already, don't we? We've always suppressed the display of any more than 5 comments behind a “click to see more”, and prioritized comments with upvotes in that 5 comment list.*

I'd also note that several of your listed disadvantages I consider rather severe. Not to mention the added complexity. A more sane proposal might be something like …

Let's change the default comment behavior to hide all comments by default, except those with at least one upvote. (Note that this is already how comments on community wiki posts work, so there's plenty of precedent.)

or, throwing sanity out the window:

What if we let post owners have the right to delete comments from their post at will?

The latter may sound crazy, but it is something that the Kinja commenting system (Gawker network) allows, and we also tested allowing this ourselves when rolling out comments in 2008. At least for us, the results were... not good, and that particular feature was pulled pretty rapidly. It's tricky, but I understand the logic behind it.

* Note that on meta, we allow many more visible comments before suppression, because meta is kind of about discussion in a way that the main site is not at all.

I like the "hide all comments by default except those with upvotes" option. Although upvotes aren't always an expression of "should be preserved for the ages"... sometimes, you will upvote something because it's fun, or to say "aye", even though the comment may be outdated in a couple of minutes. But fair enough, I guess the added complexity makes this inviable. (or unviable? Not sure.)
–
PëkkaJul 22 '12 at 8:46

2

@pek - unviable is what you are looking for. inviable is "Unable to survive" while unviable is "Not capable of succeeding".
–
LixJul 22 '12 at 8:55

2

Are hidden comments still available to search engines?
–
Robert HarveyAug 2 '12 at 14:59

Once again, I think our sample of 7000 comments on Stack Overflow can help us here. I'd like to encourage everyone interested in the problem to glance through the comments and consider if there's any use in having a comment stick around after everyone who has participated in the question has moved on. In other words, do you think these comments would have value for folks who find them via Google?

One way to do this is to grab a few samples randomly. Excel probably can be made to do this, but I just generated some random numbers and indexed the comments:

$ perl -e 'print int(rand(7000)+2), "\n"'

Rewrite it in Perl.

This wasn't a random sample, but it caught my eye! While I agree 100% with the comment, it's pretty much useless for anyone actually looking for help. An answer that showed how Perl might help, would have been much better.

0x3A28213A, 0x6339392C, 0x7363682E

It's hard to say without context, but this might be useful. It kinda looks like an answer to an immediate problem that doesn't solve the general case. It's also too terse on it's own to help someone who stumbles upon it. Maybe it should have been incorporated into the post?

You need to ask a specific programming question.

This would have been a helpful comment when the question was posed, but its now obsolete one way or another. Either the question is closed, edited, or the commentor was overridden by the community. (Or the commentor was right and nobody cared enough to vote-to-close.)

I could go on, but you get the idea. Regardless of whether these comments are friendly, they are mostly uninteresting after the community has moved onto other questions.

One class of comments that does provide useful information almost without exception are comments that include a URL. Besides duplicates (which the system already handles) there are comments included just to set up a link between questions. And there are links to resources on other sites, which, if they are not spam or snarky, usually help tremendously. These types of comments need to be special cased no matter what might be done with other comments.

I should also note that Stack Overflow may be unique in the percentage of comments that have little lasting value. Other sites often have much longer gestation periods for questions. You might find a question on smaller sites that have slow trickles of activity over a week or two. There's a philosophy question someone asked in December that I'm still pondering. So a one-size-fits-all solution would be a mistake.

There's also a class of comments that register disagreements or explain downvotes. Sometimes these comments would work better as separate answers, but often they simply explain what a poster did wrong. It often would be better if the commentor could explain in more detail than a comment allows. Ideally, they would provide an alternate answer, but for whatever reason, they don't. Obviously these comments can get heated, but we don't want to lose them. Unfortunately, there seems little way for these to be automatically detected.

Proposal

For Stack Overflow and any other high volume site that is having problems with snarky comments, I suggest the following system:

For the first X days, comments are displayed as they are now. X should be set based on the number of days an open question is likely to be active on the site.

After X days, all comments are hidden; you need to click a link at the bottom of the page to reveal comments. There are three exceptions:

Comments that contain URLs are displayed.

All comments on closed questions are displayed, unless the question was closed as a duplicate.

All comments on posts with a negative score are displayed.

Justification

Let's take the exceptions one by one:

A commentor can chose to make their comment permanent by simply including a link. Obviously, that can be an "advantage" when a comment war breaks out: include a link and you will be able to "defeat" your opponent in the long-run. But two can play that game and (hopefully) people are more vigilant about junky links than junky comments. If someone links to some random page that doesn't support their opinion, the comment (again hopefully) will be flagged and removed.

As an aside, I don't know of a good way to review new comments on old questions. I mean, the person whose post is commented on might see the comment and flag it, but they might not. If I wanted to turn SO into my own personal link farm, I could get enough reputation to post comments and only spam posts by inactive users. Does this happen? (Of course, the cost is high if caught, so it's probably not a good gamble.)

This would also be a mechanism to provide useful feedback. Under this system, I hope it would be common to see comments like:

I disagree for [these reasons](http://link-to-reasons).

When a question is closed, it's useful to know why. We get a lot of heat in comments on closed questions, but it's important that the meta-discussion be exposed so people understand why questions are poor fits for the site. In a sense, closed questions are still active, but in an uncertain state. They might be edited and reopened or they might be deleted. Comments can help future readers to make that call. Hopefully (I'm using that word a lot it seems), rudeness will be flagged and deleted.

Most of the arguments I made about closed questions apply to negative score answers. One consequence of this exception might be to encourage more downvotes. I don't consider this a bad thing.

Conclusion

At least on Stack Overflow, most comments have a very short half-life and should be decayed away. For someone really interested in a post, it would be helpful to have old comments available. But for the majority of readers finding a question via a search engine, old comments are basically noise. Let's hide our noise behind a link.

You're solving the wrong problem; this isn't about "snarky comments." It's about comments that are no longer worthwhile. A comment asking for information which the user provides, for example. The comment used to be useful, but now it's noise. URLs are no guarantee that a comment is still useful; I'll often link to sscce.org so that someone can understand what I'm talking about. Such a comment becomes useless once someone has provided such an example.
–
Nicol BolasAug 2 '12 at 19:29

@Nicol Bolas: I think you might be misunderstanding me. The collection of comments that came up because of the research into snarky comments shocked me because of how pointless many of them are. If we hide nearly all comments, I think we will also be hiding nearly all the snark too. But as you mention, the real problem that would be solved is the noise, noise, Noise, NOISE! Since sscce.org seems to be down at the moment, it might pop up in a link rot review. ;-) But good point about meta-links, so to speak.
–
Jon Ericson♦Aug 2 '12 at 19:40

3

This is a very interesting analysis! Maybe you should move it into a feature request of its own (seeing as it proposes something different than my feature request)
–
PëkkaAug 2 '12 at 19:42

1

@Pekka: Done. I guess it does make some sense to have a separate proposal so that we can compare downvotes. ;-)
–
Jon Ericson♦Aug 2 '12 at 20:06