303

As the network ages and we have answers that are 7+ years old, we run into situations where changes in technology, etc. result in a once great answer becoming out-of-date, obsolete, or somewhat problematic. We don’t want to lose or delete these answers, due to legacy applications that still need the code but we need to figure out the right way to handle them.

This has been brought up and discussed many, many, many times over the years, and the community seems to suggest the following steps to update these answers:

  • Comment to the OP suggesting that their answer is out-of date and needs to be updated
  • Post a new answer with the updated information
  • Edit or suggest an edit (if you don’t have privileges) to correct the answer

There are pros and cons to each one of these, and I’m going to outline a few of them here:

Adding a Comment:

What if the user is no longer active on the site? They won’t get the notification to update and then it’s up to someone else to potentially edit the answer.

What if the user gets notification and disagrees that the answer is wrong, so they don’t edit it. Now we have a conflict between the original author and another user on the validity of an answer, how do we proceed?

Posting a New Answer:

This is a great solution to the above problem when the original author doesn’t want to edit their obsolete answer, but we run into the “sorting problem” where the highly-upvoted, accepted answer appears above an up-to-date answer. The hope is that eventually this new answer will gain enough upvotes to move up the list and will be easily visible to people with the same question.

Editing or Suggesting an Edit

This is where we have the biggest issue when it comes to improving out-of-date or obsolete answers. Editing posts is encouraged on all sites and it’s even a privilege that is earned. The help center explicitly states

When should I edit posts?

.... to correct minor mistakes or add addendums / updates as the post ages

Users are advised to make these edits, yet this seems to be a stumbling block.

Why, you ask, do I see it as a stumbling block?

Several reasons...

First, when a user doesn’t have full edit privileges it goes to the review queue where these edits can be rejected. If the edit is substantial enough, there is even a rejection reason provided:

This edit deviates from the original intent of the post. Even edits that must make drastic changes should strive to preserve the goals of the post's owner.

With the rejection we lose the proposed fix and are back at the start, with an answer that needs a bit of tending to.

If a user has full edit privileges, they can make a sizable edit without review to bring it up-to-date but if there are code changes users are told not to touch the code.

As you see, we have a disconnect. Users are told to edit and we have posts that need to be edited. But no one wants or is able to edit them, because they might alter code which is a big no-no when the answer is not a community-wiki.

What do we do? What can we do to fix this?

We’re taking a good hard look at how we should handle answers that were once great but need some gardening to keep them that way. Lots of things have been suggested over the years, but so far nothing has been implemented:

Before we do anything we want some feedback and a discussion from the community on how we can encourage these edits to these answers (we disagree internally as well).

Would you be more likely to edit them into something no longer obsolete, if they were made community wikis? Should we add a post notice that it’s obsolete or out-of-date? Figure out some way to give rep to the user who makes a substantial edit? Something else that we haven’t thought of?

40
  • 50
    Not sticking the accepted answer to the question would be a start. Then if and when a new answer gets more upvotes it will rise above the old answer.
    – ChrisF Mod
    Jul 31, 2015 at 21:05
  • 17
    What about having something similar to "duplicate" but "obsolete" that redirects to a new question with a proper solution to the problem? This way the former question remains valid as it was and the new one is the new, good way to do things. Jul 31, 2015 at 21:29
  • 4
    @fedorqui These might not be separate questions though. It might be a newer answer to the same question.
    – Taryn
    Jul 31, 2015 at 21:36
  • 84
    One major issue is people religiously close as duplicate any new question, but then visitors get angry when the 7 year old question has obsolete answers.
    – nhinkle
    Jul 31, 2015 at 21:45
  • 52
    Another big problem with editing the answer is that the original answer is good for legacy systems.
    – msh210
    Jul 31, 2015 at 22:05
  • 18
    We run into this on RPG.se often enough, with games that have changing/updated/errata'd rules. We do two things: 1) ask active users to update their answers, 2) edit old questions to rescope them to exclude whatever new thing made them/their answers obsolete to make room for new non-duplicate questions. (1) is unreliable as noted here but works sometimes, and (2) doesn't always apply; but together it catches a large fraction of the problem. That said, it's not really satisfactory either. Jul 31, 2015 at 22:12
  • 45
    I'm having trouble seeing how the "obsolete" posts will be objectively identified. There are new questions posted every day about obsolete technologies on Stack Overflow. Should every Windows related answer that doesn't apply to Windows 10 be considered obsolete now?
    – Ross Ridge
    Jul 31, 2015 at 23:00
  • 6
    And 80% of c++ questions (hello, Turbo C++ from 1990 in Indian locale mode) Jul 31, 2015 at 23:13
  • 9
    I agree with msh210 & Ross Ridge - "Legacy" systems exist and many are actually production systems - Knowing the fix for a 7 year old problem is valuable information. Perhaps a solution to is to introduce a "Search by Question Date" option, so users can find answers to things they know are new problems. I use the google version of that feature all the time to find current information. People that wish to can still update their answers to reflect current information, in response to down votes (I've done that).
    – Seth
    Jul 31, 2015 at 23:48
  • 7
    As @Earthliŋ said, you might be trying to treat a symptom instead of curing the disease. Stack Overflow is in decline, and broken windows are just a manifestation of that. Aug 1, 2015 at 6:00
  • 4
    Do we also need to change the culture that emphasizes rejecting changes that "clearly conflict with the author's intent" or "putting words in the OP's mouth/text" or "correcting/adding code to existing answers rather than posting a new answer"? The technical changes are ease compared to culture changes.
    – user213963
    Aug 1, 2015 at 13:14
  • 14
    On the one hand We don’t want to lose or delete these answers, due to legacy applications that still need the code but we need to figure out the right way to handle them and on the other hand you are asking to edit those answers? That's a contradiction to itself. As soon as the answer is edited, the old original answer is lost as it would be when it is deleted.
    – baao
    Aug 1, 2015 at 14:46
  • 8
    I see this mentioned in other comments, but I don't see how we can call a question or answers obsolete. Maybe we need to do a better job of identifying specific versions and technologies in questions - take a C++ or Java question. One asked 7 years ago about C++03 and Java SE 6 would have different answers today, if you were using C++11 and Java 8 since new capabilities have been introduced. But that doesn't mean that the answer isn't valid anymore and shouldn't be weighted less since it's still incredibly useful to someone using those technologies. Aug 1, 2015 at 16:55
  • 18
    From my own history, I have an answer to a question that specifically referenced a particular version of Eclipse and asked how to do something that was not possible. It's gotten comments pointing out that it was "wrong" and even downvotes. However, to anyone still using Eclipse 3.4.2, this is the correct answer. I ended up adding commentary to my answer (which appeared to stem the down votes), but I shouldn't have to do that. Questions may be tied to things that change over time. That's OK Aug 1, 2015 at 16:58
  • 29
    PLEASE save obsolete answers, and link them. And encourage version numbers in questions. This is very useful, especially in technology, when there are different solutions for different API levels. In Mechanics, there is a similar value, etc. And, tackling a physiques problem from Quantum or Classical physics could be very helpful as well. Aug 3, 2015 at 16:42

38 Answers 38

1
2
1
  1. (to start with) Only worry about questions with >= 3 views per day, older than 1 year, and has accepted answer.
  2. Let anyone with >= 5000 rep cast an obsolete vote on the question which will mean that all the answers are obsolete now. Be clear that this vote is not for "not enough good answers on this question, or this question could use a better answer". That it's only for questions where the accepted answer is obsolete and there are no other answers that provide the new correct way of solving the issue.
  3. Create an obsolete answer review queue. You need at least a bronze badge in the most popular tag of the question to be able to review it. Action choices in the queue:

    • not obsolete
    • answer
    • skip

    Keep the review active in the queue until 2 people provide an answer, gets enough not obsolete votes (3-5?), or until 30 days (or so) has passed. Make a post history entry on the question with the review link, so easy to search SEDE for questions that were voted as obsolete but didn't get any new answers for that 30 days. So a second chance for people to find and answer even after it exits the queue.

Why no edit option? Because reputation is the fuel that drives good content. You don't get reputation for editing (except for measly +2 for suggested edits, but anyone with a bronze badge likely has over 2k anyway). I really don't think encouraging edits is the way to go since I think it will definitely be not as successful as encouraging new up-to-date answers where users can post under their name as their answer and reap the benefits.

But why not allow people who know the new correct way to answer in the review? Because this is a privilege queue where you need at least 1 bronze badge to be able to enter. After the review is completed provide a way for people to search through SEDE and regular search to find questions that made it to the obsolete queue and weren't completed as "not obsolete".

In conclusion, I really don't think encouraging edits in this manner is the way to go. Since really, reviewers of the suggested edits queue have long been advised to be wary of approving edits that change/add/remove code. I'd rather a new answer be placed than all the content-specific edits going on and the haywire it has the possibility of causing. Also, reputation incentive is needed to keep the ship sailing. Not sure about a similar review badge for this queue, I think if there is a badge for this queue it should be different, but any badge(s) can be sorted out later.

1
  • 1
    I understand the bronze badge restriction - to prevent those that aren't as knowledgeable in the technology from saying an answer is (or isn't obsolete) when the opposite is true. However, I think it also makes it harder to get an updated answer. A user without a bronze badge can provide an updated answer.
    – Andy
    Aug 26, 2015 at 23:37
1

Add Template by Edit

A Markdown-like (or any simple syntax like HTML, LaTeX, etc.) code template that any editor can add to an answer, or question.

  • In its empty form it adds a standard message, and could change the appearance of the post, like a different background color, or border.
  • Or it can contain a custom explanation of why the template was added.
  • It should add a tag that doesn't count against the tag count for the post.
  • I think a good review queue for users to have shows posts they were involved in, and asking if the template should be added to them. Maybe reward them with something like a badge for doing this every once in a while.
  • This review adds the template, but probably should fill the parameters in an automated way as well rather than having the user use Markdown. It'd be nice to let this area use the supported formatters.
  • A way for questions to be nominated for this type of review could be helpful for reviewing users who don't want to do this.

Usage

I use a couple of symbols, but this are all just examples, and I haven't really thought it through. Indicate answer was true

Until date: [≼][precedes or equal-to]201312

This answer was valid until December 2013.
[blank row]
Everything following the main keyword is optional
≼[YYYY[MM][DD]]
≼[YYYY[MM]]

Add a message and bounty: ≼2014 "There were breaking changes in NewJIT." $50

This answer was true until 2014.
There were breaking changes in NewJIT.
A bounty of 50 has been offered for an update.
Marking answer as questionable sends it to a review queue:
≟

Edit the question to put template in the question and answer: 
≟(https://meta.stackexchange.com/a/380974/163536)
≟(380974)"Customized message."

Adding a bounty skips the queue:
≟$50
≟20220804 "There's a [CVE](https://example.com/cve/20220803/ohno.js) about this package and it's no longer maintained." $50

≼YYYYMMDD(https://meta.stackexchange.com/a/380974/163536)"There's a [CVE](https://example.com/cve/20220803/ohno.js) about this package and it's no longer maintained."$25
1
  • Can you add an example of such a template? (But without "Edit:", "Update:", or similar - the answer should appear as if it was written right now.) Aug 4, 2022 at 10:33
0

Has anything like this been considered?

I think making the update its own question page circumvents all the problems aforementioned.

I think you could have some mechanism where you have an obsolete button. You'd need some high rep and badge to use said button.

When this is clicked, a new question is created, except that the new question and old question have links at the top to one another.

The new page could have a special area for commenting on why this is an obsolete question update.

Then, discussion of the non-obsolete question can continue unabated on its own, indepedent page.

And, at the top of each page (or somewhere appropriate)... "This question and answer may be out of date, click here to see updated question." "This question was created to be an updated question of the popular question found here."

A potential problem is that you could have multiple "not-obsolete" question variants. Perhaps starting with allowing 1 obsolete update per question would be good.

1
  • 1
    What does "making the update its own question page" mean? Apologies; I'm not following you.
    – D.W.
    Aug 3, 2015 at 19:37
0

I would do it this way:

  1. All answers which are old, say a few years, will automatically be presented with a message warning that the answer is few years old.
  2. People would be able to suppress the warning if they think the answer is still valid and not outdated.
  3. If enough people votes that the answer is not outdated, the warning will be again hidden for a year.
  4. The warning might appear again next year and people can either suppress it again by voting or leave it there ....

Hope you can understand my idea.

0

Currently if I go to (I believe) just about any answer on stackoverflow (tested only a few random ones) I have the option of "close" and if I press it I'm presented with a 50 vote limit and the options... (writing them here for people who cant see them)

  • duplicate of
  • off-topic
  • unclear what you're asking
  • too broad
  • primarily opinion based

Unless I'm mistaken it takes something like 5 votes to close; regardless of reason.

I have no particular opinion on all but the "duplicate" option; in fact they seem to be working fine; this may just be bias as I've only experienced "bad behavior" with mainly the duplicate of option.

So what's wrong with duplicate option?

  1. what qualifies someone to say it's a duplicate? technically you should be an expert in the field and be able to understand the context, but there's no such requirement when the moderation option is presented... you just have to feel like you're right about it; as the site grows the higher the chance of 5 people "feeling" like they are in the right to mark it as duplicate because it looks like a duplicate

  2. why is it wrong to have duplicates? a lot of the time the same question is asked from different angles; having "some" duplicate questions/answers to account for this isn't that bad. They should probably be limited once a certain type of question reaches a certain number of "duplicate questions" but it's not necessary to limit the question to one context (or "one persons unique problem"). I find this problem to be the most common, and the most annoying. A lot of the time the questioner will also ask a different problem then he does though the title, get the solution to his problem, but not the solution to the title question. Subsequent more proper questions are marked as duplicate of the improper question that doesn't really answer the general question (even though it my solve the question askers problem). One very specific type of this type of question is the "Hey how do you do X" that's answered with "Don't bother with X just do Y" ...sure the person asking got his answer, but everyone who really really NEEDS to know "how to do X" is now faced with the "your question is duplicate of" problem. This is extremely problematic since searches and search engines will generally weigh titles higher then content.

  3. you can't crowd source "understanding of context" so while 5 judge rule works for "off-topic" it's inappropriate for context sensitive issues. Since context changes with time (in particular with technology) the problem becomes worse as time passes. Implementations would have to take into account at least time (so marking a question as duplicate of one posted just last week may be fair; not so much marking one as duplicate of one 3 years ago). But then how much time is enough? With how some technologies like kubernetes move even 1 year might be too much.

How to fix it

Option A: Fix by dropping current methodology entirely

Make mark as duplicate is purely declarative and not tied to a question being protected and/or closed

Marking as duplicate doesn't close question; it does aggregate them togheter though and make it easy for someone to navigate though them as a "thread" of question on very narrow topic. This should help a lot with version dependent answers and legacy vs modern systems inconsistencies in answers.

Duplicates are handled by the search system, views and may influence the user's ability to answer; but people should have the option to forcefully answer a question if they feel the question deserves answering. 5 random people should not be able to block this.

Option B: Fix by enhancing current system

Add the ability to mark questions as "verified" and "canonical" (should be done only by experts in the field). Verification expires after X years.

Questions can be marked as duplicate by 5 people so long as the target of duplication is a verified question. Otherwise, it needs to somehow determine that the people trying to mark it actually know what they're talking about (eg. number of accepted questions relative to question tags)

1
  • 2
    The degree of expertise needed to verify that different questions are duplicates varies wildly, with some being obvious to just about anyone and some being very subtle indeed; at present, SE manages this by limiting actual closure to experienced users and allowing reopening and discussing the merits of dupes in comments. A question that has no one with enough expertise to explain why it is not a dupe is not going to be handled any more reliably in a system that requires a similar level of expertise for all dupes. Aug 4, 2015 at 18:45
0

I like simple solutions. Time is king.

All that is needed is to reduce (wear out) the votes.

If an old answer does not get new votes, it will wear out, become obsolete without any human intervention. If such answer keeps getting new votes, it remains actual. Better answers, as perceived by users (for which they vote), will raise quicker.

For the sake of this argument let's say that each year a vote gets reduced by 1/2, then, in 4 years time it will have 1/16 of the old votes. It either gets updated to meet new challenges or fades out.

The time factor may change for each site of the stackexchange, some sites, probably math (sorry if I am wrong) sites may have a longer time period. But sites that deal with fast changing technology could use shorter times.

With this, people will make obsolescence automatic, by not voting for an answer.

Or, if a compromise is needed, add an additional (to the ones existing) sort order by this measure. If people like this new order (by using it), make this new sort order the default.

I am not calling for a wear out of users reputation, that is a very different issue. User's reputation will not change from what it is now, nor how it is obtained.

What have I missed?, thanks.

3
  • Yes, but what if a really-good-and-still-relevant answer just isn't viewed for a long while? It'll be incorrectly marked obsolete.
    – MTL
    Aug 6, 2015 at 1:15
  • @Shokhet I do not have an answer to all possible cases, but if some answer is rarely seen, it will be rarely voted anyway, not much to wear out, I think :)
    – user300807
    Aug 6, 2015 at 1:18
  • Could be. In my (admittedly, little) experience, many posts get a whole bunch of votes right when they're posted, and fewer and fewer as activity around that page slows down and it's off the front page.
    – MTL
    Aug 6, 2015 at 1:20
-8

Stop chasing your userbase away would be a good start.

The current climate here seems to select for semi-noobs, nitpickers and people who have time to game of the system.

A good start would probably be to make destruction of information expensive: Remove a good number of points[0] from anyone suggesting the deletion of userful[1] information. Adjust the cost as necessary.

[0]:Maybe proportional to the number of upvotes a piece of question, comment or answer has gotten so spam can be removed without ruining anyone.

[1]:As seen by looking at the upvotes a piece of information has gotten.

7
  • 4
    I'm not entirely sure what your point is, specifically; simply avoiding deletionism will not directly encourage updating old answers, and will instead if anything simply widen the pool of old questions and answers that need to be updated (or, as the case may be, thrown out, but that's apparently not an option). SE in general does not have such a horrible problem with losing users that that is the actual bottleneck for any proposals here: it's not that there aren't enough users to edit, it's that users are strongly discouraged to edit and have almost no incentives to do so. Aug 3, 2015 at 17:01
  • @NathanTuggy - my impression from SEDE data is different - Stack Exchange is losing (and not replenishing) users who post answers and do moderation tasks. Aug 4, 2015 at 10:35
  • @DeerHunter, I'd be interested in some of the specific points you are referring to. I've gotten the impression that this is very dependent on which tags/subcommunities you are involved in.
    – Andy
    Aug 4, 2015 at 13:37
  • 1
    @Andy - you can have a look at the tag stats for yourself by running a SEDE query Aug 4, 2015 at 13:45
  • 2
    @DeerHunter, How many people do you think are needed though? All of the tags you posted in your MSO answer are higher than the thresholds you mention in your answer to this question. These are the experts that perform the moderation tasks. Additionally, your graphs show a slight uptick on most of the tags this year; this doesn't mean it'll last though.
    – Andy
    Aug 4, 2015 at 14:22
  • @Andy - I haven't worked out the exact ratios yet. Willingness to curate old stuff is maybe a 1 in 20 trait (a WAG if anything). Let's assume we need 20 curators for the law of large numbers to kick in and to share the workload - the minimum viable community size comes at 400 active answerers, it seems. Aug 4, 2015 at 14:29
  • @DeerHunter: I saw your data, remember? But in any case, whether SO is or is not losing users slowly, I do not think that can reasonably be considered the main, much less the only, reason old answers are hard to maintain. Aug 4, 2015 at 15:41
-9

No way, and you know it already.

To make Stack Overflow not a trash-site but something useful, you have to completely change paradigm, from ochlocracy to something like technocracy.

Of course, nobody would do it ever. So, you are doomed to eat that old trash forever. Enjoy.

1
  • 3
    Someone's bitter...
    – user206222
    Aug 4, 2015 at 18:14
1
2

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .