This question on terminology was asked earlier.

Should the "General Reference" close reason as outlined in this blog post and this Meta Stack Overflow answer be enabled here on Programmers?

Are there any other questions that would fit this bill, or was this just a one-off that we can live with?

Does the existing "Not constructive" close reason cover this case?

  • As much as this SE is supposed to be 'experts', the numbers say differently. A basic question and simple answer result in +25/+209 and 1.6k views, while this QA has +2/+6 and a meager 92 views.
    – user32363
    Commented Jul 27, 2011 at 4:22
  • @Jay I would expect a question on Meta to get fewer views and votes than a question on the main site - particularly a question of that type.
    – ChrisF Mod
    Commented Jul 27, 2011 at 14:22
  • 1
    Now, this bootstrapper question, I would argue, actually is general reference. Even got its own Wikipedia page. I guess it wasn't just a one-off!
    – Aaronaught
    Commented Jul 27, 2011 at 16:03
  • @ChrisF Good point. But the response to the Iteration question was still quite positive. In fact it is kind of odd how it got so many up-votes, being such a basic question.
    – user32363
    Commented Jul 27, 2011 at 19:09
  • 1
    Related: Introduce a “general reference” close reason (spoiler: status-declined)
    – yannis
    Commented Sep 11, 2012 at 18:12
  • I'm looking for a MSO question now, but I believe there is a reason that was declined. Something about the fact they wanted SO to be the top Google Search result for basic questions.
    – Rachel
    Commented Sep 11, 2012 at 18:33

5 Answers 5


This question got me thinking about a deeper issue on Stack Exchange - but first, let me answer the specific questions here:

Should the "General Reference" close reason as outlined in this blog post and this Meta Stack Overflow answer be enabled here on Programmers?

No, because those should already be covered by the Official FAQ and the site's "elevator pitch":

Programmers - Stack Exchange is for expert programmers who are interested in conceptual questions on software development.

Emphasis mine. General reference questions are, by definition, not expert questions. SciFi.SE and English.SE don't have that criteria, so it's more of an issue for them.

Does the existing "Not constructive" close reason cover this case?

No, I don't think so - it doesn't fit any of the qualifying definitions of Not Constructive. It's sort of practical, it's answerable, it might educate some beginners in the community. It's not really open-ended, and definitely doesn't have an infinite list of answers.

So what should we do?

Unless we get a "too easy" close reason, I think we should close these as off topic. The word "expert" is right there in the site's tagline; if it's not relevant to an experienced, practicing programmer, then it's not in our scope. I'm sorry if it sounds callous, but we're here to help each other, not educate every single newbie on how to program.

Check this out:

Quality Venn

I'm pretty sure that the purple area between "Advanced" and "Disciplined" is where we are supposed to be. We focus entirely on the subjective (objective questions go on Stack Overflow), so we have to be on the right side; and since we're nowhere near as disciplined as Skeptics, we have to make up for it by discussing subjects that are more advanced.

If we start allowing questions that are subjective and beginner-level, then we end up with bike shed questions, which almost invariably produce crap answers and drag down the rest of the site with them.

From now on, I'm going to start closing these "Learn PHP in 21 days" questions as off topic. These guys can go read a tutorial or take a class or something; the whole point of this site is to discuss the topics we don't learn in school and often don't learn on the job.

  • 2
    Good points and a very good graphic. I see this sitting along side Renesis's concentric circles of interest diagram.
    – ChrisF Mod
    Commented Jul 26, 2011 at 21:09
  • “Off-topic” is what Theoretical Computer Science use for questions that aren't “research-level questions in theoretical computer science”. Commented Jul 26, 2011 at 23:41
  • 2
    Correct, @Gilles, so there's at least some precedent. This site ought to be (IMO) the industry counterpart to cstheory's academia; they expect questions from people with several years of undergrad already under their belts, so we should expect questions from people with at least several months of professional or open-source experience. If this is where people come to sharpen the saw, then they should have their own saw first.
    – Aaronaught
    Commented Jul 26, 2011 at 23:49
  • 2
    I'm sold: I closed it on the basis of being off-topic. What could've made the question salvageable is an awesome answer that provided deep insights into why it's called that and comparing it to other, similar concepts. But just a single word answer for a really basic concept is pretty much exactly the type of question that make experts cringe.
    – user8
    Commented Jul 27, 2011 at 3:30

What's the reference? "Learn 2 Proggy in 21 Days"? "The Art of Computer Programming"?

On EL&U, you could reasonably be expected to look in a dictionary, or perhaps even such an exotic source as a thesaurus.

I'd argue it'd be far more useful on Stack Overflow, where a frightening number of questions can be answered simply by digging up the official documentation for the language / API in question and quoting liberally from it... But then again, interpreting official documentation does have some value.

The example you gave seems to be a very simple, basic question... And yet, there are three different answers to it, all with up-votes. Either there's more to the question than meets the eye, or there are a lot of confused programmers out there (my money's on the latter...); either way, there's probably some value in having an answer, here, where it can be vetted and perhaps even improved by the community.

Now, Aaronaught makes a good point in the comments... If this is really a site "for expert programmers who are interested in conceptual questions on software development" then "what is basic building block of programming called?" can be considered simply Off-Topic... and closed as such.

  • Good points, well made. I remain to be convinced one way or the other.
    – ChrisF Mod
    Commented Jul 26, 2011 at 15:29
  • I agree - the number of questions that have the equivalent of dictionary answers isn't enough to justify a close reason. And the questions that books have been written on aren't exactly in every house, as a dictionary could be expected to be.
    – Michael K
    Commented Jul 26, 2011 at 15:34
  • 1
    This is a dictionary question. Or at least a Wikipedia one. en.wikipedia.org/wiki/For_loop, the first hit for "loop programming", answers the question in the second paragraph (or the first if one thinks to click on "iteration"). That being said, Michael is probably right. Another option, as Gilles suggested in chat, is to use "Too localized".
    – mmyers
    Commented Jul 26, 2011 at 15:38
  • @mmyers: I'm not entirely convinced Wikipedia satisfies the requirements here... Especially since the question's example was a while loop and the relevant Wikipedia article doesn't mention iteration anywhere.
    – Shog9
    Commented Jul 26, 2011 at 15:51
  • There are only two different answers (iteration and pass). The massive upvotes, if anything, are a sign that this is a bikeshed question rather than an interesting one. Commented Jul 26, 2011 at 16:26
  • @Gilles: there's also the "misinterpret the question" answer that defines "block". And yes of course it's a bikeshed question; a loop functions perfectly well if you call what it does "looping" or "frobnication", so this is merely about communication (in the grand tradition of What do you call those curly, round and square thingies?!)
    – Shog9
    Commented Jul 26, 2011 at 16:34
  • 2
    149 votes for that is pretty ridiculous, though. What happened to the "expert programmers" designation in the FAQ?
    – Aaronaught
    Commented Jul 26, 2011 at 16:35
  • What I mean is, "General Reference" was originally slated as "too basic", but the wording was softened. Since this site is ostensibly for experts, maybe that is precisely the close reason we need.
    – Aaronaught
    Commented Jul 26, 2011 at 16:37
  • @Aaronaught: now that isn't a bad idea. Although, "Off topic" could serve just as well for that purpose (as seen on "CS Theory.SE")
    – Shog9
    Commented Jul 26, 2011 at 16:44

Regarding the general reference close reason: it has been on trial on Science Fiction & Fantasy Stack Exchange and English Language & Usage for a few months. You can watch part of the debate that led to it here and here.

On SF&F, we don't use it often (6 times total, out of about 80 closed or retracted questions since the close reason was introduced). It gives a clear way to close questions where an encyclopedia, database or other general reference is the best answer, so there is no need to involve an answerer in the process.

In its absence, you could (ab)use the “too localized” close reason: “this question is unlikely to ever help any future visitors”.

One thing to decide if “general reference” becomes a close reason is what constitutes a general reference. Wikipedia is an obvious one. Standard English dictionaries are another, for EL&U. On SF&F, bibliographical data from IMDB and ISFDB (and that last one isn't completely decided: ISFDB isn't that well known). For SO and Programmers, the reference manual of the language or framework that the question is about would be a general reference. (But what about non-official or hard-to-get-at or not-so-well-known references? Is K&R a GR for C? What about the c.l.c FAQ?)

Note that there's a difference between “general reference” questions and “easily googlable” questions. Following Borror0's diagram: a question is only a general reference question if the answer is easy to find (not scattered across many pages or worded in a way that only people who are already experts can understand), and it isn't a general reference question if you feel that the reference is incomplete and you (as an expert) have more to say that would be useful to the asker. I would add one element: if the first Google hit is a page that answers the question, but the asker would have no particular reason to trust that site (e.g. it's some random blog post), then the question is legitimate — GR is really more about “look it up first” than “google it first”.

Another thing to watch for is the possibility for abuse. “What is X?”, when Wikipedia has an article on X, is a GR question. “I've read the Wikipedia article on X, but it's defined in terms of V and W which I don't know, my background is B, could you explain X to me?” is a valid question. So is “I've read the Wikipedia article on X, but it doesn't discuss context C, how does X relate to C?”.

Regarding this question in particular: it's obviously about loops, so the first thing do do — the minimum amount of research that's expected of any asker — is to browse the Wikipedia article on loops.

I find the Wikipedia article more interesting than the answers here, in fact. It doesn't define a term for each “time through the loop”. There are, however, parts of the article that use the expression “iteration of the loop” or “loop iteration”, without defining it explicitly. This suggests to me that the term “iteration” is the accepted term in part of the community, while another part doesn't use the word. I didn't get that vibe from the answers here.

There's a “smell” in the question, by the way. If you need to work around the “quality standards”, this suggests that your question isn't very high quality.

Maybe I'm being too negative against the question, and we just need to wait a little more to have good answers. Someone suggested the term “pass”, and there is some debate about it. So at least it does show that the community is divided.


The General Reference close reason should not be added to programmers, for the same reason Stack Exchange sites have rejected this as a close reason generally - there are a limited number of basic questions, we answer them once, and from then on it's a duplicate. If it isn't an exact duplicate then it at least helps people who don't know enough to ask the question correctly find something that points them on the right path.


Oddly, my answer, above, got merged into this question because the question I originally answered was a duplicate. The question this now answers refers specifically to a general reference question I answered, and I and the OP both got an absurdly disproportionate number of up-votes.

I do think that the biggest drawback of allowing general reference questions is that they are obviously easy to answer, and often have a large number of views because beginners outnumber experts (and experts may want to see what all the fuss is about). This can lead to an "unfair" amount of reputation gain for the answerer.

This is potentially detrimental to the site because it might lead to misleading reputation scores, and accurate reputation scores (to the extent they are accurate) are a useful feature in letting people asses the validity of an answer.

One partial remedy might be to have a "general-reference" tag for such questions. This does at least let people see (not easily) if someone has 20k rep, 19,800 from "general-reference" and judge accordingly.

"general-reference" would be a kind of meta-tag, but the Math site has a "soft question" tag that probably serves a similar purpose, and it doesn't seem to be a problem (unless I just caused one).

Just a thought, and a way to completely muddle the meaning of any voting on this answer.

  • I don't see how this addresses the issue. A question that is general reference might be "What is Scrum?" There's an answer for that, but it's too simple and should be closed. It's technically not off-topic (it's a development methodology), it's constructive (there's a single right answer), it's a real question, and it would help future visitors. However, it's too basic for a professional software developer with expertise in development methodologies (the subject of the question) to want to answer, especially since there are better canonical answers that can be found by searching the web.
    – Thomas Owens Mod
    Commented Sep 11, 2012 at 20:01
  • For "What is Scrum" specifically it might, arguably, be too broad and therefore NC. But in general I don't think things should be closed only for being too basic and it appears as though that is currently the general SE policy as well. But really I don't see why having an answer to that question with a couple links harms the internet. I do see why people might not get excited about answering "What is scrum?", "What the heck is a scrum master?", "What's a customer story?", "What's a burn-down chart?". But someone out there will probably give them decent answers.
    – psr
    Commented Sep 11, 2012 at 21:08

Personally, I think this would make a good addition to the list of close reasons. This was status-declined on Meta Stack Overflow in 2011, but I think that it could be something that is revisited. The current policy might work fine on Stack Overflow, but setting the bar at a minimum amount of prerequisite knowledge (Theoretical Computer Science) and effort (all Stack Exchange sites) is something that has worked well and clearly specifying this as a close message would help reinforce it..

Now, I tend to close them as off-topic, citing the part in the FAQ that says Programmers is a site for "professional programmers who are interested in getting expert answers" with the reasoning that if a question is something that I'd expect a professional in the given field to know and fully understand, it falls outside of the scope. Other times, I have used "not constructive", citing that you don't need specific expertise to answer the question (eg - a simple Google search yields the answer).

I can see how Stack Overflow might not need this, but any professional-oriented Stack Exchange can have questions that are just too basic and should clearly differentiate this as a reason for bad questions. I can see this being useful not only here on Programmers, but perhaps Computer Science, Theoretical Computer Science, Cross-Validated, Cognitive Sciences, Server Fault, IT Security, Project Management, Signal Processing, Academia, and so on - the sites that focus on people with a certain level of existing knowledge, skills, and experience in a given domain (especially a domain that requires an amount of education and skill development, either formally or informally).

In the meantime, I wonder if there's something more specific in the FAQ (or something more specific that can be added to the FAQ) that can be referenced for these questions.


You must log in to answer this question.

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