Stack Overflow has been wildly successful. And maybe in some ways too successful.

I am concerned that Stack Overflow is being inundated by a stream of low-quality questions from users who are accidentally poisoning our well -- by turning off and turning away the core answerers who do all the real work in the system.

In theory there is "no such thing as a stupid question" but in practice, there are:

  • users who can't be bothered to form sentences
  • users who don't do the most basic kinds of research themselves
  • users who barely even explain what it is they are trying to do

I mean a pattern of the above. Not an isolated incident, but 5-10 questions (or dozens or hundreds!) all showing the exact same negative characteristics over a period of days or weeks.

Now, a few of these questions is no problem for our community -- that's why we have voting, reputation, question closing, community moderators, flagging, etc. I am happy to intervene if there is a pattern of negligent, irresponsible, failure-to-learn-anything-at-all questions from a particular user. It's easily the #1 reason I mete out timed suspensions at this point.

All of these systems work, and have worked to date! That's the good news. That's why we have a community worth participating in, and a community worth visiting.


I'm starting to see cracks in Stack Overflow as its popularity grows. At some point you have to face up to the hard reality: there are an infinite number of bad questions that can be asked in willful ignorance.

However smart our software, however smart our users -- we can't scale enough to defeat a million monkeys randomly typing. Not possible.

I worry that we're not doing enough to automatically filter out obviously bad / malicious / inept questions from the system, before the burden of having to deal with these questions lands on our talented audience of answerers.

It's an explicit goal to make moderation easy and effortless. I can't in good conscience say we're doing that, if users have to face down a neverending flood of truly horrible, careless questions.. and hope for an occasional gem to float along.

What can we do -- what do you suggest -- to detect and prevent these kinds of bottom-of-the-barrel questions from even entering our system in the first place? I am willing to sacrifice a small percentage of new questions (up to 10%) as collateral damage if necessary.

(hint as a starting point: think new user / IP address restrictions, around question asking, perhaps based on history..)

Now completed! See self-answer below...

  • 3
    So you want a "Hidden features to help with moderation"? – random Jul 13 '10 at 0:56
  • 5
    Ratchet it up to 25%, that's a good number these days. – random Jul 13 '10 at 1:20
  • 14
    You just noticed this, did you? :P – Aarobot Jul 13 '10 at 1:40
  • 27
    So wait a second, you recolor my post Are Duplicates Creating Broken Windows and then post a quite similar treatise that replaces the word 'duplicate' with 'easy question'? What do you think the duplicates are of? They aren't generally the hard stuff. – George Stocker Jul 13 '10 at 2:01
  • 3
    To be fair, I only read the first part of your post before my Someone is wrong on the Internet mode kicked in. Sorry 'bout that. I have thoughts on this; but I wanted you to know while it's not an exact duplicate, it's a related issue. :-) – George Stocker Jul 13 '10 at 2:14
  • 4
    But he has a diamond next to his name. – Ward Jul 13 '10 at 2:54
  • 4
    George's original post is here: meta.stackexchange.com/questions/52530/… – Ether Jul 13 '10 at 3:12
  • 44
    "we can't scale enough to defeat a million monkeys randomly typing" - I thought Perl questions were allowed... – Steven A. Lowe Jul 13 '10 at 16:19
  • 21
    A question with only a single sentence should require 1000 rep. A question whose text is the same as the subject should require 3000 rep. This simple metric automatically eliminates a good chunk of them. Redirect them to catb.org/esr/faqs/smart-questions.html – Uphill Luge Jul 14 '10 at 7:37
  • 10
    How about knocking off titles that start with a tag? I'm so tired of "C# <real title here>". – John Saunders Jul 14 '10 at 7:38
  • 4
    I had seen a very funny javascript related questions and legitimate answer was downvoted with -1 for not enough jquery, it is bad that i can't find a link to that at this time. – Sarfraz Jul 14 '10 at 13:20
  • 6
    @Sarfraz I remember that, but iirc, that was not down voted - it was just commented. -1 for not enough jQuery is just a meme I guess. – Amarghosh Jul 14 '10 at 13:39
  • 11
    IP banning is not a solution as you risk unfairly penalising innocent users who happen to use ISPs who issue dynamic IPs or those that share a proxy server. – Dan Diplo Aug 7 '10 at 13:58
  • 4
    @creitve email us if ever becomes an actual versus a hypothetical problem for you – Jeff Atwood Aug 21 '10 at 1:59
  • 3
    This seems reasonable, as long as it doesn't eventually extend to "nuke any user who doesn't perfectly format and put a minimum of a day's work into solving their problem first". – RCIX Nov 2 '10 at 22:27

34 Answers 34


How about allowing bounties against a question? That is, I give someone a bit of reputation if they capture dead or alive close or delete duplicate or otherwise inappropriate questions.

I know there's flagging, but that hardly ever seems to work.


You are already trying to estimate the quality of the style of the written text in questions and answers. However, there's something that should be easier to implement: If there is code, auto-lint it. If there is stuff that should be formatted, lint the formatting. At least for

and other things like that, show lint warnings or errors to the user. If a low-rep user chooses to ignore the lint warnings, auto-flag his post for high-rep-user attention and put the lint warnings and errors in his question text. Lint errors for stuff like

  class foo {
 public int A;
int b;
       static void main(String[] args){

should not be ignorable for the user.

A user who does not care enough to at least use proper indentation probably is not a good member for the SO community.


A downside to this approach is that not all questions contain code or so.

  • 1
    "people ignoring conventions (like lowercase classnames in java questions)" If that's the conventions they use, who are you to decide that they're wrong? It's their code; you shouldn't arbitrarily rewrite it with some algorithm. Especially since this can add bugs to the code. – Nicol Bolas Mar 31 '13 at 13:02
  • @NicolBolas Not forcibly rewrite it, but hint the user that rewriting it might be good. There are reasons for these conventions (e.g. it makes it impossible for something intended to be a normal function to be mistaken for a constructor by the compiler). There are things that are just a matter of style, e.g. whether you use ; in JS, but there are some, like uppercase classnames, that you will just have to learn at some point, and learning earlier is better, I think. Also, questions and answers should be reusable as learning material, so the code style in questions has an impact on readers. – thejh Mar 31 '13 at 13:39

Structure the question entry form so the asker is forced to organise the question in the clearest way possible. This means moving away from just having one big text entry for the whole question, and instead splitting it up into several entries, like the following:

  • Problem statement--executive summary
  • What I expected
  • What actually happened
  • How I tried to solve the problem (and any research that I did)
  • What I need answered (i.e., any answer that addresses this section fully will have the sufficient criteria to potentially be accepted)

Make all the entries mandatory. Question can't be posted until all of the above are filled. If any of the above is filled with nonsense, let a moderator immediately and mercilessly close the question.

The above is heavily influenced by Jon Skeet's post on composing a good question. Hell, just link to that post from every question entry form.

  • 1
    "If any of the above is filled with nonsense, let a moderator immediately and mercilessly close the question." - Tongue-in-cheek: There won't be enough moderators to handle the work-load. :D – Mysticial May 10 '14 at 0:44

Proposal: Below the field for asking a question there is a field for Tags. We could add a mandatory selection box for "I tried something", for the asker to tick one of two check boxes (_ Yes _ No), and an extra field for a brief description of what was tried (an Excel formula, "The subroutine in the question", etc.; there are many options), which will be described in detail in the question itself.

It is worth noting that:

  • This is meant to draw attention of the OP about the point, and aiming at self-control (possibly the first line of defense). It will not get rid of little researched questions from someone knowingly wanting to ask it, but it may work well in a fraction of the cases.
  • It will add a small overhead in the overall asking process. It is similar to the brief description of Edits already in place.

I guess whether it will be a good method depends on the balance between these two aspects (and perhaps something else I am missing). If something like this is ever implemented, its usage may even evolve in time, so it is perhaps hard to qualify it simply as "useful" or "not useful".

Take this as brainstorming.

PS1: As a possible alternative, add a field for the asker to complete: "For this question, I googled the following: _________________________"

PS2: If this works, it might be expanded to other fields, e.g., "Is this a question of General Reference?" (_ Yes _ No)

PS3: Some are pessimistic about this endeavor.

PS4: Many of the answers here actually focus on "How can we deal with low-quality questions that already entered our system?" The preventing action in these cases is by deterance for future occasions, but not for the current about-to-be-posted question. I find it comforting that the accepted answer, even if not the most upvoted, addresses the original question.

You must log in to answer this question.

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