At a minimum, that would be an input to the presentation ranking -- old, flagged items would drift to the bottom.
Long-tail "Floatsam and jetsam" content is a huge problem, generally, not just for software development information.
At a minimum, that would be an input to the presentation ranking -- old, flagged items would drift to the bottom.
Long-tail "Floatsam and jetsam" content is a huge problem, generally, not just for software development information.
Might be relevant to mention that I'm quite active on the security stackexchange and regularly review the suggested edits queue (we don't have a constant backlog like stackoverflow does). Feel free to point out if you think this is not a nail for my hammer.
I tend to think the real problem is the overly strict conception of duplicate. Over time, the way people will ask a question and the way people will answer it changes.
5-10 years ago almost every JS question was a jQuery question too, now not so much. As someone who lived through that I can very easily translate to the less jQuery-centric present, but someone who started learning JS/React last week can't. A new rendition of such a question/answer would be a duplicate for me, but the old one would be obsolete to the new developer.
I think the best way forward is that both duplicate and obsolete should be soft signals rather than reasons for closing.
I see where you're coming from, but having identical questions exist alongside each other just because their dates are different does not help those who follow a link to the older question. A new mechanism to indicate different versions would have to be added for this not to be confusing, if this is the solution we want to go with.
When you search how to solve the hypothetical JavaScript problem I mentioned, the classic highly upvoted jQuery version of the question is up top, but if you can't see how that addresses your issue you can keep digging (or keep asking) for a version that makes sense to you.
Spammy, low effort, almost character for character duplicates can still be removed. I certainly acknowledge that the line is not always easy to define, but I think giving the reader what they probably want fast and then letting them sort through the long tail if needed is the approach better suited to programmer Q&A where the ability/background range is huge and database searching skills are above average.
It's true, people are so damn trigger-happy marking questions as duplicates.
I've seen new, well-posed questions on up-to-date frameworks get marked as dupe because 10 years ago someone asked a related question on an obsolete tech. The reason it was marked as dupe was simply because someone took it upon themselves to write up a sprawling smug "canonical" answer to a shitty old question that happened to cover the new subject matter.
It's much better to keep the old questions and answers, to just answer each question (and no more), and to create new questions as needed. Why not? it's not like they're running out of disk space.
I think the solution here is to encourage specific answers to specific questions, let folks sort out the historical minutiae based on timestamps and subject. Anything more elaborate is asking for mix-ups and confusion.
This seems an optimistic view. What feels an awful lot of the time it just has some of the same outside appearances, and is a different question completely, but the people marking it as dupe don’t read it carefully enough, or don’t know enough about the subject to realise the differences.
Still, it is my quixotic StackOverflow crusade and there remains more to do.
“Obsolete” isn’t a flag, it’s a version number, or even a range. This solution doesn’t work with 3.0. This one is deprecated in 3.5.
But since semver is neither universal nor infallible, you’d have to actually model languages and libraries, with a curated list of version numbers. Which is awkward when you built your entire categorization system on tagging with strings instead of modeling problem domains.
Obsolete can mean a lot of different things, and there are degrees of obsolete. And people still use older versions of technology, so in some cases you might want to look for older solutions anyway. So it would likely have to be more like a version flag.
Now you need to get some people to curate that information and properly apply the version/obsolete tags. That's probably easy for some of the more often searched for posts, but very difficult for the long tail of answers. You need to educate the community on how this new feature works, and when to apply this flag. You need to decide on who can set the flag, whether you need multiple votes and how to handle disputes when people disagree or set it wrong.
If you decided that a version flag is needed, and not just an obsolete flag, you need a UI and people that manage the available versions for each programming language/framework/library.
You need to decide how to handle the same question in multiple versions. One question with multiple answers and each answer tagged with a version? A question per version? Do you actually want to enforce one variant, or allow both to exist? Questions can also be obsolete, and that is often in a more complicated way compared to answers. Should that be handled with this kind of flag as well?
This is not a trivial change, but something along these lines is probably necessary.
How do I solve problem X using version Y of Z.
In some cases people encounter older versions of technology questions and make a new answer saying updating for version X of the technology - I know this happens because I did it myself for a Gulp question and got a good number of upvotes - even though I could never actually get the accepted answer of course.
I think requiring a comment or a link to a more up-to-date answer would be nice, to avoid answers being marked as obsolete without any recourse.
The way I (not the person you replied to) imagine this is that the post goes to the bottom and gets a red background color or is faded out, similar to how deleted answers are shown in red (if you have enough reputation; in this case everyone should be able to see these) and downvoted posts are faded out.
Edit: this is the background deleted posts currently get, for those who aren't active on the SE community: https://i.stack.imgur.com/EDAIF.png
> and gets a red background color or is faded out
And most of the time, a newer answer is available (at least in my experience) so for those the downranking would also help.
1. Add an age-weighted score (and maybe sort by it) to make it easier to distinguish between an obsolete answer with hundreds of old upvotes and a recent answer with 10 recent upvotes.
2. Similar to above, but add an extra vote lever and visible score (perhaps conditionally, to older questions that stop getting upvoted?) for marking that an answer didn't work for you, or that you suspect it is obsolete, without having to downvote an answer that was given in good faith and worked for some time (and may still work for older versions/environments).
3. Add an option to open a superseding question (perhaps conditionally based on changes in absolute or age-weighted scores; perhaps it must be "community" owned but gets to inherit question upvotes) that has a special relationship with the original question and triggers extra UI on each side (to cross-link the questions, encourage users to directly mark which answers from the original work, and to provide feedback that affects when/whether the superseding question is treated as the canonical version).
Neither of these things are true. In fact, to a user with zero reputation, StackOverflow is much more locked down than Wikipedia.
But the real issue with obsolete questions, is that a new question will be marked as a duplicate of an old obsolete question and closed before anyone has a chance to answer it.
So the real value of an obsolete tag would be that a new question couldn't be marked as a duplicate of an obsolete one.