Like the other "summer of love" posts, this recent SE blog post has elicited a lot of comments about the rules of SO. Reading through the comments, it's striking how divided opinions are, and the lines along which they are divided.. that is, moderators, and not moderators. I got into this debate a bit, and while I think RH addressed my particular concern somewhat, it's also clear that he is expressing an opinion (as opposed to a policy position) with this comment:

"You can ask tools questions on Stack Overflow, just not the “What is your favorite” and “What is the best” variety. If you can craft your question so that it is narrow enough to be actually answerable, i.e. “Is there a tool that meets these specific requirements” or “What process or tool can I use to meet this specific need”, it is perfectly on-topic at Stack Overflow.

This issue happens to be my pet peeve, because as a full-time software developer, I spend a great deal of time researching solutions to problems. Now, that's part of being a programmer, but one thing that is clear is that Google will not help you find a Github repo with 25 followers using search terms like "javascript" and "callback." Sometimes you don't know the right terminology to search on until you've figured out the problem completely. Sometimes the context of what you're looking for is very specific yet there's no term involved that's specific enough to find it. Sometimes you're new to a particular environment or just feel like there must be a better way to do something but you don't have more to go on than "what's the best way to do this."

Asking "how do I do something" is so fundamental to being a programmer, yet it's almost specifically blacklisted from SO. Nearly any questions posed as "What is the best way to do x" or "Suggest a tool to do x" or "Is there a plugin or project that does x" will get closed as "shopping" questions.

Beyond Shopping

Many other kinds of questions get closed or super-downvoted with ruthless efficiency and filled with incredibly annoying auto-comments such as "What have you tried?" I feel like half the battle these days is just getting a question accepted without being crucified, never mind getting it answered! For example, this one that I happened to read the other day, got five downvotes in as many minutes, the "what have you tried", and a ton of comments having absolutely nothing to do with answering his question. Imagine if all that energy from all those participants had gone into helping people solve problems instead of criticizing questions!

Now I won't say that this question was perfect by any means, but it was

Written in perfect English sentences

Formatted well

Clearly posed as a question with example code

Posted by a relatively high-repped used (not that this should matter).

It seems that the criticism largely focused on the fact that it was too easy or he didn't say what he had tried. While I think "what have you tried" as appropriate for questions which are obviously being asked to avoid even the most basic google research, this is not such a question. In this case he simply didn't write "I realize I could do this with a brute force approach but I am asking if there is a javascript way to do it." Is that mistake really so dire that the question should be crucified by the community?

I realize the "summer of love" is about civility. I think it's time to open the discussion a bit further. There's nothing uncivil about downvoting or saying "what have you tried." Nor is there anything especially helpful about them. It was obvious to me upon reading his question what he was asking. The criticism was nitpicking. I think we would all be better off it a lot more energy was spent on answering questions (or, if you prefer, editing them) than it is on downvoting and nitpicking questions that are just not perfect.

Suggestions

First, I think that the rules for questions that are broadly classified as "shopping" should be codified. There is clearly not a consensus among moderators about what makes such a question acceptable. I think RH's position above is about right. But those are not the rules applied by everyone: the vast majority of such questions (especially high-rank or high-view ones, e.g. those that aren't below the radar) have been closed. The irony of a question being popular, is that it's also very likely to get closed!

Second, don't allow questions to be closed until they've been on SO for 24 hours or some other period of time. Give people a chance to revise their question and respond to criticism. If the point of closing questions is for the record of historical data quality, what difference does it make?

Third, encourage being helpful rather than being critical. In the example question I gave, "what have you tried" isn't helpful. On the other hand the comment "can you clarify if you are looking for a language specific way to do this or do you just not understand how to code a brute force approach?" is very helpful. Reward people for editing questions, not for closing questions.

Fourth, if you just can't abide by any of this, then create the Stack Overflow Community Forum. Where you can ask any programming-related question you want. Exactly the same as Stack Overflow but nobody can close questions. Instead of questions being closed or deleted, they are migrated to the Community Forum.

It is clear that lots of people would like to be able to tap the knowledge of the Stack Overflow community in ways that the Stack Overflow leadership or moderators does not approve of. So why not just let them do it? If it turns into a slop fest, then don't go there. Yeah - I'm asking SO to give the kids their own playground.

I realize that one of the fundamental tenets of Stack Overflow's existence is the quality of its data. But let's face it. SO isn't in control of that. Google is. There are 3.5 million questions on SO. People googling for the answer to a question don't find an incredibly well-written answer to an incredibly well-written question; they find the one with the highest number of page views or rank.

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

3

Besides some of the good points you make on politeness, if you want to see something to contain content that falls under "what Stack Overflow is not", nothing stands in your way to create this. Why should SO itself do so?
–
BartAug 10 '12 at 19:08

5

So just because it is so damn good at what it is, it should also cater for what it's not? (and of course your discussion is welcome here. Doesn't mean I have to agree. ;) )
–
BartAug 10 '12 at 19:09

2

It was suggested that I come here to discuss this. I was hoping for more than "if you don't like it go somewhere else."
–
jamietreAug 10 '12 at 19:10

2

That is entirely your interpretation of what I said. Your discussion raised my question. Nothing more, nothing less. A discussion needs two sides. I will never ever tell you to leave. I merely have a different point of view. All part of a discussion I think.
–
BartAug 10 '12 at 19:11

3

Fair enough - but the point of this post was to discuss the rules, the rationale for them, and how they might evolve. You're just stonewalling, not discussing.
–
jamietreAug 10 '12 at 19:13

16

"don't allow questions to be closed until they've been on SO for 24 hours or some other period of time" - Askers can act on criticism even after the question has been closed, so I'm not sure why this is necessary. The real problem is that it's not nearly as easy to get a question reopened once this has happened, and I think that's a much more valid target for improvement personally.
–
Tim StoneAug 10 '12 at 19:13

4

@Tim Maybe reopen votes could also be added to the new review screen?
–
Brad MaceAug 10 '12 at 19:14

4

@TimStone As is the awareness of the possibility to have a question reopened I think. More often than not I see users abandon questions which could be reopened with a bit of a polish or reformulation. Often because they simply don't know that that's possible.
–
BartAug 10 '12 at 19:15

7

@jamietre The problem is that there's a lot of stuff that does need to be closed, and putting a barrier in the way is detrimental to that actually happening. It seems more productive to me to properly convey to the OP that closure is not a punishment (in the general sense, technically it is as it relates to potentially being question banned), and afford them the opportunity to make any necessary changes and get their post reopened as efficiently as possible.
–
Tim StoneAug 10 '12 at 19:18

2

Some of the "things SO isn't" are allowed on Programmers.SE. They used to allow more, but then they learned the hard way what the costs of allowing that stuff are. In short this is another call for not-not-programming-related-realted (to inject the working title of what became Programmers).
–
dmckeeAug 10 '12 at 19:24

@jamietre: quick suggestion, as I have to run out for lunch - will try to drop back in later. You're kinda addressing a few different issues here, and I think it's your proposed solution that is setting folks off a bit (there's some history behind it...) You might consider dividing this up a bit; in particular, shopping questions (particularly as they pertain to tools or libraries) could use its own discussion. FWIW, I agree that the comments you identify in your second section are a problem.
–
Shog9♦Aug 10 '12 at 19:36

3

@jamietre: The thing is, closing questions quickly is doing something positive. It takes questions that are marginally or clearly out of bounds and removes them from consideration until they are corrected. This is a good thing for the site. The problem is that you're so concerned about that one particular person that you won't do what's best for the site as a whole.
–
Nicol BolasAug 10 '12 at 19:57

3

On the plus side, I think we can use this as the authoritative question to close dupes against thanks to Robert and Nicol's answers
–
Brad MaceAug 10 '12 at 20:28

5

"What have you tried" may not be helpful directly for the asker, but it sure as heck is helpful for us trying to answer the question. And a good answer is really all the help most people asking questions want.
–
Ben BrockaAug 10 '12 at 23:35

3 Answers
3

Give people a chance to revise their question and respond to criticism

That's exactly what closure does.

This is a common misconception about question closing; that closure is the death of a question. It is not. The only thing that closure prevents is addition of new answers. That's all. People can still upvote, downvote, edit, comment, vote to open, vote to delete. They can participate in any way except to add new answers to a question that is not fully baked.

Even deletion is not the death of a question; three community members with 10K reputation can restore a deleted question by voting to undelete.

Encourage being helpful rather than critical

We do. In fact, that's what the Summer of Love is all about, despite efforts by several people to hijack that conversation for something else.

The problem is, we can't help the help vampires. Many of the rules were put in place as general guidelines to dissuade those people, and unfortunately every time we make an exception in the name of being nice, the help vampires point to that exception and say that it's unfair that they can't ask their own crappy question because, after all, you allowed this guy to ask his.

I mention the automated filter, because it's illustrative of how mind-bendingly awful questions can really get. There is a faith sometimes that people will always ask their questions in good faith, without being lazy. That faith is misplaced; there is a large body of rotten questions that you will never see, since they are trapped by the filter.

Most people who debate the relative merits of shopping questions don't realize that the vast majority of these questions:

Are too localized: the information rapidly gets out of date, and is never maintained.

Are too vague: What's your favorite?

Are honeypots for spam, thanks, me too, and other off-topic answers.

Are bikesheds; everyone has an opinion.

Are rep magnets; "I like jQuery, you should use that" is not a real answer, and getting 100 upvotes on such an answer distorts the value of reputation as a measure of community trust.

It takes no effort to write a list question; anyone can do it. It's much harder to write a good, well-thought out question that demonstrates you've put in some effort to not only ask a question that might be useful to others, but also that you've put some effort into helping yourself first.

Create the Stack Overflow Forum for those questions that cannot pass muster

Part of the reason that the Question and Answer format is so closely guarded is that it produces results.

In the blog post, someone essentially said that hey, I could get my answer from a forum, why can't you be more like a forum? Take a close look at those forum environments. On reflection, have you found any of them really useful to you at all? Can you count on the fingers of one hand the times when posting to a forum really gave you a timely, meaningful answer to your problem?

Recently, I googled "Ford Taurus 2005 won't start when hot." Do you know how many matches there are? One million, five hundred and sixty thousand. Do you know how many of those matches actually impart useful information? Exactly zero. Well, zero in the first two dozen matches anyway.

Why is this? Because those matches go to forums, where dozens of people have posted the same question over and over again, and hundreds of people have posted countless useless answers to that question, including

Stack Exchange is a known solution to a known problem. The question and answer format is carefully crafted to encourage the posting of high-quality material.

The forum environment is exactly the opposite. It is a vast wasteland of suck, promising everything, delivering nothing. It is the Sahara desert, where you walk towards an oasis because you are dying of thirst, but it is just a mirage, and there's no water there.

RH, despite my dislike of your "my way or the highway" comment over yonder I think this is a good response. But the problem remains: "list" or "how do I do this" are still important questions. There are a ton of people who would like to get recommendations from their community on a good C# book. Or on a javascript widget that does something or other. Google will only give you the answers that are either immensely popular, or well SEO'd. SO is a community that lives and breathes this stuff, why isn't there a way to ask that community for their advice?
–
jamietreAug 10 '12 at 20:00

8

Because 95 to 99 percent of such asked questions are just terrible, for the reasons I already mentioned. The Q&A format is supposed to help condense information and raise the signal to noise ratio; these questions have the opposite effect, which is why they're categorically disallowed, even though occasionally someone asks a real gem that draws an excellent, comprehensive answer from Eric Lippert.
–
Robert HarveyAug 10 '12 at 20:06

I'd argue that 95-99% of ALL questions are terrible and/or duplicates. I mean there are over 3,000 questions returned for "jquery hidden element". OK they're not all the same question but a lot are. These questions can be more difficult to manage, but they still provide extremely valuable information, is the solution just to avoid them entirely?
–
jamietreAug 10 '12 at 20:10

That's a big-city problem, one which Shog9 discussed briefly on the blog. To an extent, it is what it is; certain questions tend to be duplicated a lot. It's an as yet unsolved problem; we have the concept of Canonical Questions, but it's not fully baked yet.
–
Robert HarveyAug 10 '12 at 20:14

3

Also, you weren't here two years ago, before the filters were put into place. Trust me, you haven't seen really bad questions. Those questions make the questions you consider terrible look like diamonds in comparison.
–
Robert HarveyAug 10 '12 at 20:17

Well I wasn't here but I've been programming computers since comp.sys.* was the place to get answers. Believe me, I've seen lots of crap. I have no interest in making the crap storm worse. My duplicate proposal from 2 million questions ago: meta.stackexchange.com/questions/88447/… .. I still think THIS is the real problem. Maybe it's unsolvable but fixating on imperfect questions is like closing a screen door to stop the tsunami. It's not the real threat, and it has negative consequences.
–
jamietreAug 10 '12 at 20:26

2

@jamietre You seem to have the opinion that SO should be able to solve every single programming question/problem that anyone could ever have. The designers of the site disagree. They have chosen a more specific scope to address, and have chosen to solve the problems within that scope as best as possible, rather than having a much broader scope that it is less effective at solving. "That just doesn't belong on SO" will be the answer to a lot of questions, and that shouldn't change.
–
ServyAug 10 '12 at 20:26

1

@Servy, I realize that. I'm not here to have someone explain the rules to me, I'm trying to make a case that some kinds of questions that are relevant to the industry, and difficult to answer through independent research, should belong somewhere on SO. If the rules can never change, and nobody wants to discuss them, then that should be stated somewhere so people like me won't bother bringing it up.
–
jamietreAug 10 '12 at 20:29

7

It's not so much that the rules cannot be changed, it's that some of the issues you bring up have already been discussed in excruciating detail already, over an extended period of time. For awhile we even had Community Wiki, a compromise that was supposed to end the war between the inclusionists and exclusionists once and for all. We created the perfect world, where no one would suffer, where everyone would be happy. It was a disaster; no one would accept the program. Entire crops were lost.
–
Robert HarveyAug 10 '12 at 20:37

@jamietre The rules in general can change, sure, but these specific issues you've brought up have all been discussed (at length) and the result is what SO is today. I haven't really seen anything in this question that hasn't been brought up in those existing discussions. I also haven't seen you address most of the problems your suggestions brings up (either in answers here, or from previous discussions). You pretty much seem to just be saying, "They're asking for help so we should help them, and that's enough of a reason."
–
ServyAug 10 '12 at 20:37

2

@jamietre: "I'm trying to make a case that some kinds of questions that are relevant to the industry, and difficult to answer through independent research, should belong somewhere on SO." The problem is two-fold. First, you haven't made the case that these questions must be answered by us. SO does not have to be everything to everyone. Most importantly second, every suggestion you propose that "fixes" the problem also leads inevitably and irreparably to an influx of crap questions. Sometimes, you have to cut out some healthy tissue to get rid of a tumor.
–
Nicol BolasAug 10 '12 at 20:38

3

Some questions may get closed too quickly; however, Stack Overflow has 5,600 new questions a day. A feature request suggesting that every one of those questions needs to be protected from closing for 24 hours will meet... resistance. Of the downvoting kind. And rightly so.
–
PëkkaAug 10 '12 at 20:56

1

@Robert Harvey - That makes sense, but it still doesn't address the problem that led to my original proposal for dups last year: the difficulty in finding questions you want to answer. My participation on SO has gone way down.. sometimes I can surf questions for an hour and find nothing that isn't "how do I do something basic in C# or javascript" that's a duplicate and is already answered anyway by the time I've finished reading it. It's too much work to find interesting questions. (Yes contradictory to other parts of my post in some ways - but dups are a much larger % from what I see)
–
jamietreAug 10 '12 at 21:01

1

@Robert Harvey I confess I have not once set eyes on programmers. I barely knew it existed until this discussion. But that kind of brings us back to a point made by someone over on the blog post today: there are too many SO sites. Questions get kicked around. It's confusing. What is the point? Is SO better by having "programmers" and "code review" and "stack overflow" and whatever else there might be, instead of keeping the, under one roof? Seems like merging them all would barely affect the overwhelming traffic on SO, and make things less confusing for all. Just a thought..
–
jamietreAug 10 '12 at 21:08

3

@NicolBolas: The situation is not helped by those people on Programmers.SE who still want to roll back the clock to the "Not Programming Related" days, and actively pursue that goal on their meta site.
–
Robert HarveyAug 10 '12 at 21:42

That has been tried. That way lies Yahoo! Answers. This idea of letting people do whatever they want has been beaten to death. When Stack Overflow launched the rules were far more lenient. The rules we currently have in place were developed because that didn't work.

Later, other people really, really wanted to ask subjective questions, and eventually convinced enough people to createProgrammers. And that was the disaster most people predicted, until they started raisingtheir standards.

the lines along which they are divided.. that is, moderators, and not moderators.

Are they? Because I'm not a moderator and I happen to generally agree with them.

Remember: people aren't going to bother arguing a point if someone else is arguing it for them. The fact that the moderators seem to be defending their position doesn't mean that they are alone in holding that position.

Sometimes you're new to a particular environment or just feel like there must be a better way to do something but you don't have more to go on than "what's the best way to do this."

Then you do not need to be on Stack Overflow. It's important to understand the difference between Q&A and help. Q&A is about providing information. Help is about helping someone understand something, which generally requires either a book, a teaching environment (ie: a dialog), or for someone to spend lots of time assimilating information on their own.

Q&A is not a first stop for someone who has no idea how to ask. If you don't have anything more to go on than "tell me the best way to do X", then you're not ready for Stack Overflow.

Stack Overflow isn't for everyone. And that's OK.

For example, this one that I happened to read the other day, got five downvotes in as many minutes, the "what have you tried", and a ton of comments having absolutely nothing to do with answering his question.

Crappy questions attract crappy comments. Garbage in, garbage out.

Now I won't say that this question was perfect by any means, but it was

Written in perfect English sentences

Formatted well

Clearly posed as a question with example code

Posted by a relatively high-repped used (not that this should matter).

... and? It was a garbage question. Yes, it was a legitimate question, but it's a low-quality question. Any programmer who has passed intro-to-Javascript-programming can answer it. The algorithm is simplicity itself. Asking it represents doing zero research effort.

It's a crap question. It is a question, which is why it isn't closed. But it is not something that should ever be encouraged or rewarded.

It was obvious to me upon reading his question what he was asking. The criticism was nitpicking. I think we would all be better off it a lot more energy was spent on answering questions (or, if you prefer, editing them) than it is on downvoting and nitpicking questions that are just not perfect.

I'm glad it was obvious to you. But the fact that you managed to predict the user's actual question does not change one simple fact: that's not what he asked.

He changed his question in such a fundamental way that it invalidated every legitimate answer to the original one. That's 100% his fault; he asked the wrong question. Thus, he got wrong answers.

The person asking the question has the ultimate responsibility for the quality of it.

Second, don't allow questions to be closed until they've been on SO for 24 hours or some other period of time. Give people a chance to revise their question and respond to criticism. If the point of closing questions is for the record of historical data quality, what difference does it make?

Jesus Christ no.

We do give them time to revise the question. They're perfectly free to do so after it is closed. Closing is not permanent. Closing is to prevent people from answering an inappropriate or malformed question.

Also, you seem to forget that there are plenty of questions that should be closed. Permanently.

Fourth, if you just can't abide by any of this, then create the Stack Overflow Community Forum. Where you can ask any programming-related question you want. Exactly the same as Stack Overflow but nobody can close questions. Instead of questions being closed or deleted, they are migrated to the Community Forum.

And who would ever look at it? It would be a wasteland of garbage, a cesspool. Why bother wasting time sifting through crap when people who can learn to follow rules have real questions that need answering?