It seems some long well thought out answers receive a very low vote count:

Better way to do this LINQ to XML query?

On the other hand, here https://stackoverflow.com/questions/471940

Jeff's witty, and grossly incorrect comment got him 66104 upvotes, for a response that probably took him 5 seconds to come up with.

Should I not bother answering complex questions which require lots of work to answer?

Why do long well thought out answers result in negative reputation while short snappy ones get all the rep?


So people do not think I am singling out Jeff, here is a bigger list:


select top 20 ' - ' + q.Title ,'https://stackoverflow.com/questions/' + cast(q.Id as varchar(max)) , datalength(a.Body),
    cast(a.Score as varchar) From Answers a 
join Questions q on a.ParentId = q.Id and q.IsWiki = 0
where datalength(a.Body) < 500
order by a.Score desc

And for even more enjoyment, here is a list of Marc's longest 20 answers, the most votes he got from a long answer is 9 next up is 4, but the avg is probably around 2.


select top 20 ' - ' + q.Title ,'https://stackoverflow.com/questions/' + cast(q.Id as varchar(max)) , datalength(a.Body),
    cast(a.Score as varchar) From Answers a 
join Questions q on a.ParentId = q.Id and q.IsWiki = 0
where a.OwnerUserId = 23354
order by datalength(a.Body) desc
  • 11
    Instead of lists of data, can you perhaps create a graph of the length of answers vs. average score? Maybe we can find the optimum length for maximum rep... Jul 19, 2009 at 23:29
  • 6
    Thanks for digging out the list; I can now answer your question just from one of the comments: "Wow. Marc - I really appreciate you taking the time to do this.". Admittedly, this type of response is rare... Jul 19, 2009 at 23:37
  • lol; I notice you're now at +2; obviously the more discerning folks here at MSO agree that the answer isn't pants... simply, it didn't get spotted at the time. Jul 19, 2009 at 23:39
  • -1 may only be the result of a single eejit's vote. Jul 20, 2009 at 0:21
  • @Tom, yes, I think that was the only attention that question ever got ... till now
    – waffles
    Jul 20, 2009 at 0:23
  • Is there somewhere on the internet where we can post these queries, and get the data? Jul 20, 2009 at 0:49
  • While this discussion is valid, I still think it's a little shady, because any of use could post our downvoted answers, and the community of MSO would upvote us.
    – devinb
    Jul 20, 2009 at 13:06
  • @devin, I removed my post, so the discussion can remain unhindered
    – waffles
    Jul 20, 2009 at 13:24
  • 3
    Jeff's "answer" should have been a comment... Miss-using his own system :-)
    – beggs
    Sep 9, 2009 at 8:34
  • 1
    Looking at some of the question titles, they scream for a witty rebuttal ("What is the difference between Java and JavaScript", come on, have you even looked at the languages?!; "Why isn't Windows written in C#", when Windows much predates C#)
    – vonbrand
    Mar 12, 2013 at 10:16

8 Answers 8


I guess...

In part, because more people understand them.

In part, because more people see them (before the question is marked as complete).

I agree that the java/javascript one is... unduly upvoted. There are other examples of this, but I can't think of a way to handle it, except perhaps Jon Skeet's suggestion of a rep cap per question (rather than per day) - so (for example) you only see rep for the first 10 (pick a number...) upvotes (100 points).

I've got some similar answers; for example some things relating to obscure and complex uses of System.ComponentModel - where a short (minimal) example is a few hundred lines of code. It is probably only going to get appreciated by the OP; but that is fine. The answer is still good, and I'm proud of it. Like you should be of the detail in your answer.

  • I guess, the second part of the question is, what should motivate me to answer questions like the one I linked, it took me a non-trivial amount of time to answer, I even wrote code to explain the comments.
    – waffles
    Jul 19, 2009 at 22:56
  • 1
    +1 @Marc, completely agree. @Sam, I think that if you're passionate about a topic and it interests you then you should at least get some satisfaction in the answer you provided. I agree that some questions/tags are especially biased to huge amounts of up votes with no effort, but I can't think of any ways to fix this. If you spend a lot of time on complex answers you're probably going to have to settle with self growth as a reward. Jul 19, 2009 at 23:09
  • @Marc, I provided 20 examples for your enjoyment, I can make the list longer if you wish. Instead of looking bitter and getting all pissed off at Greg, I changed the example to point to Jeff :p
    – waffles
    Jul 19, 2009 at 23:18
  • @Marc, for your added enjoyment I put a list of your longest answers for comparison. See amended question.
    – waffles
    Jul 19, 2009 at 23:28

I think its only fair I answer this question:

As a trend short answers do not have an edge over long answer, in fact long answers in general get up to a 6x edge over one liners. This edge is much reduced for the more complicated tags such as 'multithreading' where you only get a 3x edge (and you reach the optimum length earlier). This also explains why Marc's long answers are so poorly voted on. Few people understand them hence the low vote count.

At some point you stop getting an edge and start losing it. This usually happens around the 15k letter mark, anything longer than that loses the edge.

I guess anyone can find the edge cases, but edge cases do not prove a point. I also think its hard to make a point that rules need to change just to accommodate for edge cases.

So to answer my original questions:

Why do long well thought out answers result in negative reputation while short snappy ones get all the rep?

Well the data does not back that up. It just backs up that there are edge cases where this happens.

Should I not bother answering complex questions involving concurrency anymore?

If all you are interested in is rep, concurrency is a very poor tag to be participating in.

What do I suggest SO does?

Move along, nothing to see here. I guess. It's the way the system works. Reputation is not a measure of effort or correctness, its a measure of popularity.

  • 2
    Yup. ;-)
    – Shog9
    Jul 20, 2009 at 14:06

People read answers with length proportional to their attention span.


People vote for what they understand and I think it's not that people don't appreciate that answer of yours, they simply don't understand it. And yes attention span does come into it.

There's also something to be said for being pithy. Greg's answer is basically a repeat of something said elsewhere (as far as I know). And "Java is to JavaScript what Car is to Carpet" is a succinct and correct answer to the question ie there is no relationship other than sharing some common letters.

As for long answers not getting upvoted, I just had a look and my top 7 voted answers are all quite long. IMHO there is a skill to writing a long answer effectively (well, writing any answer effectively).

Just because something is long doesn't mean it's a good answer (both in terms of content as well as the ability for others to digest it) and just because another answer is shorter doesn't necessarily mean that other answer is worse.

  • I take the pithy: My big question is this: "Should I not bother answering complex questions involving concurrency anymore?" I do need to do analyze that particular tag and look for max upvotes and look at all the answers, my gut is telling me that it is a problem area in SO.
    – waffles
    Jul 19, 2009 at 23:00
  • 1
    I think sometimes software developers half-expect human beings to act like computer code...in a reasonable, logical way. I agree that you put alot of effort into what is probably a very good answer and if a computer algorithm was marking it, you would probably get top marks. But we are dealing with people here, not computer code...the kind of people (no offence intended to anyone) who vote politicians into office based on news media sound bites. SO is full of people - not much you can do about it, I'm afraid
    – Joe Schmoe
    Jul 19, 2009 at 23:07
  • @Cletus, I removed Greg from my examples, and put Jeff there instead ...
    – waffles
    Jul 19, 2009 at 23:16
  • @Cletus, how many of your long answers involve code samples? I think having source code in your answer is key to not receiving upvotes, if Marc's list is anything to go by.
    – waffles
    Jul 19, 2009 at 23:39
  • This one got 33 upvotes and is code stackoverflow.com/questions/474535/…
    – cletus
    Jul 20, 2009 at 0:00

Why do long well thought out answers result in negative reputation while short snappy ones get all the rep?

Two data points isn't really enough. There are long, well thought out answers that get plenty of up-votes. Just not yours.

Edit: a few stats pulled from the June data dump...

Average length of answers with a score of 30 or greater: 1060 characters
Average length of answers with a score of 0 or less: 700 characters
Average score of answers with a length of 5000 characters or more: 6
Average score of answers with a length of 300 characters or less: 2

  • @Shog, there are also plenty of opposite examples, see my amended question
    – waffles
    Jul 19, 2009 at 23:12
  • @Shog, now you have 20 data points (see amended question) :) agree its not enough, but there is a pattern here.
    – waffles
    Jul 19, 2009 at 23:29
  • @Sam: the 20 lowest-ranked answers include some very short ones as well (although there does appear to be greater variation - some > 1000 chars, some less than 100). I've added some stats to my question; suffice to say, i don't think your premise is valid.
    – Shog9
    Jul 20, 2009 at 3:17
  • @Shog, you have to exclude the community wiki questions to get valid stats (also analysis per tag is kind of important). The real numbers seem much lower. I get a sweet spot around the 15K mark, and then the amount of avg votes decreases. As a rule having a longer answer gives you an edge to a point. But there is only about a 6x difference between really long answers and one liners. And really long answers take a whole lot more effort.
    – waffles
    Jul 20, 2009 at 3:43
  • 1
    Well, i was hoping to goad you into doing some better analysis to back up your claim... but i guess i'm mistaken as to what that even was. I thought you were upset that long answers got down-voted while short ones got all the rep; instead, it seems you feel that long answers should have a much bigger edge due to the time it takes to write them. Heh... Perhaps SO could implement an "A for Effort" badge to reward those who write long, low-scoring posts?
    – Shog9
    Jul 20, 2009 at 4:58
  • :) "A for Effort badge" nice one. You know you are right, its the edge cases that really bother me. As a trend I agree that stuff is kind of OK as it is. looking only at the multithreading tag, the really long answers get only a x2.5 edge, which kind of makes sense since its just too hard for people to grasp.
    – waffles
    Jul 20, 2009 at 8:41
  • @shog, I gave a shot at answering this, see my answer
    – waffles
    Jul 20, 2009 at 9:00

I suspect the problem is that it's difficult to tell whether or not your answer is correct. As someone that doesn't understand a lick of C# I have no idea if your answer is brilliant or horribly wrong. So I don't vote.

Greg's answer, on the other hand, is both witty and common knowledge, and therefore gets upvoted a lot.


Short attention spans.

(sorry for the long sentence)

  • 7
    tl; dr
    – Shog9
    Jul 19, 2009 at 22:55

We prefer short witty technically correct quips to long-winded, boring answers. We are busy and have ADD. I bet that on weekends longer answers receive more upvotes.

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