We all have received a downvote on our questions, and for most of them we wondered why. Does Stack Overflow do anything to prevent downvotes made just for fun or wasting their time?
For the downvotes on your questions which come in huge quantities from a single downvoter (that is, serial downvoting), there are filters in place which will detect and reverse them. This is afaik a job which runs once each day.
As for the occasional unexplained downvote, no, there is nothing done against those. Nor is there anything that can be done against those. How would you detect that the downvote is invalid? Now, granted, there have been various proposals for mandatory comments on downvotes and downvote validation, but these have all been quite heavily shot down for imho very good reasons. Just have a search through Meta to read through some such proposals. Comments are however certainly encouraged. The basic principle here is that downvoting is a privilege. Once you earn the privilege, you are free to cast your downvotes for any reason, or no reason at all, as long as you're not cheating.
And if you do receive an unexplained downvote, don't just ignore it. Have a good look at your question or answer. Is there anything that might be unclear? Something you can improve upon? A mistake that has gotten into your post? You never know what you might have missed. But if nothing stands out, just shrug it off. Downvotes happen.
There are a number of ways the system helps mitigate this.
- The system applies a -1 penalty to the person doing the downvoting (on an answer). While this doesn't eliminate what you're describing entirely, it certainly makes at least a lot of people think much more carefully about what they downvote; people tend to need to feel quite a bit more strongly about what they vote on rather than voting entirely freely.
- Downvotes reduce rep by much less than upvotes increase them. An upvote is +10 rep (+5 on questions) while a downvote is -2. There would need to be 5x more trolls than sincere users just to get the reputation to cancel out, and more than 5x more trolls for you to actually lose rep from a quality answer instead of gaining it.
- Users are limited to 40 daily votes; this helps mitigate how much "damage" one person can do over a period of time.
- SE sites tend to have a strong sense of community. People tend to notice behavior that they find destructive to the community and actively work to discourage it and mitigate it's effects. In this case, when people see downvotes on answers that they don't feel are deserved they may go out of their way to upvote a question they would otherwise might not vote on at all to "cancel the vote" or try to draw more attention to the question if they already planned on upvoting just so other sincere users can vote.
- There are automatic and manual processes in place to deal with voting fraud. If you're worried about someone just singling you out and just downvoting your content it's likely to be reversed as serial voting. If not, they would need to vote on a small enough amount of content (to not trigger the reversal) that it shouldn't be a significant problem. They can also only vote once per post of yours. There are also processes in place to detect using multiple accounts to vote (up or down) on the same target person.
While of course none of these things make the problem go away entirely, they do help to significantly limit how often it occurs and the negative effects when it does occur. What's left after the effects of these factors is something that you can live with, and it's something that most users see at least a little bit of. Fortunately I've never seen it really be a problem. It happens infrequently enough, and the effects are small enough, that you really can just ignore it.
I would propose a function where you can add a comment to a downvote where you describe why you did so.