Outdated Answers: accepted answer is now unpinned on Stack Overflow
meta.stackoverflow.com
meta.stackoverflow.com
I accepted one of the answers in 2010, but then over the years after gaining more experience in Redis myself (painfully might I add) I later realized that a more recent answer actually is a better solution.
So I went in recently and changed the accepted answer to the more recent and better one.
I felt weird about doing this given that rep points are involved, but between having someone lose rep points vs a larger group of people potentially going down a sub-optimal path, I chose the former. Anyone else feel weird about this?
Asking, as not totally up to date on Stack Overflow's points awarding algo.
I haven't used the site in almost a decade, but I posted a few extremely valuable answers back around 2010 about stuff like how to redirect a request or round a number in SQL (/s), and over the decade these stupid answers have netted me thousands of points, keeping me in the top few % of site users. As the quality has fallen off and the main focus has shifted from programming to meta-pedantry I've completely stopped using the site aside from what links Google takes me to.
The points however, are extremely valuable still. Whenever I have a tricky problem, I can post a question with a large bounty and dozens of strangers from around the world will spend countless hours of their time doing research and writing up multi-page solutions completely for free. Of course half the time the act of writing out the question makes the answer obvious, but still.
Having said that, I still think the quality of answers was better 10 years ago than it is today even with a bounty.
Sorry. I feel better now.
Should rep points decay over time? Or accrue for the duration an answer is still relevant (for low level questions especially, the best answer might stay so forever if dealing with a specific CPU architecture for instance).
> There was a 43.6% decrease in users copying from the accepted answer when the highest-scored answer was shown first.
Good. As much as I hate that people copy and paste without reading through code and understanding it, if they're going to it, I'd rather them not copy potentially insecure stuff.
For those who don't fully understand - the "accepted" answer (the one that helped the poster of the question, the OP) used to be shown even before an answer that was upvoted more than it - even in cases where the spread is hundreds or even thousands of rep.
The problem with this is that a single person (the OP) got to dictate which answer on a potentially frequently viewed question got the most attention, and by proxy, which code got copy/pasted the most.
This, despite another answer probably having better, more secure, more thoughtful, or more performant code as reflected by the hundreds of people that upvoted it.
There's a defacto curation of SO answers now based on oldest answer on top, which is almost backwards. Which is a flaw of voting systems.
Reddit has an analogous problem where the first person to make an widely accessible quip gets voted straight to the top, with generally a trainwreck of low effort chuckles and puns hanging off of that. If you want lots of reddit comment karma you can easily just read some popular subreddit by 'new' and make those kinds of low effort / accessible comments.
It would mess with the way they do points, but so what? The goal is to be the best resource for developers; the point system should just be a tool for doing that.
They would not have to actually delete old questions, just kill their search rank so newer questions take precedence. Can be done by assigning a new URL and noindexing the redirect from the old one.
Had they instead built themselves as a symptom and treatment website, much of the problems that they have had would have gone away.
The original asker should not have nearly as much power as they do. Duplicates would instead be other symptoms. If you had a cough 5 years ago, come March of last year the cure would have changed for the same symptoms. But since SO is a question site, they would not have responded to such.
There are two conflicting purposes going on here: the need for archival, and the need for discussion. Over the course of 10 years, its clear that some information should be archived, while other material should be rediscussed and reupped.
I'll plug my "idea" again (just an idea guy, lol). Which is that question/answer sites need to have an "epoch period" of sorts. Back in the 90s, I used to play a browser-based MMO game called Utopia (and its sister game: Earth 2025). Every 6 months, the scoreboard would be archived and the game reset.
The idea is: players come and go. You need a time for players to "leave" (ex: retire for a season, or permanently). But you also want to keep connected players together (ex: a kingdom of 20 players may have become friends, so you want to keep those social connections).
Resetting the game from scratch every few months meant that all players were nominally on equal grounds. It also allowed the game to change its rules and rebalance from update to update (maybe some strategies were too strong, or too weak).
Q&A sites would benefit from this. If a question is renewed in a later epoch / season, maybe its truly different than the historical answer from 5 years ago.
------
StackOverflow also treated its upvotes/downvotes like a game. I am convinced that this causes long-term issues in the community. Resetting these points back from scratch (with maybe historical notes on former points) would go a long way towards determining who is or isn't active and at which times. (Ex: someone may have been highly active from 2014 to 2016, and the archives would indicate it. But that doesn't necessarily mean that they're well-versed in 2020-2021 "season" rules or culture)
https://www.poetryfoundation.org/poems/43290/the-second-comi...
I always check answers for such cautionary comments. And if they point to another answer, I upvote it and downvote the original. So I'm not sure "never" is accurate such that SO should be considered "dead".
Huh, I probably should have realized it, but the idea that Stack Overflow was tracking whether I copy an answer had never occurred to me.
(Mostly joking, I hope: I guess they could monitize that info for Stack Overflow Jobs, by certifying that a candidate has a low rate of copying answers!)
Letting Javascript initiate connections was a huge mistake.
https://twitter.com/ptkaster/status/1377427814052335618?lang...
But it made me realize the code to track copy is there.
That and dumb/irrelevant/misguided comments have been my biggest annoyances as a passive user of SO.
Does it matter to me that - at the time they saw it - the OP liked this solution? There has always been a lot of grey area there. I guess it’s nice to award some points to whoever OP liked, but now I’m wondering if they need to show it at all.
EDIT: Changed my mind and agree with lower comments. I still think there is ofcourse a subjectivity to "what answer this guy liked at this time", but everyone had good points.
I think that's highly dependent on the type of question being asked. For questions where a person had a specific problem, accepting the answer was a way to indicate "yes, this fixed my problem" - and by definition, only the OP can decide that.
Now that doesn't quite fit for "best practice" questions where the answers might evolve over time (hence the change being discussed here), but the "accept" mechanism doesn't discriminate.
Thankfully there are lots of other good resources, most notably MDN.
The only solution I see is to give web questions a lifetime of something like two years.
I usually find it quite easy to evaluate which of the two is the better answer then.
Why are you assuming I don't do that?
Rather than spending my time doing that, why not go to an authoritative, updated source like MDN to begin with?
Ask any experienced programmer how often they use StackOverflow, and they'll tell you daily. It's an invaluable resource to our community and we often wonder how we got along without it before.
In particular, it's great for highly specific questions about very niche things. Like, with this version of this library and in this stack, this very odd behavior is happening and I only see it in IE8, what could it be? That's not something you'll find and answer for on MDN. MDN is a fantastic reference resource when you know what you're looking for and need the details, but it's not a Q&A platform about anything.
SO is not perfect, sometimes you have to dig for the right information (something this change is trying to improve), and perhaps it's not ideal for beginners, but I wouldn't want to live in a world without something like StackOverflow, and would be significantly less productive
I hope the users will still at least be curious about the accepted answer in such cases, popularity doesn't always mean it is better. But overall, I think this change is better.
That's great for the person who asked the question, because presumably doing $X that they actually care about.
But I'm not there because I'm doing $X. I'm doing something totally different that does actually need $Y.
I've had times where I've found a dozen different SO questions asking about how to do $Y and ever damned answer to every damned one of them was a "you don't need $Y for what you are doing...do this instead" answer.
This copy paste metric may be valid on stackoverflow itself but other stackexchange sites are different. Many have nothing to do with code.
I remember one question about std::bitset using 8 bytes when it could use 1 byte, and answerers basically laughed at being concerned over 7 bytes, like they'd never considered that you might quite reasonably be using millions of them.
I guess it provides closure that a question is "done" so it's still useful.
Maybe they need a different method to accept answers, also based on votes?
If you take away accepted answers, then the 10 rep reward (might be more now) goes away, which means incentive to answer potentially low-popularity question (note, not low-quality, just those that will not be seen often) will diminish and thus it'll lead to people writing highly senationalized/clickbait-ey questions, even further ruining the content quality of the site (something SO has been struggling with the last several years).
If anything they have to be at least a portion of people who were up vote the excepted answer over better answers, just because it has the checkmark. Just like if a comment section shows up or downvotes somehow, they can be intended to influence groupthink.
EDIT: Answered with two good comments below this, no need for me to address them separately.
People might then post more answers that are not needed, possibly only varying in a minor detail to the accepted answer in which case they should instead add that detail as a comment or (if they have sufficient rep) a direct edit to the answer.
Separating historical reputation from answer relevance ranking would be an attempt to reduce the perceived value to individuals of tampering with scores - refreshing a vote on an answer wouldn't impact overall reputation.