Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 158 Stack Exchange communities.

What is meta?
Here's how it works:
  1. Any Stack Exchange user can ask a question
  2. The community provides support, votes on ideas, and reports bugs
  3. Your voice helps shape the way Stack Exchange operates

I've been using StackOverflow now for about two months and one thing I've noticed is that there seem to be some commonality between answers which get more upvotes.

For example: Short, "pithy" answers tend to be favored over longer answers - even if the longer answers are well thought out and technically accurate.

I wonder, can we glean some general best practices for answering technical questions from this?

What guidelines do you follow for creating effective answers? I am particularly interested because I think that the qualities which make a popular answer on SO probably also apply to writing blog articles and technical marketing material

  • Do you use lists?
  • Analogies?
  • Humor?
  • Keep it short?
  • Take sides on tough issues? (I've noticed that some people attempt to give "fair and balanced" answers versus some answers which tend to present things in black-and-white)

migration rejected from Jan 3 at 15:32

This question came from our site for professional and enthusiast programmers. Votes, comments, and answers are locked due to the question being closed here, but it may be eligible for editing and reopening on the site where it originated.

closed as off-topic by Al E., Nathan Tuggy, Ward, Shadow Wizard, rene Jan 3 at 15:32

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This question pertains only to a specific site in the Stack Exchange Network. Questions on Meta Stack Exchange should pertain to our network or software that drives it as a whole, within the guidelines defined in the help center. You should ask this question on the meta site where your concern originated." – Al E., Nathan Tuggy, Ward, Shadow Wizard, rene
If this question can be reworded to fit the rules in the help center, please edit the question.

11 Answers 11

I suspect that longer answers get fewer votes to start with because they take longer to write than short answers. I've certainly got some long answers with lots of votes, and short answers with none.

I've written my personal guide to writing good answers elsewhere... I'll see if I can find it.

EDIT: I can't find that guide at the moment. I think I'll write it up as a blog post on the train tonight so I can keep it forever, but briefly:

  • Include links to API documentation when you refer to types/methods.
  • Include code examples, preferrably short but complete ones.
  • Be accurate, including evidence for your statements - particularly if they disagree with other answers.
  • Be careful with spelling and grammar. People may well not be consciously judging you based on them, but the difference between bothering to upvote and not doing so is often quite small.
  • Don't just rip off other answers - but refer to them and build on them.
  • Be polite, both to the questioner and to other people answering.

EDIT: I've now written it up as "Answering technical questions helpfully"

Wow, please don't tell me you have got an answer with no upvote! :) – SDX2000 Feb 9 '09 at 12:39
I have plenty, I think - although I can't see them any more! – Jon Skeet Feb 9 '09 at 12:43
Would you deem it acceptable to collate other answers along with additional material of one's own, in order to provide a more complete answer? – Russ Cam Feb 9 '09 at 12:51
Thanks Jon - I was hoping you would chime in. – Mo Flanagan Feb 9 '09 at 13:01
@Russ: I think if you start grabbing chunks of text/code from other answers it would be polite to make the answer CW, but it's probably a good thing in terms of other people trying to find the best answer quickly. – Jon Skeet Feb 9 '09 at 13:12
@Jon Skeet, you linked the blog post to this question, I think it would be cool to link this answer to your blog too:… – Ric Tokyo Feb 19 '09 at 6:52
No longer available, and not on Web Archive either. Would you please relink? – Deer Hunter Jan 2 at 17:46
@DeerHunter: Updated the link now. – Jon Skeet Jan 2 at 19:46

Get right to the point. That way, even if you have to present lots of information, it is easy to identify the keypoints of your answer.

Other points to answer effectively are:

  • Use complete sentences and paragraphs.
  • Highlight and/or emphasize important ideas.
  • Organize your answer so it is easy to read.
  • Present links to more information and sources for your answer.

At the end, try to conclude your answer, especially if your answer has a lot of information. After all, in many cases, as with reading other types of writing, people tend to look at the first and last few sentences of an answer.

@Mo Flanagan: Thanks! I hope the answer illustrates the point! – coobird Feb 9 '09 at 13:22

cause I'm not a native speaker of English ;)


I like to use humor when answering and asking. It can be pretty off the wall and obtuse, though. Also I like to be self-effacing, and I have an exceptional foundation (no self esteem!) and years of practice at that. Being somewhat clumsy, my delivery of course still needs work.

Tsk. You're so boastful about your lack of self-esteem. – mackenir Feb 9 '09 at 13:47
I'm a walking Ultima 4 style moral quandry! – peacedog Feb 9 '09 at 14:25

Take sides on tough issues?

Generally not a good way to generate points, not that that should stop you.

I don't know - if there's a contentious issue with 50% of people going each way, a strong statement in favour of one side may garner many votes from both sides. Upvotes are more powerful than downvotes (rep limit aside) so there's a net gain. – Jon Skeet Feb 9 '09 at 12:47
Thats what I was thinking and have observed with my own answers – Mo Flanagan Feb 9 '09 at 12:58
Yeah, but I find that the tough issues are those where the majority of people don't get it or get it wrong, and saying that out loud usually isn't a net gain. Not in points anyway. – troelskn Feb 10 '09 at 9:42

I like to write short answers but with a lot of links to further informations. They are the most helpful because the person wants to know the answer and not read a lot about it in the first place.

Often people write the solution at the bottom of long answers, which makes it tiresome to extract the needed information. I prefere to write the solution on top and then explain it, if the questioner is interested.

What I like to do too is expand my answer. I write a short answer and expand it over time.


I think most users (myself included) prefers a short and to the point answer. We just want to get the information we were looking for and as little else as possible, like it or not.


Often there are answers which do not really answer the question, but show other ways of doing something. Since in most cases the examples given through the question are 'constructed' examples, these answers are often useless for the problem. Nonetheless those answers get many upvotes. Just noticed this...

Like this one? :) – Georg Schölly Feb 9 '09 at 14:26

I prefer stating reasons and keeping the answer short. It's okay to take sides, but even then one should explain the rationale. Shortness is just for lack of time ;)


I prefer well formatted answers with links, without typos.

I often find myself correcting answers without these elements. – strager Feb 9 '09 at 13:07

I prefer small answers broken up into logical parts.

If the answer refers directly to something covered by documentation, I try to link to the documentation.

If it's possible to provide a small snippet of useful example code, I try to write some to illustrate it, using any vocabulary and sample code provided by the questioner.