61

It seems like many questions by new users are downvoted immediately. Sometimes there is a comment to the tune of "lacks research", "we're not here to do your homework", or "show us some effort".

Now I wonder, what does it matter how much work someone has done before posting? If someone can ask a good question in 5 seconds, more power to them.

To illustrate this point, look at how you could "improve" a question to include proof of effort. You could put in 5 failed code snippets and their in- and output. This would make for very long questions with a high noise ratio.

Another suggestion is to add "research". By "research", I suppose most programmers mean "Google". So this is basically a suggestion to add a list of fruitless Google queries. That doesn't sound interesting either.

How can "proof of effort" turn a bad question into a good one?

18
  • 8
    That's what I've been thinking -- often a good general question is turned into personal debugging service when the OP's attempt is added.
    – JJJ
    Commented May 4, 2013 at 14:35
  • 24
    respective pro-forma-comments attempt to explain this as follows: "Sharing your research helps everyone. Tell us what you've tried and why it didn’t meet your needs. This demonstrates that you’ve taken the time to try to help yourself, it saves us from reiterating obvious answers, and most of all it helps you get a more specific and relevant answer. Also see How to Ask"
    – gnat
    Commented May 4, 2013 at 14:42
  • 5
    @gnat that's the party line but I think it's wrong, and the OP is right. Maybe I can solve my own problem in 20 minutes. And so can the next guy. And the next girl. Or I could give up, post to SO, have someone answer in a minute, and save the next guy and the next girl those 20 minutes each, since they did the same Google search. Which is the actual point of SO.
    – djechlin
    Commented May 4, 2013 at 14:46
  • @djechlin we discuss How can "proof of effort" turn a bad question into a good one?, not how to best help the poster. I referred canned comment strictly from this perspective
    – gnat
    Commented May 4, 2013 at 14:51
  • 20
    @djechlin and what if everyone does it like that? What happens when everyone just gives up? Who will give the answers then when no one is willing to do any research on their own? Stack Overflow is for professional and enthusiast programmers. If you give up, Stack Overflow is not for you. Doing research is an essential skill for professional developers.
    – Gordon Mod
    Commented May 4, 2013 at 15:32
  • @Gordon I covered this in my answer below. Effort needs to go into ensuring you have a useful question, but once this is accomplished and conveyed it's okay to post on SO even though you aren't totally out of ideas for what to do.
    – djechlin
    Commented May 4, 2013 at 15:39
  • 2
    I agree with you. I don't see that adding invalid attempts to this question would in any way improve it for example despite the comment requesting that they should do that. Commented May 4, 2013 at 18:24
  • 6
    @MartinSmith but saying: "I tried to adapt the code in stackoverflow.com/questions/14783680/…", even without showing the failed code, shows that the OP at least did some research and that the question is not a dupe of that. Including what you have tried shows you are not just some lazy OP coming here to get teh codez.
    – Gordon Mod
    Commented May 5, 2013 at 6:59
  • 1
    @Gordon - So if the expectation is that every question includes details of "what have you tried" so we can make some value judgement about the laziness (or not) of the questioner why not just make this a separate mandatory field? Commented May 5, 2013 at 12:23
  • @MartinSmith because we already have a perfectly good and easy way to enter that information along with your question. Why complicate that?
    – Gordon Mod
    Commented May 5, 2013 at 12:40
  • 1
    @djechlin Stack Overflow is for professional and enthusiast programmers (and I've written about what that might mean in this answer). Someone who gives up without spending 20 minutes on problem is hardly professional, and doesn't seem at all an enthusiast. Commented Nov 27, 2013 at 18:22
  • 1
    @JoshuaTaylor I often post a question when working on it for less than 20 minutes, get upvotes, often continue researching (not always) and self-answer. I a professional programmer.
    – djechlin
    Commented Nov 27, 2013 at 19:04
  • 1
    @djechlin The tooltip on the upvote button says "This question shows research effort; it is useful and clear" I won't say that such a question asked after less than 20 minutes might not be useful and clear, but it sounds like it lacks it research effort. Commented Nov 27, 2013 at 19:24
  • 1
    @JoshuaTaylor in my answer I claim, "The point of research effort isn't to say "I deserve an answer", it's to say "this question deserves to be here." e.g. to make sure the question can't be found on a simple Google search, just by thinking about it a little bit or trying obvious things, etc. That being said this has very little to do with time spent. As a professional programmer I can often tell in < 20 minutes that a question is unasked even in a general form, and will require significant research to solve. In those cases I post and often continue working on it.
    – djechlin
    Commented Nov 27, 2013 at 19:28
  • 4
    related: meta.stackexchange.com/questions/210189/… and meta.stackexchange.com/questions/202421/… - the point is not "qualify for my help or I reject you" but "show me where I need to start to help you" Commented Jan 29, 2015 at 18:10

13 Answers 13

72

It doesn't necessarily make the question better, though it can do so; in general it provides three things:

  1. A solid indication of what the poster is attempting. This, hopefully, fills in the gaping holes in their explanation of their problem. You can look at the code in addition to the explanation to try to determine what's happening. In the same vein, if the OP has an error message that they're trying to get help with the code that generated the message is invaluable.

  2. In more complicated cases it narrows down the options. If the OP is attempting to solve a problem that has two possible avenues to approach it; they then demonstrate they've tried one of those approaches then people answering can ignore that one and only have to concentrate on the other. Equally, by demonstrating the approach, potential answerers may be able to find an error with the manner in which the OP attempted to solve their problem, thus making the solution a lot easier.

  3. It proves that the OP is actually worth helping. I know that some may disagree here but "gimme teh codez" is not the best way to introduce yourself to a community. A demonstration of effort proves that they're willing to take the time to help themselves first.

In short, it's polite to do so. It shows you're actually engaged and it helps others to help you quicker and better, which is the point of the entire site.

Lastly, if you show your code then you may get unexpected help. Someone may notice that you're using a deprecated function or that there's a more efficient method of doing something. It's a side effect but can help the OP to improve, should they wish to do so, and signposts to people coming to the question later that there may be a better method of doing something.

14
  • 3
    So a bad question asked by "someone worth helping" is actually a good question?
    – Andomar
    Commented May 4, 2013 at 14:44
  • 4
    But I thought the whole philosophy behind SO was the OP doesn't really matter. It's for future visitors. Why clutter up a perfectly concise question with some irrelevant guesses as to what to do?
    – djechlin
    Commented May 4, 2013 at 14:44
  • 1
    The assumption that they're irrelevant is a pretty big one @djechlin. Commented May 4, 2013 at 14:46
  • 24
    No @Andomar, as I say "it doesn't necessarily make the question better". It can make an incomprehensible question comprehensible and thus enable someone else to edit it into shape. IMHO it's as much about the social graces as the gain to potential answerers. It's simply not polite to dump your crap question onto SO without at least a cursory attempt to solve it yourself. Commented May 4, 2013 at 14:48
  • 3
    DV because I don't think it's necessary to moralize the OP. We're trying to create a longterm repo and whether the OP "deserves" help or "has shown some grace" above acting professional is frankly irrelevant to that goal. "Show me teh code" is a bad question for plenty of reasons besides whether the OP is deserving. But I am seriously concerned about the use case where a problem takes 20 minutes to solve on one's own but someone on SO can answer in 2 - it's okay to post on SO before exhausting one's options or no one would ever post anything here.
    – djechlin
    Commented May 4, 2013 at 15:42
  • 12
    @djechlin Concise does not necessarily mean good. "How to turn 2008-12-31 into a timestamp with PHP" is a perfectly clear and concise question. But it's also easy to google and there is a bazillion duplicates of that on Stack Overflow. So if an OP needs to ask that question, he better makes clear ("clutter") why he has to ask this question yet another time. And if the reason is just because he was too lazy to do research, then he deserves any downvotes we can spare, because he is wasting your time and my time and the time of all the people who are waiting for answers to real questions.
    – Gordon Mod
    Commented May 4, 2013 at 15:43
  • 5
    I don't completely disagree with you @djechlin, but I honestly think that if someone isn't willing to spend 20 minutes solving their own problem then they shouldn't be in a field that requires any problem solving. Commented May 4, 2013 at 15:45
  • @Gordon I agree and don't see how that's relevant to my comment.
    – djechlin
    Commented May 4, 2013 at 15:45
  • 1
    @benisuǝqbackwards YMMV. 20 minutes is probably achievable for a problem in figuring out how to use a new API from a third party. Debugging your own code that's been working a while? No, you might need to spend a few hours pouring through your logic and logs before you have isolated weird enough behavior it makes sense to turn to SO for help. In either case the programmer should be judicious and savvy enough to notice when a problem is general and publish how to deal with it - asking a question on SO is a form of publication.
    – djechlin
    Commented May 4, 2013 at 15:48
  • Also I think you made a very good point that more effort shown gives more avenues by which to help you. "Here is a general question, here are the 20 things I've tried" can lead to "you fat-fingered the 7th one, try it this way" and a solution.
    – djechlin
    Commented May 4, 2013 at 15:49
  • @djechlin you asked why clutter concise questions. That's what my comment was aimed at. To phrase it with your own answer: sometimes concise needs the clutter to "prove a question deserves to be here".
    – Gordon Mod
    Commented May 4, 2013 at 15:55
  • @Gordon I think you're right. A lot of "clutter" I've seen on SO questions has been precisely what's told me I found the right question, usually when I think "hey I tried that too." This is especially important if the question is unanswered, because it tells me SO doesn't have an answer yet.
    – djechlin
    Commented May 4, 2013 at 15:58
  • 1
    @djechlin - Looking at the comment backwards ben replied to, I'm not sure I see where he was trying to "moralize the op". I sort of feel like you and ben are in agreement, but perhaps you're just misunderstanding each other's point? Or, maybe I'm just missing the point and am confused. Can you clarify which of the three points you're disagreeing with? Is it point #3? Thanks!
    – jmort253
    Commented May 4, 2013 at 22:16
  • @jmort253 third point but I feel dmckee makes this point more clearly. Beyond that I'm kind of going to consider this topic exhausted :P I'd flip or at least remove my downvote if there were an edit (and yes, this does help prove me wrong on another meta post I have floating around somewhere).
    – djechlin
    Commented May 5, 2013 at 23:32
47

The goal of SO is to create a long-term repository of useful questions and answers. Research effort is to make sure the questioners are contributing to this as well as the answerers. A stereotype of SO is it's a bunch of answerers doing a bunch of free labor, but the great trick we've pulled on everyone is, the questioners are doing free labor as well. And we have upvotes and downvotes to put pressure on them to do so.

The point of research effort isn't to say "I deserve an answer", it's to say "this question deserves to be here." I think the heuristic by which to measure this is, "will this question's existence on SO make it easier for people to solve this problem faster?" So in many cases, googling for other answers is a big part of research effort. I'm about 9k currently and usually if I stumble with a new problem in a Java API or Node or something, and it's not apparent what to do, and I can't find it within five minutes of poking around or Googling, my next thought is, "Wait a minute, other people are going through these same stupid attempts, this should just be on SO somewhere." If I were less experienced those 5 minutes might take 30 (and I'm not claiming my judgment is perfect).

So my research effort very often consists of, "I tried the obvious APIs, looked for similar questions on SO and read the official doc and it didn't work." Sure, I could have fired up a debugger, stepped into library code, found a hidden feature, etc., and solved my own problem within an hour, but why would I do that when I have this lovely Q&A resource right here with people who have done this already? And heck, if no one can solve it, then when I do, I'll post my own answer and do both parts of the Q/A team.

As an answerer, I like to know this work has been done already. Don't make my first step to find your question on SO already by a highly similar title - that's a downvote. Don't make me link you the Javadoc for a standard library method and quote it and plug it in - that's a downvote. The downvote doesn't say "you don't deserve an answer," it says "you didn't do your part of creating a useful Q/A pair."

Conversely, if you can't really understand a stack trace for a NullPointerException in your Java code, then yet another "read my stack trace and tell me what it says" question isn't going to be useful, and we're going to tear you apart with comments saying, "Did you google NullPointerException? Did you read your stack trace? Did you look at the line the problem is on?" Or, if the answer requires a very dense long explanation (e.g. explaining the difference between pointers and arrays), then there isn't really any reason to assume the SO answer is going to be more useful than resources (like textbooks) already out there. As I've claimed, for me, 5 minutes of research is enough for a good SO question to be more useful to the next programmer, but on occasion really I need to go spend some time self-learning a new language (and I've recently had downvoted Node questions for this) before expecting SO to be particularly useful.

9
  • 5
    If your goal is "a long-term repository of useful questions and answers", wouldn't you want to make questions as generally applicable as possible? Proof of effort does the exact opposite-- it turns a general question into a debug-log of one specific person's problem.
    – Andomar
    Commented May 4, 2013 at 15:22
  • 4
    @Andomar wait what? I said it's better to think of proof of effort as something that ensures it's a useful (and therefore generally applicable) question. That was kind of my whole point.
    – djechlin
    Commented May 4, 2013 at 15:51
  • @Andomar although on reflecting on ben's answer I think that's incorrect. A good question is 1. general question, 2. specific debug log as hooks for good answers, and is ideally written clearly enough future visitor can gloss over (2) and jump to the answers. But also that debug log does convey to the future visitor "hey I tried the same things, this is really relevant to me." Which is important.
    – djechlin
    Commented May 4, 2013 at 15:54
  • The problem with my answer thus far is it assumes high domain expertise on the questioner. The "sloppier" forms of research effort are a useful way to bridge the gap... I may edit this in at some point.
    – djechlin
    Commented May 4, 2013 at 16:02
  • Of course putting effort into a question typically makes it better. The question is, does adding proof of that effort make the question better.
    – Andomar
    Commented May 4, 2013 at 16:08
  • @Andomar I'm inclined to think 1) yes for reason's in ben's answers, e.g. it gives people more ways to help you and contains lots of juicy information, and 2) the specific question not necessarily but it makes the community better by making sure questioners are stepping up. But I think in practice they converge. It's pretty often hard to ask a useful, answerable question while not including any work you've done, although I've seen exceptions.
    – djechlin
    Commented May 4, 2013 at 16:12
  • 1
    @Andomar: It's definitely hard to write a question that perfectly splits the difference between "How do I make my table view shiny and scroll backwards?" --> too broad, and "I tried to make my table view scroll backwards with this code, and I got this stack trace." --> too localized. It's a really tough balance to achieve in order to make an excellent question. We seem to have come to the group conclusion, though, that more often than not, when an asker spends some time looking for her own solution, the question elicits better answers and is more useful to future readers. I don't think this
    – jscs
    Commented May 4, 2013 at 18:17
  • @Andomar (cont'd) has to mean a code sample, though. It just means the kind of research djechlin is talking about (look through docs, hunt up a couple of similar SO questions, maybe fire up the debugger for 5 minutes). That may be enough to give one a clearer view of the nature of the problem such that the explanation in the question can be both more precise and accurate, and much more helpful for answerers trying to understand where you're at in terms of your knowledge of the problem space.
    – jscs
    Commented May 4, 2013 at 18:20
  • @djechlin Long time past since. But nevertheless Thanks for your great comments and answer! I have the similar view and I shared it with my own examples in this answer Commented Jun 18 at 16:50
22

Among the many banes of any subdivision of the internet that get a reputation as a place to go for help are

  1. Repetition of the same questions over and over again
  2. People who are happy to suck up the sites resources of helpfulness without limit because they can't be bothered to think for themselves

The requirement to show some work isn't there is make a bad question a good one, it's there to keep you from asking a bad question at all by helping you to find the answer without asking it.

Further it is helpful with respect to #2 exactly because the laziest cases find it frustrating to have to work---even the least little bit---for what they get.

So, it's all upside as far as I can see.

4
  • Yes, this is basically why "what have you tried" exists. It's not all upside, though; "what have you tried" tends to make questions more localized than they should be.
    – user102937
    Commented May 4, 2013 at 16:55
  • 3
    It's a hard balance, for sure, @RobertHarvey; it would be nice to be able to roll back the "plz show the codez" attitude just a little bit towards "please explain, in English, your current understanding of the problem" but on the whole I think the effort requirement does more good than harm.
    – jscs
    Commented May 4, 2013 at 18:24
  • 2
    It takes courage to ask your first question on Stack Overflow. It's also the time that you take downvotes most personally. By treating new users badly, you only scare away the good ones.
    – Andomar
    Commented May 5, 2013 at 12:49
  • 10
    "It takes courage to ask your first question on Stack Overflow." Oddly enough I understand where you're coming from on that front, but the evidence on the ground is that it doesn't take much courage at all. Indeed, many people out there seem to have no shame at. The people who have any apprehension are the ones who care about the community's standards; I'm not worried about them asking a bunch of crap questions, they can learn. Commented May 5, 2013 at 19:53
16

Proof of effort is actually tremendously valuable. It shows:

  1. Where is the questioner coming from.

    What assumptions are they working with. What existing constraints are they working within.

  2. Where is the questioner going to.

    What are they actually trying to achieve. Sometimes people get very hung up on a small point when it is far better for them to back up a little and try a different route to their real goal.

  3. Where the questioner is actually at. Not just where they think they're at.

    I have seen it quite often be the case that what is really going on is nothing at all to do with what the questioner thinks is happening.

It also shows that the questioner isn't some lazy-ass help vampire, but that's less of a problem than you might think since you are never answering questions just for them. Remember to try to make the answer to the question useful for others as well. (I tend to let help vampires just talk to themselves; they're a bit frustrating, but life is sometimes like that.)

2
  • 2
    Don't think comments like "I'm facing a task that I am unable to solve." or "I have used my notes / W3schools and google and can't find the issue." are valuable at all. They're not much proof either.
    – Andomar
    Commented May 5, 2013 at 17:05
  • 6
    @Andomar Correct, saying that you did research means nothing and is not helpful at all, to anyone. What's much more important is to show your work. Show an example of something you tried that didn't work, for example. Also note that the research isn't applicable to every single question. When I see a question I'll know if a simple google search will yield a good answer. If it would, I know the OP didn't bother, so I'll say "what research have you done" because I know if they try at all they'll answer their own question. If I know the answer won't be found on Google I won't bother to ask.
    – Servy
    Commented May 5, 2013 at 17:11
12
  • Proof of effort does not make a better question.
  • Clear examples of what has been tried or researched makes a better question.

Clear examples are created by effort.

Effort does not always create clear examples.

10

"Proof of effort" makes the QUESTIONER better.

Suppose there are two comparably "bad" questions. One of them is a one liner. The other is a multiparagraph effort from someone who has obviously "tried." Which person is more "correctable?"

To take an example from the "outside," I once had a "problem" in my co-op apartment. In discussing the matter with the President of the Co-op board, he said, "Our nightmare scenario is someone who has a problem, who won't admit he has a problem, who won't do anything about the problem, and who won't let us do anything about the problem. Those are the people we have to take to court to throw out.

"You've done two out of three. You admit that you have a problem, and you've done what you can about the problem. From those two facts, we infer that we will be able to work something out with you." (We did.)

A person who has "problems" but shows "research effort" has "done what he can about the problem," (and implicitly admits that he may have a problem). Those are the people that are more deserving of the site's helping them to fix their remaining problems.

1
  • 2
    This is what I was going to post. Personally, I think this is the biggest reason to require research effort.
    – MadConan
    Commented Jul 13, 2015 at 17:37
10

Requiring effort makes it less likely the question will be asked in the first place.

I can't count the amount of times I have put effort into asking a good well researched question, and in the process worked out the answer. I think figuring out the answer yourself makes you a better developer than having somebody give you the answer, regardless of how good your question is or how good the answer is.

I would argue that one of the primary purposes for StackOverflow generally is to make us all better at what we do, which drives up standards and quality, and generally makes the industry a better place to work in.

If StackOverflow had a more lax attitude on this, I reckon I wouldn't bother. I would ask a lot more can I haz teh code plz questions and would advance slower as a developer. I might get code working faster, but would learn a lot less, and would struggle with the same problems again when I run into them in the future.

Having to work things out yourself, and to really explain yourself and what you are trying to do/what you have tried already when you do need help leaves a much clearer image in your memory, and makes it much more likely that you will learn something.

2

"Proof of effort" doesn't necessarily make a question better. However, the main reason behind "show us some effort" comments might not be an attempt to make a particular question better. These comments may also be attempts to verify that the question is asked with the intent of learning.

SO questions (I don't have experience with any other SE networks) don't exist each in its own vacuum, they are together a medium in which the SO community lives. Questions asked without the apparent intent of learning poison the medium, because if they're answered, it looks like encouraging the "ask before you think" mentality.

For me personally, this is the breaking point. If my time spent creating an answer is to have some meaning, I need to see that it helps make the person asking the question better. I'd rather make one person a better programmer than save time of ten people who don't care about improving themselves.

In conclusion, suggesting that a poster shows an intent to learn by putting some effort into solving the problem before posting a question is useful in maintaining the "culture" of the community. As such, it may be helpful even if it in itself doesn't make a particular question better.

0

I think that this "proof of effort" has damaged the community.

If you don't post proof, people auto-assume that you didn't try anything and just want your stuff done for you, regardless of how you tried to ask the question.

I tried more than once to post a clean question, objective, direct, but as I didn't pollute my question with my wrong attempts, assumptions, people auto-downvoted it without considering anything.

So "proof of effort" in my point of view is not required, it has nothing to do how good or bad the question is. What matters is if the question has enough information of what you are trying to do.

Our answers are not just to who asked, but to everyone who will find the question at some point and find it useful. It hurts the community to erase good questions just because the OP didn't proof something.


Questions with upvotes and answers without any kind of proof of effort

TODO: add more as I find new ones

3
  • 6
    I learned not to answer this type of Q after being met with: thanks, but I've already tried that ... ... Well, hello, why didn't you say so in the first place?! Basically, it's a waste of everybody's time not telling what did you try.
    – brasofilo
    Commented Dec 18, 2013 at 8:19
  • If you genuinely did try, then why didn't you post that in your question. It adds like 5 minutes to the time it takes to write your question and can help future readers confirm they are looking at precisely the same issue. If you didn't even try then the chances are you're asking something that has 1010 trivial tutorials on the internet. Giving the next person the one thousand and eleventh trivial tutorial at the bottom of their google results won't help them much. Commented Aug 6, 2020 at 15:13
  • I probably deleted my attempts and/or forgot about this topic. I gave up on this community many years ago, you can see by my activity.
    – BrunoLM
    Commented Aug 6, 2020 at 17:11
0

Proof of effort doesn't turn bad questions into good ones. It turns bad questions into questions that don't get asked to begin with, and it turns the person asking the question into someone who doesn't ask bad questions.

If the person asking the question doesn't at least reference effort they've gone to (e.g. "So, I googled this for about ten minutes and it got me zilch...") then it's safest to assume that they didn't bother to make an effort. In which case, their question is more likely to be a duplicate, or a piece of clutter that would only help the exact demographic who wouldn't bother to look for it to begin with.

In other words, if a question is so simple that anyone who did a couple seconds of research would find the answer, then people who have that problem fall into one of three (disjoint) camps:

  • people who would be willing to do the two seconds of research to find the answer, and thus don't need / wouldn't benefit from an additional post on SO to help them out,

  • people who wouldn't be willing to do the two seconds of research to find the answer, and thus wouldn't find the SO question even if one were to exist, and thus won't benefit from an additional post on SO to help them out, or

  • people so completely clueless that they probably wouldn't understand the SO answer, anyway, and thus won't benefit from it.

Since these no-research questions wouldn't benefit any of the above groups, and those are (AFAIK) the only groups, there is no point to such questions.

-1

It doesn't make the question better, it just indicates whether the poster is a person worth your time and effort.

Of course, if the question is really clear-cut there is no need for any proof of the sort, but most questions require a bit of back-and-forth to make the either the question or the answer clearer - or both. In that case it is really important to get an indication that the asker is able to grasp the information and also that he or she is not a help vampire that will suck you down a maelstrom of ever more tangential questions.

It is my theory that the working of SO (and the rest of the SE network) is based on an assumption that people who ask a question understand what they are asking. Explaining what you have done serves to verify that the asker satisfies this basic assumption. Coincidentally, I also believe that this is the point where the impedance mismatch between the sea of newbie posters and the more experienced users happens, but that is for another discussion.

You could say that view expressed here is somewhat derogatory - and you'd be right - so let me finish on a more constructive note:

Knowing what a person has already done helps understand where they are on the learning curve of the topic, and makes it easier for someone who wants to provide real help to target an answer to the asker's current level of knowledge of the domain.

-3

Here's another example of a downvote bonanza. The new user posts a question that is actually hard. Six out of nine answers are incorrect. Three are correct, and one of them (Strawberry's answer) is new and original even to me, and I've hung out in the SQL tag for years.

Despite being interesting, and a learning experience for many, the question was downvoted and closed. The question exhibits "foreignness": the title and formatting were bad, and the beef of the question is below the code snippets. The inside crew responds to that with downvotes and closes.

This allergic response is justified by requiring "proof of research". But adding research effort to a question like this doesn't help anyone. The proof would dilute the question with a personal, localized debug log. Stack Overflow was meant to produce generally useful Q&A artifacts. Requiring "proof of research" accomplishes the opposite: specific and overly long questions.

And there is no clear way to "proof of research". As illustrated by the 15+ comments, people disagree on what the threshold for "enough effort to be worthy of help" is. (The comment discussion was rightly removed by a moderator.)

The requirement for effort dilutes and localizes questions, and invites ad-hominem discussion. Questions should be judged on their objective quality, not on the subjective worth of the OP.

8
  • "The assumption must be" - now who's making assumptions?
    – AakashM
    Commented May 7, 2013 at 11:41
  • 2
    Heh. The official description of "not a real question" actually opens with "It's difficult to tell what is being asked here" - so if you don't understand a question you might be led to think that you can legitimately close it as NARQ. Way better feeling than admitting your analytical skills are limited. Anyway, it is not a great question - just throwing sample data and a desired output at people is neither a good way to ask a question, nor a great way to specify software.
    – Monolo
    Commented May 7, 2013 at 12:15
  • @Monolo: I agree it's not a great question, but "best student per class" is a good requirement. It's easy to tell good and bad answers apart.
    – Andomar
    Commented May 7, 2013 at 16:07
  • 7
    You feel that your example question is of high quality? I disagree. It is one person posting one person's problem. The end result is a bunch of code only answers that only solve that one person's problem. If anything that question is "too localized". It's not a question that even allows for explanation. That it's a hard problem to solve doesn't change the fact that it's only solving one person's problem instead of improving the knowledge base of the internet at large, which is the true goal of Stack Overflow.
    – Servy
    Commented May 7, 2013 at 16:11
  • @servy: only one person in the world has the geatest-n-per-group problem? Get real.
    – Andomar
    Commented May 7, 2013 at 16:16
  • 8
    @Andomar He didn't ask for a solution to that problem in general; he just says that he has this input and he wants this output. If the question is generalized and otherwise improved such that it more clearly applies to a larger audience and is likely to result in answers applicable to an equally wide audience then the question could be a great question. As it is, it's not there. This is likely a question that is well suited to being improved such that it could be reopened however, should it be appropriately improved.
    – Servy
    Commented May 7, 2013 at 16:20
  • As an aside there's really only two correct answers. Meherzad assumes there can be no ties. Also the first person I saw use anti-join on inequality was Bill Karwin here Commented May 14, 2013 at 18:47
  • Similar to servy's comment, this question is never going to show up in someone else's search results. But it does smell a bit of a homework question, so the answers really only result in some poor tutor having to change their test questions. Commented Aug 6, 2020 at 15:20
-6

How does "proof of effort" make a question better?

Bottom line: It doesn't make it better in any way.

This question does not show any research effort — In my opinion this is nonsense comment on downvote button and should be removed. The same with upvote button that has comment: This question shows research effort.

Almost any question with enough research effort just cease to exist instantly and there will be no any need to post it since the answer is already found. In my experience any searchable by related keywords question with unique name and understandably formulated text and examples is a good question. Because it helps to save time for finding solutions instantly for everyone further without putting any additional efforts. The difference is like with access to database by means of indexes and by means of full table read.

Not upvoting or, even worse, downvoting questions that "do not show research effort" kills motivation in people for sharing their experience, demotivating them to post new questions. And questions are more important than answers because they like parents for holding the answers. Without questions there will be no any answers.

I'll give you an example on myself. I'm professional programmer. And I like to share my experience. When I come across with some question or task or notice that some task or question "is not indexed in Google search", i.e. does not have corresponding searchable question with solution, — I create it on corresponding SE site. For me it is not important who will answer this question — myself (just at once as with self-answered questions or latter if question is not yet answered) or someone from community.

The logic is very simple: If I come across some question then latter other people will also encounter it with high probability. And to save their time (in exchange to my reputation) they will be able to use ready solution.

But the logic "in exchange to my reputation" is braking with the absurd "question does not show any research effort" rule. Because instead of thanking to my sharings by upvoting my questions, sometimes appear not pleasant and in my opinion unreasonable downvotes. And this downvotes as I understand come from the most experienced users, gurus of corresponding communities, not from researchers how actually uses SE sites for finding information to solve their own problems.

And gurus are right because my questions in general lacks of information "which shows research effort". And I right from my perspective too: Why should I show "research effort" in the question if I show it automatically by posting my own answer with tested solution (or will post it latter)?

I give some examples of my questions, reaction from gurus on which, frustrated me:

Today I noticed the discussed problem very obviously (not on my question: Why does printing an array with @ using printf in bash only print the first element? - Unix & Linux SE) with 5 upvotes for answer and 0 upvotes for the question. I put my question there in comment:

Why here there are upvotes for good answer (by now 5 not including mine) and there are no upvotes for good question (by now 0 without mine)? Good questions are not encouraged here? Unix & Linux community, what is wrong with you?

I thought that this problem are more related to Unix & Linux community since there are more gurus there (my perсeption) and since I get there more downvotes than on other SE sites. But actually it relates to SO and all SE sites.

Comment from ilkkachu helped me to understand this:

Which good question do you mean? The one above seems to stem from not reading the basics on what printf does and that's not an argument for an upvote, but for a downvote. "This question does not show any research effort" is even mentioned in the hover popup for the downvote button.

For me the above question is good because it solved my problem instantly (even in spite that it was not related to printf). And I do not care about any "research efforts" for this question because they are not affecting me in any way.

This is so unpleasant situation that I decided to document it here. Not to solve it but just to show my observations.

But no offense for me. System probably will not be changed. And no real need for that. Let darkness will do their deeds. And we will do ours.


To illustrate in other words what I wanted to say above I will put related comments of djechlin from under this answer below:

... the OP is right. Maybe I can solve my own problem in 20 minutes. And so can the next guy. And the next girl. Or I could give up, post to SO, have someone answer in a minute, and save the next guy and the next girl those 20 minutes each, since they did the same Google search. Which is the actual point of SO.

I often post a question when working on it for less than 20 minutes, get upvotes, often continue researching (not always) and self-answer. I a professional programmer.

"The point of research effort isn't to say "I deserve an answer", it's to say "this question deserves to be here." e.g. to make sure the question can't be found on a simple Google search, just by thinking about it a little bit or trying obvious things, etc. That being said this has very little to do with time spent. As a professional programmer I can often tell in < 20 minutes that a question is unasked even in a general form, and will require significant research to solve. In those cases I post and often continue working on it.

I'm glad that there are men like djechlin who understand true purpose of all stack exchange platforms and are helping to make dark places more light.

P.S. Nevertheless with this small unpleasantness I think that SO and SE sites now is the best place for experience exchange. Thank you to all of you!


Update

Here @djechlin's answer with elaboration on what was written here in this post.

My applause to his post. He perhaps formulated the point that I wanted to convey here much better.


Related topic about reposting questions and answers as copy-paste from manuals

What is wrong with this? Why not to index on SE sites also questions / answers that can be found in manuals?

What minus I see here people mentioning is that SE is for professionals and professionals must be able to research by themself. And gurus that are helping to people to answer questions are voluntaries who do not want to waste their time on silly questions. OK, I do not see any contradictions here. Let gurus do not answer silly questions if they do not want. Just skip silly question if it is not interesting for you. Leave it to some one who will have time to copy-past from manuals. Why downvote on them? What you want to achieve by downvoting? Just to remove it from your feed like discussed here?

Example of such "silly" question with complaints of gurus in comments is here: How to specify several alternative conditions (OR operator) for single case statement? (Or Alternatively, where is shell case syntax description?) - Unix & Linux SE

They even closed this question. Thanks that I managed to leave the answer (index with solution) before it was closed.

The seconds concern is probably will be in relation to flood of such silly questions which will be occupying space for the storage and will require gurus attention to identify "silliness" of questions in the feed. In relation to storage space there is no problem. One average question / answers page is not occupying more than 10-100 Kb (often less). Nowadays it is nothing for storage providers. Imagine YouTube with almost endless streams of uploading videos and online translations and keeping all of this. Question / answers page is just text index for information, it is super small.

In relation to the second problem with gurus attention, who do not want to see silly questions, it is very simple. I can propose the following feature for all SE sites to address this:

  • When user achieves, for example, 1K reputation score, in his UI inside question page near downvote button, appears button with name kind of Silly question (or Manual copy-past).
  • When anyone presses this button, the question is given hidden silly mark that gets only visible for users who have such button (such achievement), i.e. only gurus.
  • Also with this achievement there is ability to setup the feed with questions in a way that "silly" questions are not shown (appears corresponding toggle button for such filtering).
  • Also can be considered the similar button for particular user if he often bothers you: "Hide questions from user".

This mechanism is very simple for implementation. And all sides (gurus, mid users, researches that come from search engines) will be happy. And I think this must be the primary mission of all SE sites.

14
  • 3
    This reads more like a feature request - something that should be posted as a question in its own right - than an answer to this question.
    – F1Krazy
    Commented Jun 17 at 18:50
  • 4
    One of the downsides of responding to a question more than a decade old is that the answers may not encapsulate the current thinking on the issue. While the text is still in the voting button descriptions, I've definitely seen more discussion about what "research effort" is even intended to mean. Here's an answer I wrote four months ago about this very topic with my thoughts.
    – Catija
    Commented Jun 17 at 19:01
  • 1
    @F1Krazy I wanted to create the question: "Why questions must show research efforts?" But found tons of related questions (dups). The current one was the most upvoted, seems to original. Because of this so far I posted my thoughts here. Commented Jun 17 at 19:17
  • 3
    @AntonSamokat The point of my answer is that there's no network-wide policy about it. Every site has their own set of expectations. There's even a Q&A that attempts to document the policy on various sites. meta.stackexchange.com/a/394496/284336
    – Catija
    Commented Jun 17 at 19:38
  • 3
    It comes to mind that if you have an issue with how people act and vote on unix.SE, you might want to consider posting about it on unix.meta.stackexchange.com so the people actively using the site might be more likely to see your post. I'm saying this because you've listed here no less than three unix.SE questions where you think people have been acting inappropriately.
    – ilkkachu
    Commented Jun 18 at 10:22
  • 2
    but anyway, since you brought up my comment here, I can answer that. I think that "Why does printing an array with @ using printf in bash only print the first element?" question is not a good one, for the simple reason that the answer could have been found by learning the basics of how the printf utility works, and/or by reading the manual (which, admittedly, often refers to the C library function of the same name, so one may need to look there, too).
    – ilkkachu
    Commented Jun 18 at 10:28
  • 3
    Even if that particular question helps someone, I don't think it's too useful to replicate the basics of all common tools on SE, since that information already exists elsewhere, and in case, any new user will need to do some learning in any case, if they wish to be able to use the tools independently and not expect to find a post giving the answer to their exact situation for every single case.
    – ilkkachu
    Commented Jun 18 at 10:30
  • 3
    That, "why doesn't printf "${arr[@]}" do what I want" doesn't still tell what the format string is supposed to be like, and how printf behaves with various format specifiers and arguments. We'd need more questions to answer those issues. And in the end, what we'd have is a "What's printf and how does it work" manual/tutorial. Which is fine if we're forming a collection of tutorials, but I'm not sure the Q&A format SE has is good for that. There are also other existing sites like BashFAQ which might be more suited for that (I'm not sure if they have a page on printf or if they want one)
    – ilkkachu
    Commented Jun 18 at 10:31
  • 4
    For a similar reason, I downvoted that "How to specify several alternative conditions (OR operator) for single case statement?" question: because it's answered in the manual, or any shell language tutorial. I also downvoted the answer that's posted there, because it's literally just quoting the manual. If someone is going to look for that on SE, why wouldn't they just read the manual in the same way? Manuals are also usually written by the program authors, so they're more likely to be up to date than the same information copied to SE.
    – ilkkachu
    Commented Jun 18 at 10:34
  • 3
    Also, that case question was closed as a duplicate, which as such doesn't mean it's a bad question, just that the answer already exists on the site. The closed question still stays on the site and can be found, but it'd be more useful to collect answers to similar questions in one place, so that people don't need to find one piece in one place, and another in some other place.
    – ilkkachu
    Commented Jun 18 at 10:35
  • 1
    Anyway, I glanced at Catija's comment and linked post. And it reminds me to note that not everyone thinks and votes the same way. The high-rep users on whatever site are also not all the same, they have different thoughts and ideas, which may or may not overlap. I don't think the purpose of SE is exactly clear either. We have the idea of being "a library of information about a subject" but that's awfully general too, and at least personally, I see a big difference between Q&As helping someone in their immediate one-off issue, and tutorial-like posts aimed for every future reader.
    – ilkkachu
    Commented Jun 18 at 11:12
  • 1
    E.g. a question might be about some very specific task someone is trying to do, which some more experienced user can easily script up, helping the original poster. But something like that might not be exactly relevant for anyone else, and even if it did contain tools others could find useful those tools would likely be better presented in a more generic context, in a single curated tutorial. Not that this answers your point directly, but I mean that it's just par for the course if people disagree on what exactly is useful for a site like this or not.
    – ilkkachu
    Commented Jun 18 at 11:18
  • @ilkkachu How do you think why this question was downvoted? The same reason: not enough research effort? It is supposed something that in bcs manual should be found information about not supporting unary operations? And based on this information the question becomes meaningless? But what if I disagree that bc 's constant numbers (not variables) must not also support unary operations (like vars)? What is wrong with this? Commented Jun 18 at 16:30
  • 2
    @AntonSamokat, I didn't suggest it'd be lacking in research effort and I didn't downvote that, so it's hard to say why others might have. (Again, you might want to ask on unix[.meta].SE). But I do think you're going to be fighting a rather a losing battle if you expect to get bc to support unary plus. Mostly because there's no single bc, but multiple different implementations (I expect all of GNU, BSDs and Busybox to each have their own), so even if someone adds the feature, it won't be generally useful, since there will still be implementations of bc that don't have it.
    – ilkkachu
    Commented Jun 18 at 17:13

You must log in to answer this question.

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