DEV Community

Discussion on: Oh, Stack Overflow

panditapan profile image

Thank you for doing all that research, I appreciate the time you took to look into it and to write the explanation for me and other users who may read this. :3

The "destroyed within seconds" was a joke tho', but I can understand why it wouldn't translate correctly in text, sorry about that.

Thread Thread
thebjorn profile image

No problem. Most people who answer questions on stack overflow do it because we get a kick out of helping people. Yes, the point system is cute, but I've been answering Python questions online since 1997 (!msg/comp...).

Python forums have generally been quite friendly, but many others would/will bash you to oblivion if you haven't read/understood/followed (I would suggest reading the sections starting from the end..)

Finally, down-voting and closing of your question is in all likelihood not personal -- so you shouldn't take it as such. One of my questions I love most (because I had a real a-ha moment after interacting with the commenters/answerers) is this -4 closed as opinion-based question:

Thread Thread
codemouse92 profile image
Jason C. McDonald • Edited on

I too have found that the Python community is friendly as a whole (I frequent #python on Freenode IRC.)

Unfortunately, I can't say that downvotes on StackOverflow are likely "not personal," as I've witnessed the community unanimously mock and shoot down four different proposals to introduce some simple accountability on downvotes. They cite that they "have the right to downvote for any reason anonymously", and absolutely refuse to comment constructively to help the OP learn from the downvote. I know enough about psychology and communication to know: that type of strong community-wide reaction indicates that a primary use of downvotes is harassment and hazing.

With that said, closing a question is seldom personal, and provides enough information to the OP to learn from.

Thread Thread
thebjorn profile image

You might be partially correct in tags that get a huge amount of low-quality traffic (javascript/php/c++), but there are systems in place to prevent abuse. Whenever you downvote a point is subtracted from both yourself and the person you're downvoting, so there is some accountability. We only get 50 close votes per day, which is not much (after that we're left with downvoting to signal to other high-rep users that something should be closed).
An upvote gives 5 points to the other person but no points to yourself -- so a question with 4 downvotes and 1 upvote is a net win for the OP (downvotes aren't that bad, but if you're not upvoting you're part of the problem :-)

To illustrate how/why I up/dowvnvote, here are some examples from right now..
The question has code + traceback + user with low score => +1
input + code + actual output + expected output + new contributor => +1 (I think this is a great effort for a new asker, however someone else didn't agree and voted it down -- which is fine we don't all have to agree, the user still has 5-1= +4 points)
This question has a clear problem description + code + expected output + actual output. Based simply on that it would have been a +1, however the problem is a very simple logic error so not a particularly interesting question. I would have voted -1, but someone else already downvoted it so I don't need to.
This is a horribly asked question from a new contributor. The error experienced is not in the question, but rather a link to picture of error + unformatted code (I fixed that part) + code without input or expected/actual output => -1 from me even though it's a new contributor. I don't have the time right now to be new-contributor-friendly and guide them through all that is needed to fix their problem and the -1 is a signal to other users that someone needs help. Hint: Anyone here could probably help this person get a better question going... ;-)

Thread Thread
codemouse92 profile image
Jason C. McDonald • Edited on

I've heard that argument a lot, but the fact is, the systems to prevent abuse don't work when the majority of the bullies have tens of thousands of points. They can downvote with impunity, and often do.

StackOverflow is overrun by an elitist minority which use their privileges and votes to support one another's abuse of the system. If you doubt me, look at how often the technically correct answer is the second, third, or fourth down, simply because the top answer was by a high-rep user. The gentry answer is upvoted heavily, and the correct one downvoted because of "reasons" having nothing to do with its accuracy or usefulness.

Long story short, StackOverflow has been a reputation-based oligarchical society.

The other issue I have with downvotes is that they tell us nothing about what's wrong. Yes, there are plenty of questions and answers that are worthy of being downvoted, but the fact is, it doesn't ever help the OP improve without a companion comment.

For the record, I've written and spoken extensively on how to ask and answer questions and interact on StackOverflow and similar communities. What I have noticed is that StackOverflow has a uniquely toxic environment seldom replicated elsewhere: downvotes are anonymous statements of generic disapproval, and on any tag, popular or otherwise, there are plenty of people who use them to disapprove of the poster, not just the content.

I have personally been downvoted for answering my own question, for asking well-structured questions about valid patterns or tools that the "gentry" didn't personally approve of, for answering after a member of the "gentry" did so incompletely or incorrectly, or for answering a well-structured question from a beginner that said "gentry" did not personally like.

Fact is, StackOverflow would be considerably improved with either of the following:

  • A requirement to select a reason for the downvote from a generic list, like with close votes. This provides information to OPs and other readers. (Sometimes, the best answers are heavily downvoted because politics.)

  • downvotes at all! There actually is no need to have them: a lack of upvotes perfectly compensates. StackOverflow is relatively unique in having downvotes; the oldest, most stable, most helpful communities prior to SO existed perfectly well without them. (You can re-balance the StackOverflow reputation system by "weighting" upvotes from higher-reputation users. (e.g. 500r=+2, 1K=+3, 5K=+4, etc)

Myself, I rarely downvote anything. Most of the time, a comment or a flag is far more appropriate, because they're objective things that can be learned from, and which I can be held accountable for.

Anonymous disapproval is not a benevolent tool. It's a weapon that SO regulars have justified their regular (mis)use of. It lacks any and all accountability, making it ripe for abuse. You will not find anonymous downvotes in any other socially stable online community; Reddit is the only other example I can think of, and it creates a the same troll-friendly culture of bullying there that we observe on StackOverflow.