38

A lot of questions that get asked on Stack Overflow simply don't do well on the platform. 20% of questions that get asked today get deleted, 22% are closed, and 36% survive but don’t get answered. Another way to look at this is that a question that gets asked today has a 60% chance of going unanswered (whether that's because it is closed, deleted, or just gets no responses).

We’ve attempted to address this problem a couple of different ways - with Staging Ground, for instance, which has increased success and survival rates of questions from new askers. We want to continue to improve these numbers, and improve the experience users have on the site. As our team ideates and runs experiments on the process of asking a question, we are looking to you for insight.

Many of you have already submitted feature requests related to improving question asking which we are reviewing. We are also interested in new approaches that may not have been documented yet.

We are open to all ideas that would help more developers’ questions get asked on Stack Overflow, and for more of them to find success here – feel free to think outside the box.

Goals:

  • To solicit experiment ideas from community members
  • For staff to understand community perspective about what improvements are most helpful
  • Make sure community voice is present in staff brainstorming of solutions

Expectations:

  • I will most likely not respond in depth to answers on this post, though you may see some follow up questions to better understand the ideas offered, either by me or by other staff members who are watching this post.
  • Some suggestions put forward here may be tested as experiments on the site or develop into potential new features. The ideas will likely evolve as iteration continues.
10
  • 34
    It would be nice if you go through the existing FRs and list them (link to them), especially the ones you (the company) think have some merit. Commented Feb 19 at 17:16
  • 12
    You cant - because no matter what you do there will always be cretins who don't bother reading a thing and just ask complete and utter garbage. Instead the site should be made better for those who actually do want good quality questions - by instantly and permanently banning anyone who gets a downvoted and closed first question. Commented Feb 19 at 21:27
  • 8
    SO should look at communities that have been able to maintain a place with only high quality questions and no garbage. Eg reddit.com/r/AskHistorians where they immediately delete with extreme prejudice anything that does not meet their standards Commented Feb 19 at 21:29
  • 8
    You have a perversion of statistics. Of the 60% chance of 'rejection' how many are not stack overflow questions and never should be? The goal is to reduce the rejection rate. Indeed, some questions are good in the set. Take the 36% that survive, but don't get answered. Is the issue the question or that fact that people aren't here to answer. Do you have the wrong goal? Is this an XY problem? Ie, how can you keep people that give answers? Commented Feb 19 at 23:57
  • 2
    @artless-noise-bye-due2AI I wouldn't necessarily it's a perversion. Closing/Deleting questions take work, so managing to reduce the number of questions which are asked yet do not belong would be valuable too. Commented Feb 21 at 10:26
  • 4
    "We are also interested in new approaches that may not have been documented yet." You mean there aren't enough feature requests already? Okay, we can probably come up with many more, but I'm not sure it will really help the askers. I would like to discuss the existing requests more. Commented Feb 21 at 11:11
  • 3
    @MatthieuM. I meant in an information sense. The 60% number is for a variety of reasons. Some of which are embodied in the categories, but then within the category, there are various reasons that they may land there. Ie, unanswered Is it due to the question is still not answerable as it need more details. It is a subject which no reader was able to answer or there are people who can answer, but do not due to AI scrapping or some policies have driven people who can answer away and they are no longer present on stackoverflow. All are possible. Commented Feb 21 at 15:06
  • 3
    Among questions that go unclosed and unanswered, have you considered what you can glean from the comments? I hypothesize that a good proportion of these, especially in high-volume tags, would reflect the OP failing to respond to requests for clarification and / or additional information. That might be hard to analyze with SEDE, but it would nevertheless be useful to have an estimate. Commented Feb 22 at 13:44
  • When a user votes to close a question, force them to give a reason. One of my greatest pain points with stack is that I never know why someone voted to close my question. Corollary to this is to re-train users that not every question requires a minimal reproducible code example. This is especially true for questions that are academic in nature and not about a specific bug or error mesage. (At least for the programming side) Commented Mar 14 at 11:22
  • 1
    @Reahreic That's actually already how it works; every close vote cast is associated with a documented reason that the voter picks when casting the vote. That doesn't necessarily stop folks from using the existing reasons poorly, as you point out, but what you describe very much exists today. Commented Mar 14 at 16:31

23 Answers 23

73

You want people to ask even more questions, rather than guiding them to look for existing answers or even figuring stuff out themselves? I think that's a terrible idea because people will just ask worse questions.

Since it seems to be a KPI you're set on maximizing... be smart about it. Answerers are the free resource that make your site generate revenue at all. Take a load off us. If you unleash even more questions on us, and worse/lazier ones at that, you're just grinding us even faster. The question creation rate stagnating over the past few years actually took pressure off us. Do not use up that buffer, if there even is one. Answerers do leave.

I've got an idea. Hear me out. You should consider dumping a lot of effort into welcoming askers with an interactive AI wizard that does all the triaging that we humans do all the time.

The AI will either lead the asker to a solution ("search function" on steroids), or it will lead them to figuring the problem out themselves (typos, documentation, ..., "rubber ducking", socratic method), or it will beat the question into shape and escalate it to human answerers. That includes catching fluffy AIGC waffling (remove fluff, waffle, awful structure), lack of MRE or it's far from MRE-ish, lack of debugging, lack of research, ...

That "or" there isn't an up-front branch in the game tree, it's just an outcome. People's thoughts are mush. The Wizard has to adapt as the investigation progresses. Make it present somewhat like Claude's chat with artefacts, or even start the asker's journey on the AI's own home page (literally these companies' sites), and give the AI the awareness of the "escape route", expectations/rules involved, and means to take it (post the question for the asker).

That thing being good at its purpose requires actually training (fine-tuning) an AI, not just buying API credits and "prompt engineering". Or very skillful prompting with rules and examples making use of the context these things have now. Triage is the most tiresome part of our work, because many questions require the same handholding and prodding and revisions. Automate that. Train the AI on answerers. It is supposed to serve the answerers. That requirement is important and non-negotiable.

With that mechanism, you would have built a force multiplier for your answerers. That is the kind of automation that benefits everyone.

This scheme would give the asker more time with an ever-patient entity and potentially no contact at all with any of us grumpy mean old answerers. This scheme would increase question quality for us, which would make us happier, decreasing the grump (let's be honest), which is a good thing for askers.

You like KPIs, right? One KPI for this scheme could be how much human triage is still required to make the question answerable, after it's been triaged by AI and escalated to humans. Another is the fraction of questions that need escalation to a human, vs. the other fraction that was resolved by automation to the satisfaction of the asker.

13
  • 35
    This, on the other hand, is brilliant. If they're hell-bent on using AI, they can use it in a way that doesn't publish to the site - and which is more specialized than a generic LLM. Commented Feb 19 at 21:14
  • Indeed. If you want more questions to survive... radically change the goal of the site. The old goal is all about finding existing answers (of which there are now two decades worth of, quite a lot), not posting questions. The need for new questions has greatly diminished as time went on and answers piled up. Commented Feb 19 at 22:38
  • 2
    re: "look for existing answers": The search here very poor. Google e.g. is far more likely to find a relevant question/answer pair than the SO search. It's gotten to the point where I myself don't even look for answers by starting to type a question. If Google doesn't show something promising on SO, I just try one of the other Google search results, leading me to, yes, get a quick answer from another site. I know this has decreased my engagement. Commented Feb 20 at 13:26
  • This would mean the core KPI of network interactions wouldn't ever surface - at its core this thing is about getting more traffic to the site, and having an AI interface to NOT ask questions wont ever do that, its just trying to be OAI with less budget. Commented Feb 20 at 13:45
  • 4
    Isn't this what that "formatting assistant" experiment was supposed to do? Which lead to great things such as generating My Little Pony fan fiction. That one was just a thin wrapper on top of ChatGPT though. Commented Feb 20 at 15:08
  • 1
    I never noticed that experiment. it sounds like it had modest ambitions and a modest number of iterations, before "concluding". thin wrappers might be good enough for modesty. what goes on in my imagination is immodest. wrappers begone! Commented Feb 20 at 16:29
  • 1
    IIRC the KPI implied from the post isn't "amount of questions" it's "question survival rate" Commented Feb 20 at 18:14
  • 1
    yeah I find it very hard to think like a company. I see people. people with nuts and nothing to crack them, people with brains and nothing to throw them at. wanting number to go up is alien to me. Commented Feb 20 at 19:35
  • 2
    That would actually be a good & useful use of AI instead of the "answer bot" regurgitating LLM junk-text that they are hellbent on implementing right now. Which of course means that they won't even consider it, but instead redouble the effort on the "answer bot" to little improvement before declaring success and force-deploying it everywhere. Commented Feb 21 at 13:27
  • I'm not confident that this can be effective in practice, but if it were, then it sounds great. Commented Feb 21 at 18:32
  • 1
    yes, it's very much not low hanging fruit, it's a major undertaking. however, this can be accomplished in digestible steps. what they tried with the "formatting assistant" should not have been the first step. the first step should have been AI-enhanced search for existing answers, available to askers as they're writing their question. the "formatting assistant" should have been a content assistant, pointing out all the usual gripes. that's done mechanically now, but AI has a good chance of being more content-aware, hence more accurate than mechanistic rule sets. Commented Feb 22 at 8:05
  • 1
    "Isn't this what that "formatting assistant" experiment was supposed to do?" Only in the sense that pulling food out of a dumpster is supposed to do the same thing as buying ingredients from a local farmer's market and hiring a professional chef. Commented Feb 22 at 19:33
  • 1
    I also think this is a very good use for GenAI, however I disagree that it would need to be fine-tuned. I would think with carefully putting good and bad examples to in the context window (the examples could vary based on tags) you wouldn't need to fine-tune. This is just based off my experience, would be happy to be wrong. Commented Feb 23 at 3:05
58

This might be a bit controversial, but actually looking at the ban algorithm and updating it to be more weighted based on recent activity. Some high rep users will never get a ban because of a few good questions, and they can continue to post bad questions; these questions are rarely well received and often deleted (answered or not).

On the other hand users that are banned, but have actually started to turn things around, still have a massive hole to dig themselves out of because their past will always haunt them.

9
  • 12
    Yes, this is important. Somebody posting a few bad questions 5 years or a even a decade ago and getting question banned today over even a minor problem (leading to a single downvote) is definitely not making people like the platform much. And it doesn't really matter how much we explain the algorithm is out of anybody's hands. Commented Feb 19 at 18:15
  • 9
    Where's the controversy? :D Commented Feb 19 at 18:44
  • 4
    I doubt there's really anyone who would disagree that the current solution is awful, but there's probably a lot of disagreement on what a new solution should look like, ;) Commented Feb 19 at 18:46
  • 3
    "there's probably a lot of disagreement on what a new solution should look like" agreed, @KevinB , and it would also be very difficult for the community to probably give "good" direction to Stack Overflow without putting too much into the public domain, and therefore allowed certain parties to intentionally skate on thin ice. Focused, but not specific, advice is likely the "best" advice we can give. Commented Feb 19 at 19:35
  • 1
    I agree. newbies shouldn't get hammered like that. established users, who are hopefully answerers themselves and should be well practiced in appreciating questions, should know how to write non-terrible questions. -- I see some established users posting obvious Q+A pairs purely for the rep, as a numbers game, seeding the site with Q/A that hopefully gain updoots down the line. many of these questions would never have come up with a modicum of research (like googling for the docs), or with a bit of experimentation, or a bit of reasoning to combine pieces of documentation into a conclusion Commented Feb 19 at 20:31
  • 6
    "Some high rep users will never get a ban because of a few good questions" - it isn't even due to good questions - a Sufficient:tm: amount of rep is enough to fully bypass the algorithm. No good question history is needed at all to bypass it Commented Feb 19 at 20:55
  • 6
    A few particular users definitely come to mind with hundreds of questions, many of them just godsawful or blatantly/offensively off-topic. Commented Feb 19 at 21:11
  • It'd be a sad day when the truth is controversial. Commented Feb 19 at 22:39
  • I agree with this - maybe something similar for the 'positive question record' thing, because it's really hard to build up a positive question record with just 1 or 2 poor, very old questions. Commented Feb 19 at 23:11
53

Make duplicates fun: display a huge "Hooorayy" or a moving party popper emoji, I don't care. Simply:

  • Finding a duplicate for someone -> should feel like getting your answer accepted. You found the correct solution.

  • Having your question flagged/closed as duplicate -> should feel like getting a perfect instant answer. It most often is.

The proposal was already made here: Make Stack Overflow more friendly: remove the stigma of duplicates?

I think the main improvement is actually the color - it's green. Green signals: this was a good outcome for your question. As an anecdote, when scrolling all the way to the bottom on stackoverflow.blog, I sometimes get a slight positive emotion. I suspect it is the theme switcher's similarity to a +rep pop-up:

Theme switcher vs. +rep

If making duplicates fun succeeds, we then need a way to get rid of "bad" duplicates with no or minimum human effort.

And there's some precaution we need to take, as l4mpi pointed out: absolutely make sure this doesn't annoy/hinder experts that answer questions. Those are more sparse than people providing duplicates.

12
  • 6
    absolutely. SE Inc should "take a page from" Telegram's app. reactions are fun. if you wanted to do an April Fools where every upvote, downvote, follow, flag, edit, question publication, answer publication, ... causes some funny animation to pop up, I'm sure that would be a blast. and if you then keep some of that afterwards (like making dupes more fun), it'd greatly contribute to gamification. Commented Feb 19 at 20:59
  • 1
    aside: I'm a personal fan of animations, and while I know it's not everyone's cup of tea, I don't think I'm alone. I think there's potential to lean pretty far into that (let people opt out, or choose funny ones like explosions) to make people feel good about voting. Commented Feb 19 at 21:15
  • 10
    100% agreed. There’s this weird perception that duplicates are “closed” in the same sense that off-topic questions are “closed,” which has never made sense to me. If a post is (and stays) closed as a duplicate, that’s basically as good as receiving a full-fledged answer. Commented Feb 19 at 21:42
  • 7
    someone once (plural for sure) suggested attaching a note to the "closed as duplicate" verdict, which allows us to connect the dots between the asker's question and the dupe target. many times, askers don't get how the dupe target helps them. that note would allow us to do that without being a mere comment. hell, that could even be presented as an answer or other first-class piece, with the dot connecting coming right under the new question, followed by the inlined dupe target's answers (and maybe question too). it could feel like the new question melding into the older one. Commented Feb 19 at 21:57
  • I don't get it. Why does green signal good outcomes? (Or is this regional/cultural?) Commented Feb 20 at 1:14
  • 6
    The problem is the dispute. Good things and gifts are never forced. If the user disagrees that it's a duplicate, they can't reopen the question and sometimes not even have a vote. No matter how green that it looks, forced things are never received well. If they were given a option to reopen unilaterally, regex SMEs would have a meltdown :) A middle ground would be to provide OP with a dispute vote, which would count as 2 votes for reopen and on the positive side, a accept vote, which would provide gold holders or the closers with 15 rep(divided) for finding a satisfactory dupe. Commented Feb 20 at 7:19
  • 7
    I like the idea of making marking duplicates friendlier (and indeed, have been thinking about that myself as well). So much of perception is based on presentation - rightfully so! Thanks for the thoughts. I wonder if there are any other perceived-negative interactions that could be improved experience-wise by just making them less stern. Commented Feb 20 at 8:40
  • 2
    No offense but this sounds like enshittification on steroids. Hey, you're still wading through a garbage dump of trash questions asked by people who fail to understand that they would already have three good answers if they just copypasted their question title into any search engine, but now there's a flashy animation when you cast a close vote on it, amazing! If that's the direction the site is going in it will probable drive away the remaining experts even faster than it is now. Commented Feb 20 at 9:26
  • 2
    @l4mpi None taken, Probably it's good to only do this in conjunction with something like the other answer about better automatic detection. We don't want copy paste duplicates, but we want the "newbies searching for weird phrase, guide them to correct answer" ones. My experience right now is: I close as dupe. OP: No that can't be. 10 mins later: OP: "NVM, it is". It will always be a people problem, but I think part of the "non-acceptance" could be mitigated by more positive UX. I made an edit nevertheless Commented Feb 20 at 10:26
  • 2
    @RoddyoftheFrozenPeas Well, upvotes are green, downvotes are red in the UI. Traffic light is green or red, at least in all places I've been. Commented Feb 20 at 10:30
  • @Mo_ yeah for the asker side it might have some merit to communicate dupe closure in a more positive way... although older users will remember that the current "this question has answers here" message is already the result of an attempt to make the earlier closure message more "welcoming". There's also some edge cases where dupe closure is not positive for OP; e.g. if a user reposts a question of theirs which didn't receive an answer or got closed for quality reasons, that question should be closed as a dupe of the earlier post but will not point to an answer. Commented Feb 20 at 10:53
  • some of my experience with dupes has been "NO it's not, because I want to answer the question and cash in the rep" or "NO it's not, because I am in a mutual upvote pact with the asker" or "NO it's not, because enforcing rules and maintaining order is violence against people who disagree" (I simplified the "reasoning" chains a bit, but really just a tiny bit) Commented Feb 20 at 11:03
37

This is a short answer but I've explained it in other posts before. Send more users to the Staging Ground (SG), not less (or let them opt out). You've previously claimed the success of the SG so why are you not utilizing it if survival of questions is important?

And, again, have people who are question banned sent to the SG instead; this helps them get out of that ban as they are guided to write a good question, and can't post a bad one.

10
  • 6
    Could even have questions which are closed as unclear, not focused or needs debugging details pushing to SG instead of being closed the first time around. Commented Feb 19 at 18:53
  • 1
    Doesn't the SG self-select people who are highly motivated? Would it actually work so well if questions were forced to go through it? Would there be anywhere close to enough reviewers to handle a substantial increase? (If we're just talking about people who are question banned, that could work since there's not many and they've been given motivation. But otherwise?) Commented Feb 19 at 20:27
  • 4
    @DaleK the SG is a closed state, in effect - there's no space for answers. Commented Feb 19 at 21:17
  • 5
    @KarlKnechtel precisely... by pushing them into SG until they improve their question to meet our guidelines... they at least get ongoing support to make the improvements. Whereas if their question just gets closed they either give up, or ask the same question again (which gets closed since they should have edited their original question), or they edit their original question, but no one looks, so it never gets reopened. Commented Feb 19 at 21:22
  • @Laurel we're all doing the same sort of reviewing for live questions, which often gets ignored then the questions get closed. If those poor quality questions all ended up in SG then those who edit live questions could now deal with SG instead. Commented Feb 19 at 21:24
  • 5
    The 2 main problems I have with the SG: 1) reviewers trying to provide answers when they shouldn't, and 2) posts being auto-promoted to the main site when they are not ready. Commented Feb 20 at 6:02
  • 2
    imho, 3) random low-rep people driving by, accepting and auto-upvoting all the questions they think aren't complete trainwrecks. the SG is a game of luck. Commented Feb 20 at 8:38
  • 2
    "Have people who are question banned sent to the SG instead" - Love this answer, they should still be rate limited, perhaps once every 3 months to help the process. It can't make their contributions worse, but if the rare golden egg starts to ask high quality question, it's worth lifting the question ban from 6 months to 3 months provided ALL questions go through SG. This only works if SG exists on every community. Since SG questions can be approved when they shouldn't be approved, make the act of approving a question, come with very stern penalties if the questions ends up closed. Commented Feb 21 at 15:45
  • 1
    "This only works if SG exists on every community." - Is "too many low quality questions" a problem in other communities? (Do >we< care? :-) ) Commented Feb 22 at 3:32
  • If SE volume weren't dominated by SO, I'd agree about the need to do it in every community. As is, not so much. But certainly every SO question should go through SG for q-banned users. Ideally, every SO question would go through SG, full stop. Commented Feb 22 at 19:41
35

Improve duplicate detection!

Many of the new questions are duplicates. However, the current suggestions for duplicates users get when asking a question are typically not that good.

You have a lot of existing questions where many are duplicates. You can try to use that data to train a machine-learning model that attempts to detect duplicates after a question was written. If it detects a duplicate and is confident about it, tell the user something like "Hey, we think we might know the answer to your question" and show them the found duplicate. You can then give the users buttons (or whatever) to use when the linked questions solves their issue and when it doesn't.

If no high-confidence duplicates could be identified, don't try to show the users unlikely duplicates. Just show duplicates when the system is reasonably sure it's a duplicate (for example if it has a score where >40% of suggestions with that score or higher are actually duplicates in your validation data). If only 20% of your users get suggestions for duplicates but these suggestions likely actual duplicates, this is a huge improvement.

I am talking about this thing that is shown upon asking a question: enter image description here

16
  • 16
    dupe detection, or the failure of it, is one of my perennial gripes with this site. that is one of the easy applications of AI. Commented Feb 19 at 21:12
  • 2
    If I know a question is a duplicate, I got to VTC it as such, try to use the search, and can't find the duplicate. Instead, I just go to bing/google and search, limiting to SO site, and it's the first result. Whatever SO is using to "search" is absolutely terrible. Commented Feb 20 at 9:52
  • @ChrisMM I am not talking about the search. I am talking about the thing that suggests similar questions when asking something. Commented Feb 20 at 10:21
  • I assume they're the same search though? Commented Feb 20 at 12:46
  • @ChrisMM it is not the same, see for example meta.stackexchange.com/questions/20432/…, meta.stackoverflow.com/questions/268318/…, meta.stackexchange.com/questions/187773/… Commented Feb 20 at 12:58
  • Maybe the 5 tag limit is counter-productive here. If we could add more tags by editing, it would be easier to narrow down a post to a particular duplicate. Commented Feb 20 at 15:13
  • And no, this isn't an easy or obvious application for AI because we do not necessarily want to close this question because it has been asked before! Rather, upon spotting a well-phrased question that looks promising, we want to let it sit and see what answers it attracts. -> Commented Feb 20 at 15:22
  • 1
    Not just immedaitely clobber it with some similar question from 2008 that did ask the same question, though more sloppily, which was answered partially by Alice in one answer and partially by Bob in another answer, so that to get an answer you need to mentally merge Alice's + Bob's answers while at the same time ignoring the incorrect answer with score +57 posted by Claire, the low-quality answer by Dave from 2022 which repeats Alice's original answer just worse, and while ignoring 5 other "hai here is a link iz good for u" link-only answers. State of "canonical" posts on SO. -> Commented Feb 20 at 15:22
  • 1
    Rather, we would hope that something better could appear, so we can go and close that old, admittedly quite awful "canonical" as a duplicate to the new, better question. AI can't do this. Average humans can't do this. Only humans with domain expertise can. Commented Feb 20 at 15:23
  • 3
    @Lundin I am not suggesting to use an ML model to close random questions as duplicates but to improve tell users about potential duplicates before submitting their question. There is a lot that can be done with ML here (e.g. finding some sort of embedding for a question/converting it to a numerical vector and then finding similar ones followed by more elaborate checks). I have edited my question to clarify that. Commented Feb 20 at 15:29
  • 1
    The site already does that yet people post duplicate questions all the time even when getting an obvious dupe rubbed in their face. The current detection system isn't great but that can be easily fixed not by an AI but by allowing human users with lets say a silver badge or better mark questions as canonical or highly recommended. Commented Feb 20 at 15:34
  • Either way my previous argument still stands: we want to allow new good content to get posted on the site even if it has been asked about before. Just because something has been asked before doesn't mean that the default Q&A dupe target is particularly good. Commented Feb 20 at 15:36
  • "allowing human users with lets say a silver badge or better mark questions as canonical or highly recommended" - it's also be nice to see more put into cleaning up the canonicals we use so that they can be highly recommended - including having the right scope and presentation so that people directed there will actually agree that it's a duplicate. But in many cases that would require deleting answers that are both socially and technically hard to delete. Commented Feb 22 at 19:20
  • @Lundin Not direct tagging, but an idea based on that: What if we weighted the results in the possible duplicates list by number of incoming duplicates? Since canonical duplicates likely have relatively high numbers of questions closed as duplicate of them. Commented Mar 1 at 14:27
  • 1
    While that is a possible improvement, I don't know how far we'd get with that - and there might also be some other approaches coming from recommender systems - it might not be easy to make a system that's actually good at that but there are many possible approaches to investigate. Commented Mar 1 at 15:27
28

How about specifically focusing on posts getting closed as Needing Debugging Details? These seem to be the most issue with questions in my experience.

Unlike other close reasons, there is really no reason a user would actively not want to post debugging details. On some level, I understand why it is annoying for a user to be told "your question is off-topic for here" and need to find somewhere else to post it or not have an answer at all. I also, on some level, understand why getting your question about a typo closed is surprising and not something you'd expect, and you might genuinely not know that's closable and even if you do you might not care. But Needing Debugging Details (and Needing Details or Clarity) is different in that the asker can't possibly benefit if they don't adding debugging details. If you tell us "I have a program and it doesn't work how can I fix it?", you actually can't possibly get an answer.

Now, a separate thing. Not all (but probably most) questions on SO are debugging questions. It would be nice to be able to find which are debugging questions, vs. how to questions, etc.

I think we could fix 2 things with 1 feature. What if we had users choose if what type of question their question is (not what its about, this isn't a duplicate of the tagging system), like debugging, how to, etc.

If they chose debugging, then we could actually implement some measures to reduce the number of these questions that are submitted. Here's some ideas:

  1. Block debugging questions with no code block. These tends to be Needs Debugging Details questions, and if not they are very likely in need of editing (to format code correctly or put the code in from images). This might not be perfect, so perhaps users should have the option of appealing this block on the question (to the CV/Reopen queue maybe? SG?).
  2. Warn users who are submitting images which are likely images of code (this is officially considered Needing Debugging Details, yes). This could probably be detected through one of the AI systems you guys love (please don't just feed it to ChatGPT though, actually use a system dedicated to image recognition).
  3. Warn users who are posting a ton of code (this could be defined as, say, more than 50 lines) and actively block users posting an obviously insane amount of code (say 100-150 lines). These users should be told they need to make their example actually Minimal.
  4. Give users a "checklist" to complete before posting their question. This could include things like: A.Posted relevant code that reproduces the issue B.Code posted is the minimum amount of code necessary C.Relevant errors are posted D.Information about your system is posted (ex. versions, what computer you are on, what libraries you are using, etc.) E.Code and error are correctly formatted, nothing not needing to be in an image is in an image
17
  • 11
    This is an area where the ask question wizard can actually work as a wizard. Commented Feb 19 at 18:42
  • I think tags can do the "how-to/debugging" work for us. the asker wouldn't even have to decide, nor would anyone have to. people with the rep will adjust the tags for sure. some questions validly would have neither or both these tags. Commented Feb 19 at 21:04
  • @ChristophRackwitz Yes (how to and debugging neednt be the only categories also) it could theoretically work, but thats not what tags are meant to do. they are meant to describe the content of the question (ex. [python] means its a python question) Commented Feb 19 at 21:05
  • I like the idea of opening the site up to "debug this for me" questions. they're getting asked anyway, so we might as well channel that properly. those questions simply aren't destined for "the repository of knowledge" but they are ephemeral. Commented Feb 19 at 21:06
  • 2
    @ChristophRackwitz Fact is most of this site is "debug this for me" questions. No point in denying they exist Commented Feb 19 at 21:06
  • The ask question process has been streamlined for "debug this for me" questions for years at this point. "What have you tried and what did you expect?" Commented Feb 19 at 21:25
  • streamlined in the sense that the wizard prods the asker to not act entirely helpless, but to do some of the debugging, hopefully. Commented Feb 19 at 21:42
  • Maybe there needs to be another site/section just for actual debugging efforts. Leave the main site for answerable questions, and move the "debug this for me" posts elsewhere. Commented Feb 20 at 6:07
  • 5
    I really like the idea of choosing a question type specifically because it would make tailored validation so much easier and more effective. I wonder if there are special types of additional validation we could do for other types of questions, aside from the debugging example you mentioned. Commented Feb 20 at 8:41
  • 1
    Point 3 is in danger territory because for example game development questions tend to have a ton of code as their MRE. Because Stack Overflow casts an extremely wide net for what is potentially on-topic, it is dang near impossible to be universally strict. But then again... why would game development questions need a home on Stack Overflow to begin with when there is a site dedicated for it. The same for dev/ops, as another example. Commented Feb 20 at 15:34
  • 1
    @Gimby Posting hundreds of lines of code is never okay. If you need to post that much code to reproduce something, volunteer effort is not the way to get your code solved Commented Feb 20 at 15:35
  • 1
    @Starship (or anyone else) if you had to narrow down the types of questions you commonly come across (I know it won't be an extensively list but just the common ones most people typically tend to ask) which ones would you pick? i.e. troubleshooting/debugging, "how-to" do XYZ, optimize code Commented Feb 21 at 18:33
  • 1
    @tanj92 Honestly I think your 3 examples are pretty good. Maybe also "why is X happening" Commented Feb 21 at 18:58
  • "there is really no reason a user would actively not want to post debugging details." Overwhelmingly, the problem is not that they don't want to. The problem is that they don't have debugging details, because they haven't made proper debugging efforts and don't understand what's expected. In many cases they seem not to have any idea what "debugging details" would actually consist of. In quite a few cases, they seem not to have any idea of what "debugging" is. Commented Feb 22 at 19:42
  • 1
    @KarlKnechtel No, not necessarily. This could be, for example, “hey why is my code running 10 faster than expected”. I wouldn’t call that a big but it could be confusing Commented Feb 22 at 23:24
22

It doesn't have the tag, but allow me to point you to the 2017 Q&A Let's send new users off to see the Wizard (disclosure: my idea) which got a pretty good reception by the community (+107/-5 at the time of this question), and... zero response or engagement from the staff/company. Granted, it was a post, but I think it's very relevant here.

The key recurring feature in the asking wizard demo I whipped up there is "strong guard rails" that direct the user on where to go/what to ask here. I'll provide the Stack Snippet from that question here below as well, for convenience.

It certainly misses a few avenues of questions that should be allowed in its limited demo (and now fairly dated) state, but a major point that remains relevant today is that the user has to explicitly, affirmatively state what kind of question they have by selecting from a prescribed list of various question topics/types (e.g. debugging, how-to, etc.). If they select a certain kind of question, they get hard stopped by the system and told to go elsewhere (try clicking the "I have a question about something else" button on the Stack Snippet I provided).

As it happens, this guided, on-rails experience is already recommended by several other answers here.

From the linked question above:

document.getElementById('Q-debug').onclick = function() {
    var debugPage = document.getElementById('debug-page');
    var splashElements = document.getElementsByClassName('splashPage');
    debugPage.style.display = 'block';
    for (var i = 0, max = splashElements.length; i < max; i++) {
        splashElements[i].style.display = "none";
    }
};
document.getElementById('debug-step2').onclick = function() {
    var debugPage2 = document.getElementById('debug-problem-desc');
    this.style.display = 'none';
    debugPage2.style.display = 'block';
};
document.getElementById('debug-step3').onclick = function() {
    var debugPage3 = document.getElementById('debug-mcve');
    var step3Container = document.getElementById('step3-container');
    step3Container.style.display = 'none';
    debugPage3.style.display = 'block';
};
document.getElementById('debug-step4').onclick = function() {
    var debugPage4 = document.getElementById('debug-title');
    var step4Container = document.getElementById('step4-container');
    step4Container.style.display = 'none';
    debugPage4.style.display = 'block';
};
document.getElementById('Q-tool').onclick = function() {
    var toolPage = document.getElementById('tool-page');
    var toolContent = document.getElementById('tool-content');
    var toolMain = document.getElementById('tool-mainbar');
    var toolForm = document.getElementById('tool-question-form');
    var splashElements = document.getElementsByClassName('splashPage');
    toolPage.style.display = 'block';
    toolContent.style.display = 'block';
    toolForm.style.display = 'block';
    toolMain.style.display = 'block';
    for (var i = 0, max = splashElements.length; i < max; i++) {
        splashElements[i].style.display = "none";
    }
};
document.getElementById('tool-step2').onclick = function() {
    var toolPage2 = document.getElementById('tool-problem-desc');
    var toolEditor = document.getElementById('tool-post-editor');
    var toolContainer = document.getElementById('tool-wmd-container');
    var toolButton = document.getElementById("tool-step3-container");
    this.style.display = 'none';
    toolPage2.style.display = 'block';
    toolEditor.style.display = 'block';
    toolContainer.style.display = 'block';
    toolButton.style.display = 'block';
};
document.getElementById('tool-step3').onclick = function() {
    var toolPage3 = document.getElementById('tool-mcve');
    var toolEditor2 = document.getElementById('tool-post-editor2');
    var toolContainer2 = document.getElementById('tool-wmd-container2');
    var toolButton2 = document.getElementById("tool-step4-container");
    this.style.display = 'none';
    toolPage3.style.display = 'block';
    toolEditor2.style.display = 'block';
    toolContainer2.style.display = 'block';
    toolButton2.style.display = 'block';
};
document.getElementById('tool-step4').onclick = function() {
    var toolTitle = document.getElementById('tool-title');
    this.style.display = 'none';
    toolTitle.style.display = 'block';
};
document.getElementById('Q-eng').onclick = function() {
    var knowledgePage = document.getElementById('knowledge-page');
    var knowledgeContent = document.getElementById('knowledge-content');
    var knowledgeMain = document.getElementById('knowledge-mainbar');
    var knowledgeQuestion = document.getElementById('knowledge-question-form');
    var splashElements = document.getElementsByClassName('splashPage');
    knowledgePage.style.display = 'block';
    knowledgeContent.style.display = 'block';
    knowledgeMain.style.display = 'block';
    knowledgeQuestion.style.display = 'block';
    for (var i = 0, max = splashElements.length; i < max; i++) {
        splashElements[i].style.display = "none";
    }
};
document.getElementById('knowledge-step2').onclick = function() {
    var knowledgePage2 = document.getElementById('knowledge-problem-desc');
    var knowledgeEditor = document.getElementById('knowledge-post-editor');
    var knowledgeContainer = document.getElementById('knowledge-wmd-container');
    var knowledgeButton = document.getElementById("knowledge-step3-container");
    this.style.display = 'none';
    knowledgePage2.style.display = 'block';
    knowledgeEditor.style.display = 'block';
    knowledgeContainer.style.display = 'block';
    knowledgeButton.style.display = 'block';
};
document.getElementById('knowledge-step3').onclick = function() {
    var knowledgePage3 = document.getElementById('knowledge-mcve');
    var knowledgeEditor2 = document.getElementById('knowledge-post-editor2');
    var knowledgeContainer2 = document.getElementById('knowledge-wmd-container2');
    var knowledgeButton2 = document.getElementById("knowledge-step4-container");
    this.style.display = 'none';
    knowledgePage3.style.display = 'block';
    knowledgeEditor2.style.display = 'block';
    knowledgeContainer2.style.display = 'block';
    knowledgeButton2.style.display = 'block';
};
document.getElementById('knowledge-step4').onclick = function() {
    var knowledgeTitle = document.getElementById('knowledge-title');
    this.style.display = 'none';
    knowledgeTitle.style.display = 'block';
};
document.getElementById('Q-other').onclick = function() {
    var ontopicPage = document.getElementById('ontopic-page');
    var splashElements = document.getElementsByClassName('splashPage');
    ontopicPage.style.display = 'block';
    for (var i = 0, max = splashElements.length; i < max; i++) {
        splashElements[i].style.display = "none";
    }
};
html {
    height: 100%;
    margin: 5px;
}
body {
    min-height: 100%;
    display: flex;
    flex-flow: column nowrap;
    font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-size: 13px;
    line-height: 1.3em;
    color: #242729;
    background: #fff;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
}
h2 {
    margin: 14px auto;
}
button {
    color: #fff;
    background-color: #0095ff;
    box-shadow: inset 0 1px 0 #66bfff;
    padding: .61538462em 1em;
    vertical-align: middle;
    min-height: 2.46153846em;
    box-sizing: border-box;
    font-weight: 400;
    font-family: inherit;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    border-radius: 2px;
    border: 1px solid transparent;
    border-color: #07c;
    margin: 5px auto;
    max-width: 400px;
    cursor: pointer;
    transition: all .1s ease-in;
}
button:hover {
    cursor: pointer;
    color: rgba(255,255,255,0.9);
    background-color: #07c;
    border-color: #005999;
    box-shadow: inset 0 1px 0 #3af;
    text-decoration: none;
    transition: all .1s ease-in-out;
    outline: none;
}
div[id$="-page"] {
    display: none;
}
.container {
    margin-top: 60px;
    position: relative;
    width: 100%;
    flex: 1 0 auto;
    margin: 0 auto;
    text-align: left;
}
.container div[id$="-content"] {
    padding: 24px 15px;
}
div[id$="-content"] {
    box-sizing: content-box;
    margin: 0 auto;
    background-color: #fff;
}
.ask-page div[id$="-content"] {
    min-height: 750px;
}
.ask-mainbar {
    width: 665px;
}
.form-item {
    padding: 10px 0 5px;
}
.ask-title {
    width: 668px;
}
.container div[id^="debug-"], .container div[id^="tool-"], .container div[id^="knowledge-"], .container div[id^="ontopic"] {
    display: none;
}
div[id^="debug-"] h2, div[id^="tool-"] h2 {
    margin: 0px;
    margin-top: 10px;
}
div[id^="debug-"] h5, div[id^="tool-"] h5 {
    margin: 5px 0;
}
.form-item label {
    display: inline-block;
    font-weight: bold;
    padding-bottom: 3px;
}
.wmd-input {
    box-sizing: border-box;
    padding: 10px;
    height: 200px;
    line-height: 1.3;
    width: 660px;
}
input {
    color: #9fa6ad;
    margin: 5px 0;
}
input[type="text"] {
    box-shadow: 0 1px 2px rgba(12,13,14,0.1) inset;
    padding: 8px 10px;
    font-size: 14px;
    color: #3b4045;
    background: #fff;
    border: 1px solid #c8ccd0;
}
input[id$="title"] {
    width: 591px;
}
p {
    clear: both;
    margin-bottom: 1em;
    margin-top: 0;
}
a {
    color: #07c;
    text-decoration: none;
    cursor: pointer;
}
.form-submit {
    display: block;
    padding: 10px 0 15px 0;
}
.container input[type="submit"] {
    color: #fff;
    background-color: #0095ff;
    box-shadow: inset 0 1px 0 #66bfff;
    display: inline-block;
    position: relative;
    padding: .61538462em 1em;
    vertical-align: middle;
    min-height: 2.46153846em;
    box-sizing: border-box;
    font-weight: 400;
    font-family: inherit;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    border-radius: 2px;
    border: 1px solid transparent;
    border-color: #07c;
    transition: all .1s ease-in;
    outline: none;
    cursor: pointer;
}
input[type="submit"]:hover {
    cursor: pointer;
    color: rgba(255,255,255,0.9);
    background-color: #07c;
    border-color: #005999;
    box-shadow: inset 0 1px 0 #3af;
    text-decoration: none;
    transition: all .1s ease-in-out;
    outline: none;
}
<h2 class="splashPage">What kind of question do you have?</h2>
<button id="Q-debug" class="splashPage" type="submit">I have an error or code that isn't working correctly</button>
<button id="Q-tool" class="splashPage" type="submit">I have a question about a programming tool or IDE</button>
<button id="Q-eng" class="splashPage" type="submit">I don't understand some aspect of a programming language</button>
<button id="Q-other" class="splashPage" type="submit">I want to ask about something else</button>
<div id="debug-page" class="ask-page">
    <div class="container">
        <div id="content">
            <div id="mainbar" class="ask-mainbar">
                <form id="post-form" class="post-form">
                    <div id="question-form">
                        <h2>What language are you using?</h2>
                        <h4>Pick a language tag in the field below, and up to 4 additional tags that relate to what you're trying to do.</h4>
                        <div style="position-relative;">
                            <div style="position-relative;">
                                <label>Tags</label>
                                <div class="tag-editor" style="width: 658px; height: 35px;">
                                    <input placeholder="Pick a tag such as c++, android, or haskell, max 5 tags" style="width: 638px" type="text">
                                </div>
                            </div>
                            <div id="tag-suggestions"></div>
                        </div>
                        <div class="form-submit cbt">
                            <button id="debug-step2" type="button">Next Field</button>
                        </div>
                        <div id="debug-problem-desc">
                            <h2>Describe your problem</h2>
                            <h5>(Don't worry, we'll get to your code next)</h5>
                            <div id="post-editor" class="post-editor">
                                <div style="position-relative;">
                                    <div class="wmd-container">
                                        <textarea id="wmd-input" class="wmd-input processed" name="post-text" cols="92" rows="15" placeholder="Be specific and detailed! No one will help you if they have to guess at the details."></textarea>
                                    </div>
                                </div>
                            </div>
                            <div id="step3-container" class="form-submit cbt">
                                <button id="debug-step3" type="button">Next Field</button>
                            </div>
                        </div>
                        <div id="debug-mcve">
                            <h2>Include the code that's not working</h2>
                            <h5>(Your actual code, not a screenshot. If you get an error message, include that here)</h5>
                            <div id="post-editor2" class="post-editor">
                                <div style="position-relative;">
                                    <div class="wmd-container">
                                        <textarea id="wmd-input2" class="wmd-input processed" name="post-text2" cols="92" rows="15" placeholder="Include a complete demo of your code problem here. It MUST be reproducible."></textarea>
                                    </div>
                                </div>
                            </div>
                            <div id="step4-container" class="form-submit cbt">
                                <button id="debug-step4" type="button">Next Field</button>
                            </div>
                        </div>
                        <div id="debug-title">
                        <h2>Pick a title for your question</h2>
                        <h5>(Summarize your problem in question format)</h5>
                            <div style="position-relative">
                                <div class="form-item ask-title">
                                    <input id="title" class="ask-title-field" name="title" maxlength="300" placeholder="Be specific. Use proper grammar. Ex: Why isn't my function returning true?" data-min-length="15" data-max-length="150" autocomplete="off" type="text">
                                </div>
                            </div>
                            <div class="form-submit cbt">
                                <input id="submit-button" value="Post Your Question" type="submit">
                            </div>
                        </div>
                    </div>
                </form>
            </div>
        </div>
    </div>
</div>
<div id="tool-page" class="ask-page">
    <div class="container">
        <div id="tool-content">
            <div id="tool-mainbar" class="ask-mainbar">
                <form id="tool-post-form" class="post-form">
                    <div id="tool-question-form">
                        <h2>What tool are you using?</h2>
                        <h4>Pick a programming tool or IDE in the field below, and up to 4 additional tags that relate to what you're trying to do.</h4>
                        <div style="position-relative;">
                            <div style="position-relative;">
                                <label>Tags</label>
                                <div class="tag-editor" style="width: 658px; height: 35px;">
                                    <input placeholder="Pick a tag such as visual-studio, chrome, or eclipse, max 5 tags" style="width: 638px" type="text">
                                </div>
                            </div>
                            <div class="tag-suggestions"></div>
                        </div>
                        <div class="form-submit cbt">
                            <button id="tool-step2" type="button">Next Field</button>
                        </div>
                        <div id="tool-problem-desc">
                            <h2>Describe your question</h2>
                            <h5>(If you have a problem, specify your desired outcome)</h5>
                            <div id="tool-post-editor" class="post-editor">
                                <div style="position-relative;">
                                    <div id="tool-wmd-container" class="wmd-container">
                                        <textarea id="tool-wmd-input" class="wmd-input processed" name="post-text" cols="92" rows="15" placeholder="Be specific and detailed! No one will help you if they have to guess at the details."></textarea>
                                    </div>
                                </div>
                            </div>
                            <div id="tool-step3-container" class="form-submit cbt">
                                <button id="tool-step3" type="button">Next Field</button>
                            </div>
                        </div>
                        <div id="tool-mcve">
                            <h2>Include any screenshots here</h2>
                            <h5>(Screenshots should illustrate sections, windows, or menus of the IDE or tool you're using)</h5>
                            <div id="tool-post-editor2" class="post-editor">
                                <div style="position-relative;">
                                    <div id=tool-wmd-container2 class="wmd-container">
                                        <textarea id="tool-wmd-input2" class="wmd-input processed" name="post-text2" cols="92" rows="15" placeholder="Please use Stack Overflow's built-in image uploader. Don't link an image from a 3rd party website."></textarea>
                                    </div>
                                </div>
                            </div>
                            <div id="tool-step4-container" class="form-submit cbt">
                                <button id="tool-step4" type="button">Next Field</button>
                            </div>
                        </div>
                        <div id="tool-title">
                        <h2>Pick a title for your question</h2>
                        <h5>(Summarize your post in question format)</h5>
                            <div style="position-relative">
                                <div class="form-item ask-title">
                                    <input id="tool-title" class="ask-title-field" name="title" maxlength="300" placeholder="Be specific. Use proper grammar. Ex: How do I dock a window in Visual Studio?" data-min-length="15" data-max-length="150" autocomplete="off" type="text">
                                </div>
                            </div>
                            <div class="form-submit cbt">
                                <input id="tool-submit-button" value="Post Your Question" type="submit">
                            </div>
                        </div>
                    </div>
                </form>
            </div>
        </div>
    </div>
</div>
<div id="knowledge-page" class="ask-page">
    <div class="container">
        <div id="knowledge-content">
            <div id="knowledge-mainbar" class="ask-mainbar">
                <form id="knowledge-post-form" class="post-form">
                    <div id="knowledge-question-form">
                        <h2>What language is your question about?</h2>
                        <h4>Pick a programming language in the field below, and up to 4 additional tags that relate to your question.</h4>
                        <div style="position-relative;">
                            <div style="position-relative;">
                                <label>Tags</label>
                                <div class="tag-editor" style="width: 658px; height: 35px;">
                                    <input placeholder="Pick a tag such as Rust, C, or Python, max 5 tags" style="width: 638px" type="text">
                                </div>
                            </div>
                            <div class="tag-suggestions"></div>
                        </div>
                        <div class="form-submit cbt">
                            <button id="knowledge-step2" type="button">Next Field</button>
                        </div>
                        <div id="knowledge-problem-desc">
                            <h2>Describe your question</h2>
                            <h5>(Be sure to include your expectations or reasoning)</h5>
                            <div id="knowledge-post-editor" class="post-editor">
                                <div style="position-relative;">
                                    <div id="knowledge-wmd-container" class="wmd-container">
                                        <textarea id="knowledge-wmd-input" class="wmd-input processed" name="post-text" cols="92" rows="15" placeholder="Be specific and detailed! No one will help you if they have to guess at the details."></textarea>
                                    </div>
                                </div>
                            </div>
                            <div id="knowledge-step3-container" class="form-submit cbt">
                                <button id="knowledge-step3" type="button">Next Field</button>
                            </div>
                        </div>
                        <div id="knowledge-mcve">
                            <h2>Include any references or source material</h2>
                            <h5>(List the source of your knowledge or question here, along with anywhere you've already looked for an answer)</h5>
                            <div id="knowledge-post-editor2" class="post-editor">
                                <div style="position-relative;">
                                    <div id=knowledge-wmd-container2 class="wmd-container">
                                        <textarea id="knowledge-wmd-input2" class="wmd-input processed" name="post-text2" cols="92" rows="15" placeholder="Keep it brief; don't list 20 variations of the same source"></textarea>
                                    </div>
                                </div>
                            </div>
                            <div id="knowledge-step4-container" class="form-submit cbt">
                                <button id="knowledge-step4" type="button">Next Field</button>
                            </div>
                        </div>
                        <div id="knowledge-title">
                        <h2>Pick a title for your question</h2>
                        <h5>(Summarize your post in question format)</h5>
                            <div style="position-relative">
                                <div class="form-item ask-title">
                                    <input id="knowledge-title" class="ask-title-field" name="title" maxlength="300" placeholder="Be specific. Use proper grammar. Ex: Why doesn't C++ have garbage collection?" data-min-length="15" data-max-length="150" autocomplete="off" type="text">
                                </div>
                            </div>
                            <div class="form-submit cbt">
                                <input id="knowledge-submit-button" value="Post Your Question" type="submit">
                            </div>
                        </div>
                    </div>
                </form>
            </div>
        </div>
    </div>
</div>
<div id="ontopic-page" class="ask-page">
    <p id="ontopic-blurb"><span>Redirect users to <a href="https://stackoverflow.com/help/on-topic">https://stackoverflow.com/help/on-topic</a> so they can realize their question is probably off-topic, with some helpful callouts (examples below), and a link somewhere that lets them ask anyway:</span></p>
    <p>
        <img alt="On-Topic Help Page" src="https://i.sstatic.net/EUAIt.png">
    </p>
</div>

5
  • sounds like you and dan are on same wavelength. Commented Feb 19 at 21:41
  • @starball Our answers are undoubtedly similar (showing that the Ask Wizard should be improved in some way like that) but the focus is a bit in different areas (1/2) Commented Feb 19 at 22:33
  • My answer focuses more on the path of a question being off-topic and helping users with that by pointing to the right places (thanks to Christoph Rackwitz for their comment on that while TylerH provides a more concrete suggestion on what the UI could look like including some options. (2/2) Commented Feb 19 at 22:34
  • " the user has to explicitly, affirmatively state what kind of question they have by selecting from a prescribed list of various question topics/types (e.g. debugging, how-to, etc.)" +100. Except I can't think offhand of anything else that goes on that list. Commented Feb 22 at 19:36
  • 1
    @KarlKnechtel I tend to agree mostly, though left it open-ended because I'm certain someone will eventually point out another valid type of question (language lawyer questions may be one such category that aren't debugging or technically 'how to' either but still valid), but also because I wanted to include a 'catch all' honeypot option for off-topic questions, so we can easily tell such users they need to go elsewhere before they get a chance to post their question. Being able to catch such users and educate them before posting is, I think, 75-99% of the benefit of any question wizard. Commented Feb 24 at 14:36
21

One thing that would be work but could yield great benefit is interactive onboarding.

When a user wants to ask a question using the Ask Wizard, don't just give them textboxes to enter a title and question. Instead, start by giving them a single-choice menu asking them what type of question they want to ask:

  • If their code/project/tooling doesn't work, ask them to provide
    • what the issue is
    • a minimal, complete and verifiable example including all code/reproduction steps necessary to reproduce that issue on a new project/setup and maybe even let them confirm this works on a new project using a checkbox or whatever. All relevant code and configuration should be present within the question
    • the exact input (if applicable) and output (actual and expected output)/full error messages they are facing
    • These should be different textboxes.
  • If their question is about how to do something, ask them what they are doing, which alernatives they considered and what exactly they expect to happen
  • If their question is about looking for software/tools/libraries/books (give users that option!), tell them that these questions are off-topic (with a reference to the help center)
  • If their question is getting opinions on a programming-topic (give users that option!), tell them that opinion-based questions are off-topic (with a reference to the help center) on Stack Overflow and that all questions on Stack Overflow should ask for facts and not opinions or point point them to discussions as suggested in the comments by starball.
  • If their question is not about programming (give users that option!), tell them that Stack Overflow is a site about programming and maybe redirect them to a list of all sites (where links point to the /help/on-topic pages of these sites) to show them where they might ask their question instead "It looks like your question might be off-topic on Stack Overflow but we have these other sites which may be about the topic you are asking for
    • It might be worth making a special case for server administration/general computing and then show them sites like Super User and Server Fault

The current Ask Wizard isn't doing a bad job for that but it can still be improved a lot.

If a user enters the same text in multiple text fields, tell them that these textboxes exist for a reason and their question will likely be closed if they don't follow it.

If you make something like that, please also allow other sites to use and customize that feature similar to how the help center can be customized. You probably also want to do A/B tests/extensive research on what to best show the user but I'll leave that to you.

Implementing something like that will probably decrease the number of people asking questions but it the fraction of these questions being good will probably be higher.

See also TylerH's answer and their concrete suggestion/feature request on how to do something like that.

3
  • 2
    opinion things could be directed to the discussions space. it is not my understanding that considering alternatives is a necessary requirement for how-to questions. Commented Feb 19 at 21:10
  • 7
    all the "frustrating" branches in the decision tree/graph should not actually frustrate the user (be a refusal/roadblock), but smoothly send them someplace that satisfies. opinions? -> discussions. recommendations? -> swrecs.se. NAP? -> help them find the right site. if done right, users will keep coming back, treat it as their "home page" for all questions. Commented Feb 19 at 21:22
  • 1
    I agree about this being important but when redirecting users, it would be necessary to make sure to not redirect them to some place where their question is also off-topic and clarify that this isn't something where we are sure their question works. For example, we wouldn't want people asking for book/roadmap recommendations to Software Recommendations SE. Commented Feb 19 at 22:25
18

Questions go unanswered because answerers either aren't here or aren't finding them worth answering.

Take a step back. Why are people asking questions here in the first place?

It's usually because they have a problem they need to solve, not because they want to contribute to some knowledgebase. They aren't interested in avoiding duplication. They aren't interested in creating a long-term artifact to help others. They need help with their own problem. However, everything that happens during the asking process and after focuses almost entirely on creating that knowledgebase entry rather than helping the user who needs help.

This isn't fun for someone who just wants to help people, they don't want to spend 3 minutes digging through a 15 year old search interface looking for a duplicate they know exists, they don't want to sit there trying to find a reason a post shouldn't be answered, they just want to help people and receive that little bit of recognition for doing their good deed for the day. Yet... they're met with this system that effectively discourages answering. It's almost as if we are expected to spend the first 9 minutes out of 10 looking for reasons to not help someone before we finally settle on answering it, and even then the answerer is still open to being downvoted and criticized for missing that one arcane post from 6-8 years ago that already answers the question with a poor title you'll never find.

I'm not suggesting we should just give up on the knowledgebase and curation.

Maybe the first order of business for a question being asked should be receiving an answer, rather than curating the knowledgebase being the first and most important objective to the point where it gets in the way of the whole reason someone came here in the first place. Maybe a question receiving an answer shouldn't get in the way of curation, and vice versa.

I feel like we've (the community) lost sight of why people on the internet come here, and then we're taking actions that discourage them from doing so. Quotes like the below from highly respected members of the community seriously bother me. (this is from memory and not actually from any specific user)

The knowledgebase already has most of the answers, we shouldn't be concerned with a decline in asking/answering.

This is a defeatist attitude that has effectively given up on serving the very reason people even come here.

19
  • 2
    Great answer. It is not like we're dealing with a static subject; new technologies are popping up everywhere. If we give up, the knowledge-base will be outdated and severely incomplete in no time. Commented Feb 19 at 18:50
  • 2
    do you think the current Q&A model is suitable or suitable enough for helping people with low-quality or duplicate questions? or would you suggest something more like chat for that? I guess I'm just seeking some expansion on your recent chat comment, which I liked. Commented Feb 19 at 19:21
  • 5
    I think the current model is incapable of serving users who haven’t yet realized what help they actually need, it expects a question to be asked and answered as it was asked, not morphed over time into what the asker actually needs. That’s the portion I think an active realtime chat interface with experts would be best at serving Commented Feb 19 at 19:36
  • I imagine it working similar to existing chat, except with an easier time of spinning off side chats that are indexed and searchable within the given room, as well as having a chatbot regulars can keep up to date with links to common dupe targets. That’s more or less how js chat operated before it was killed off. Certainly not a silver bullet, but a place people who would be interested in that kind of interface can go and get quick help or just hang out. I would love for such a place to exist to drop my quick and simple Wordpress questions that don’t deserve to be a normal asked questions. Commented Feb 19 at 20:06
  • 1
    @KevinB it's a nice ideal, but do you think that scales? or is it good enough that it doesn't matter if it doesn't scale? Commented Feb 19 at 20:06
  • I don’t think it needs to scale, it’s not an interface everyone will be interested in using, JS chat was only crazy because most of the regulars were there just to hang out, not necessarily for the purpose I’m describing. Better discussion threading would help Commented Feb 19 at 20:08
  • certainly existing chat doesn't have the tools needed to support this, most notably it's flagging system, lack of dark mode, no easy way of creating "sub rooms" that are easily findable, etc Commented Feb 19 at 20:12
  • 4
    What you're saying makes sense, but your answer isn't proposing any solution. This has been discussed many times and there are concerns about every proposed solution. It's not to say, we couldn't find a consensus but just saying that there's a problem isn't enough. Commented Feb 19 at 20:15
  • I just didn't want to reiterate the solutions I want a 3rd time in as many weeks. besides, i'd like to see some other solutions that go toward the same goal. I haven't seen anything else that goes towards these goals, it feels as if all anyone here ever wants is less questions. Commented Feb 19 at 20:16
  • 2
    My goals are improving the new user experience such that they'll want to stick around and become part of the solution and contribute to "the goal". Not gatekeep questions/answers to the point where people are better off poking and prodding at an LLM and seeing what sticks. Commented Feb 19 at 20:23
  • "easier time of spinning off side chats that are indexed and searchable within the given room"... are you talking about Discourse? Or even how Discord operates. Only if development time on Discussions was spent on Chat. Commented Feb 19 at 20:25
  • 1
    discord moreso, i try to avoid discourse. not too familiar with it. Commented Feb 19 at 20:31
  • 2
    "this is from memory and not actually from any specific user" - I've said things like this, and I don't think they're defeatist at all. From the perspective of the site's goal, "The knowledgebase already has most of the answers" implies "we have already had most of the success we could ever want". Commented Feb 19 at 21:21
  • 1
    aka "Let's just close the doors and let GPT take the wheel" Commented Feb 19 at 21:36
  • I like this a lot actually. It is kind of an evolution of the staging ground concept really... and also kind of follows the FAQ principle as it is held on meta. Some posts are FAQ entries, most are not. The same could be said for Stack Overflow questions. Some are knowledge base articles... others are not. I don't know what that version of Stack Overflow looks like, but I feel this has a lot of potential. Commented Feb 20 at 12:51
18

Here's a suggestion for improving dupes. Dupes seem to frustrate some users, new and old, both asking and looking for answers.

Someone* once* suggested attaching a note to the "closed as duplicate" verdict, which allows us to connect the dots between the asker's question and the dupe target.

Many times, askers don't get how the dupe target helps them. That note would allow us to do that without being a mere comment.

That could even be presented as an answer or other first-class piece, with the dot connecting content going right under the new question, followed by the inlined dupe target's answers (and maybe question too), or maybe a specific one of the existing answers. It could feel like the new question melding into the older one. It'd be seamless. Zero clicks needed, zero thinking needed, vs. the one click to follow the dupe and the thinking to adapt the old answers to the new question.


* plural for sure

4
  • 1
    Yeah most of the time I just want to link to a specific answer to be honest. Stack Overflow has a tendency to really pile up answers under a question over time for any and all variant that can be made up; you will especially see this in web-related questions where three new options for the same feature pop up daily (or so it feels). It makes no sense to dupe link to a question in such cases, I want to point people to a very specific answer instead - the contextually most relevant one. I have to put a comment right now to get that done and hope it is seen / not deleted. Commented Feb 20 at 15:12
  • since we already have links from questions to a dupe target, I think the site might benefit from resolving the other direction too, i.e. on a canonical, list all the dupes. that would make housekeeping easier, and it allows people to browse. Commented Feb 20 at 16:26
  • I think you are right on point. A newbie who's, say, accessing array out of bounds, doesn't easily understand how their code like int[] myarray = new int[3] is related to dupe's char[] password = new char[10]. They are likely confused on several levels, and using different names (and datatypes) to illustriate similar problem isn't helping. What they are looking is answer to their problem 1:1. Commented Feb 21 at 7:27
  • 3
    Typically, when I VTC a question as a dupe and suspect that it might not be straightforward to connect the dots, I leave a comment with an explanation. I'd be happy enough for that to be rolled into the UI as its own thing. I'm not so sure it is responsive to the question actually posed here, about the proportion of questions that go without (their own) answers, but it might nevertheless make for a better user experience for those whose questions get closed as dupes. Commented Feb 21 at 18:48
18

36% survive but don’t get answered.

It seems like the first order of business is to figure out why these don't get answered. Were they close-worthy but just got overlooked? Were they answerable, but no-one with the expertise saw them? Were the people capable of answering them spending all their available volunteer time curating posts instead of answering them?

Which askers are the most consistently successful at getting good answers for their questions? What do they do differently from people who struggle to get their questions answered?

My guess is this is not solely a quality difference. At a certain point, people learn how the system works and do things to help their questions be more visible to the right people. Getting a question answered is a marketing problem, not a writing problem most of the time. I have seen people who are interested in a question take the time to bring it on-topic so they could write an answer. Why did that question "spark joy" for them even though it wasn't perfect quality? How many closed questions wouldn't have been closed if they had gotten to them first?

I don't have a suggestion for a particular experiment, but I think it would be good to think about changing Stack Overflow from a firehose of questions to courtyards of gently bubbling topic fountains.

6
  • "Getting a question answered is a marketing problem, not a writing problem most of the time" -- I tend to disagree. I do generally use my watched tags as an initial filter, but for questions in those tags, nothing turns me off to a question faster than having trouble understanding what it is trying to ask. I guess I'm somewhat more likely to write an answer to a question that piques my interest, but that's not nearly as important for me as the question being at least passably written. Commented Feb 21 at 18:58
  • @JohnBollinger Sure, but no amount of wordsmithing is going to get you to answer it if you don’t click on it. If it’s not tagged with one of your tags and it doesn’t stand out from the other hundred questions with those tags and show up on the page when you’re looking for something to answer, it doesn’t matter whether it’s the best quality question ever written. You’ll never see it. That’s what I mean by a marketing problem. Commented Feb 22 at 11:07
  • Well no, actually. In one of my tags it's a matter mostly of timing -- the volume is so high that I don't bother to try to keep up, so I see only questions with recent action. In my other tags, I see every question. If any marketing factor beyond appropriate tagging factors in, it's wordsmithing a good title, and really that's not so important. For me. Commented Feb 22 at 12:35
  • 2
    "Were they close-worthy but just got overlooked?" My experience is that they commonly are close-worthy but it's hard to close them - if they're duplicates, it's because the targets aren't well SEO-optimized or multiple candidates just barely miss the mark; if they don't have the right details then it takes effort to explain what the right details are; etc. Commented Feb 22 at 19:22
  • 1
    @JohnBollinger Getting a post with the right tags, with the right title, about the right topic in front of you at the right time is exactly what I mean by a marketing problem. I could write a question you would love to answer and it would still remain unanswered because I posted it in its final perfected form at the wrong time and you didn’t see it. Marketing is about getting the right person to see something and eventually to act on it. Commented Feb 23 at 21:52
  • I don't know what % of those 36% are this but... sometimes, you just have an on-topic question that is niche enough that nobody else has sat down and solved it to already have a solution on hand. Usually, if I ask one of these questions, I'll either end up solving it and post my solution as an answer, or I'll find an easier alternative that avoids the question, and in that case I think it's fine if the question goes unsolved until/unless somebody has need of solving it. Commented Feb 27 at 0:50
17

I'm going to zoom in on your tl;dr:

We are open to all ideas that would help more developers’ questions get asked on Stack Overflow...

I think this is the wrong focus. Here's one I like better:

We are open to all ideas that would help more developers’ questions get answers on Stack Overflow...

An answer is a win, whether it involves creating a new post or discovering an existing answer. This wording is still a bit ambiguous, however, and the Tour makes the same mistake (and has for as long as I can remember):

This site is all about getting answers.

I would argue that most new users who read this statement will read it as "Post a question, get an individualized answer." We need to explicitly set expectations that search and research come first, and only when those fail is a new question warranted. If we're going to "build a library of detailed, high-quality answers", let's direct developers to the card catalog first before they ask the harried librarian. Who is also an editor. And a curator. And an author.

...and for more of them to find success here...

20% of questions that get asked today get deleted, 22% are closed, and 36% survive but don’t get answered.

How many of those questions should have been deleted or closed? How many were duplicates (still a win!), or spam, or invitations for open-ended discussion, or so lacking in detail and OP interaction that there is no way to formulate a reasonable answer? Once we understand how many (and which) questions are novel, on-topic, and answerable, then we can begin to talk about why those questions have not found success.

...feel free to think outside the box.

That sounds great, and there are a lot of good ideas in the other responses, but it's important that we first make sure we know where the box is.

1
  • 4
    "...most new users who read this statement will read it as "Post a question, get an individualized answer." We need to explicitly set expectations..." Yes, exactly. This is the issue I was trying to get at in meta.stackoverflow.com/questions/432864. Commented Feb 22 at 19:07
16

Since you invited open-ending brainstorming, I wonder whether it would help if you helped answerers find questions they might be interested in answering.

I don't know whether those 36% of questions are unanswered because answerers see them and decide they can't answer or don't want to answer; or if it's because the right answerer never sees the question in the first place.

If it's the latter, then there might be an opportunity to help people get answers by doing a better job of matching unanswered questions to answerers with the ability and interest to answer.

Right now, the front page on (say) Tiktok or YouTube Shorts is extremely good at suggesting content that might be of interest, based on past interactions. In contrast, the Stack Overflow front page is pretty horrible at suggesting questions that I might want to answer. The front page is basically a firehose, with very little tailoring based on my past interactions with Stack Overflow (questions I've looked at, questions I've answered, questions I've downvoted or voted to close, etc.) So it seems like there might be an opportunity to vastly improve the front page and populate it with questions that I might be able to answer and want to answer.

Will that help? I don't know. It depends why those 36% of questions currently aren't getting answered. If they're not getting answered because relevant people are seeing the question and deciding they're not enthusiastic about answering, then this proposal won't help. If they're not getting answered because they're just not being shown to the right people, then this proposal might help askers have a more successful experience at Stack Overflow.

11
  • 1
    "you helped answerers find questions" - good idea. I believe that's where AI might be used, learning which questions I tend to view, comment or answer and filtering questions specifically for me from all my watched tags. Commented Feb 20 at 9:25
  • 1
    "Right now, the front page on (say) Tiktok or YouTube Shorts is extremely good at suggesting content that might be of interest" first of all, I disagree it's really good. But I think even more importantly, that will leave questions beholden to The Algorithm™. Because you will be only shown some stuff. You'd never know what you might have been able to answer but were not given on the front page. Commented Feb 20 at 10:57
  • 4
    @VLAZ, can't speak for others, but posting an answer is not a job, but a joy (but posting a question should be a hard job!). If there would be a better way for questions to reach me, rather then me (as of now) manually searching them, I might do them too. "Some" are better than none. Commented Feb 20 at 15:09
  • @Sinatr but you're ignoring the big thing - it doesn't solve the problem. If the problem is "people don't see the questions", then it shifts to "people don't see the question because of The Algorithm". So, in few years time we'd be discussing if the X% of unanswered questions were because people did have those questions as suggestions and didn't act on them, or whether these questions were shown at all. Not to mention all the other The Algorithm crap we'd accrue from people trying to appease it in various ways. I really don't want an algorithm to decide what is and isn't worth answering, too Commented Feb 20 at 15:16
  • 2
    @VLAZ, Hint: if you write THE ALGORITHM in caps it will look even more scary. Fact: I am not checking 100% of questions I could answer, I just go a page or two, finding maybe 10 questions max. What THE ALGORITHM can do is to take 99% of questions I will never look into, filter 98% of them to find another 10 I could answer and show them to me. In either case 97% of questions will stay unanswered by me. SORRY! Commented Feb 20 at 15:31
  • 1
    @Sinatr let's look at this from a different angle. Do you trust the company is able to make a recommendation algorithm that works? Because I've been pretty underwhelmed with both company released stuff and recommendation algorithms. So, intersecting the two I expect to be a disaster. If we look at the suggestion realistically (and not "best case scenario"), would you actually expect it to work? I don't. And I expect the fallout to be tremendous. Commented Feb 20 at 15:49
  • 1
    @VLAZ, I could at any time go through questions manually to find a new one. I see no problems. It's true, that if THE ALGORITHM feeds me with enough questions, I will not be looking for more. But I will answer 20 questions rather than 10 as of now. Commented Feb 20 at 15:51
  • 2
    @VLAZ I don't think your skepticism is unwarranted, and I truly have no idea whether they'd succeed or not, but "they wouldn't do a good job, therefore they shouldn't try" isn't a very compelling argument. THE ALGORITHM is just a tool to drive tailored traffic to questions; I think Sinatr's argument is largely that if it worked a little, even some of the time, that it would still be better than what we have now (i.e. nothing at all). Commented Feb 20 at 17:02
  • 1
    @zcoop98 I think the very long trail of half-finished, abandoned, and ignored projects that the company has done perfectly justifies me not trusting they can finish something successfully. We're talking about things as simple as changing some colours. Or trying to fix well-known bugs that then turn into a whole new problem. Time and time again, the company has shown to not even understand the product they have, nor understand the community needs. So, no - I really don't see anything but scepticism at the table here. Commented Feb 20 at 17:32
  • 2
    @VLAZ You're preaching to the choir– I see it too, and am just as frustrated, especially when they do stuff like revive a buggy, years-old project straight into a public testing phase rather than give it some TLC first... even with that in mind, I, personally, don't think the antidote will ever be "stop building new stuff" altogether. But man, I would love to see them devote a chunk of time to refining abandoned features... to your point, the list is loooong. Commented Feb 20 at 17:42
  • I think it might be nice to have a "shiboleet" mechanism to say like "yep, I consider myself halfway-decent at the relevant tags but I don't have a single clue how to start answering this. we need a wizard here." Bounty and "top-score no accepted answers" are decent proxies, but I'd rarely bounty somebody elses question and i upvote well-written easy questions just as much as well-written difficult ones Commented Feb 27 at 1:03
14

Frame challenge: this is fine, actually

20% of questions that get asked today get deleted, 22% are closed, and 36% survive but don’t get answered. Another way to look at this is that a question that gets asked today has a 60% chance of going unanswered (whether that's because it is closed, deleted, or just gets no responses).

The community has no real reason to be invested in seeing these percentages improve. Sending individual bad questions through the deletion and closure processes is a relatively mild inconvenience; what actually hurts is the aggregate sense that nobody (including the staff!) understand what we're trying to do here.

The community also has no incentive to take actions that would make the site money. Rather, volunteers who stick around are generally going to be motivated by the desire to help build something cool, regardless of whether anyone gets money out of it. You know, like open-source code projects are at the beginning.

And it's important to understand: in our case, the cool thing being built is not a service that answers questions, but instead a pile of useful Q&A pairs. Our KPIs aren't about the question counts or answer counts; they're about the counts of topics that have at least one good, easily-found question-answer pair. Answering bad questions doesn't help with that. Getting people to stop asking bad questions also doesn't help with that.

In fact, getting new users to ask more good questions is at best only a slight positive. It helps find those last few topics that aren't covered after 15+ years (and the trickle of plausibly important new ones created by new technologies), but it also generates noise that makes it harder to find the real gems.

4
  • 2
    I agree with most of this answer, but I don’t think it warrants the conclusion you’ve come to. On an individual-question level, closure and deletion don’t matter, but something’s wrong with Stack Overflow as a whole. We should care about getting more good questions since that’s the only way for the library to grow. And we should try to stem the flow of bad questions since low-quality Q&As clog up the library. Commented Feb 26 at 0:50
  • 2
    Like, obviously we’re not here to make a profit for Stack Exchange, Inc. But when people take to Reddit yelling about how hostile we are, that hurts trust in the library. When a veteran user VTCs/VTDs a bad question, that’s time they’re not spending curating the good parts of SO. So I don’t think it’s quite right to hand-wave away these concerns. Commented Feb 26 at 0:56
  • 1
    Plenty to agree with here but I'm not so sure about that last paragraph. If a "good question" can constitute "noise" then I think you've got either an overly liberal definition of "good question", an overly broad definition of "noise", or a belief I don't personally share that search engines and their users are so terrible at identifying relevant questions that even good, well-asked non-dupes that are useful to many people still impose major negative externalities by showing up in the results of unrelated searches and thus preventing users with unrelated queries from finding a relevant post. Commented Feb 26 at 12:34
  • 4
    @MarkAmery when I wrote it, I was assuming an overly liberal definition of "good question". But search engines really do give awful results for certain kinds of questions, even restricted to site:stackoverflow.com. It's hard to ask about certain less common things because they sound like other things everyone else asks about. I don't entirely agree with myself here but I wanted to make sure the overall idea was included, because I didn't see it represented. Several other answers here do give good suggestions for improving the process. Commented Feb 26 at 16:26
12

You are asking the wrong crowd. The Meta users are a tiny subsection of the userbase. The rules are well-known, and the community largely plays by those. So, why ask us why the newcomers aren't following the rules?

What you should do is to interview the new users posting piss-poor questions attracting close votes like bees to a honeypot. If you can find out why they think that "I'll just paste some code here and say that there is some error somewhere, I'm sure someone can help me" is a viable strategy.

But that's hard. A newcomer who's hitten right on the kisser with the VTC hammer isn't likely to engage further. They move along to Reddit or whatever.

Maybe they aren't getting the Q&A model right. They might expect an interactive experience. You know, a tutor who helps them to refine the question by asking about details.

Hmm, maybe that's where you could use the AI. Make an LLM to look at the question and analyze if it has enough details to be a valid question. If the AI cannot figure out what's being asked or notices that something's missing from the question, make the user fix the issues before allowing for a submit.

6
  • meta.stackoverflow.com/a/433064/11107541 meta.stackoverflow.com/a/433062/11107541 Commented Feb 20 at 8:33
  • @starball Good catch. I'd still try to interview the (failed) newposters before they move on to other sites. Going to Reddit like "why are you here, not at SO?" might not be received well. Commented Feb 20 at 8:59
  • 1
    Those new users can't even be bothered to write a decent question let alone look up what's required on the site they are posting are probably not going to be very interested in some survey or interview. Commented Feb 20 at 15:45
  • 3
    Re: If you can find out why they think that "I'll just paste some code ... I'm sure someone can help me" is a viable strategy. – Two thoughts. First, I think we (the meta crowd) collectively have a tendency to vastly overestimate the ease of asking a good question. Nailing down exactly what the problem is, how to describe it clearly, how to replicate it if necessary, is not trivially easy. Second, I don't think the site does a good job billing its own identity as explicitly different than the Quoras and Reddits of the world, which I'd wager is equally responsible for the poor experience. Commented Feb 20 at 16:17
  • 2
    I'd say asking a good question is actually harder than writing a good answer. Yet we expect those with the least experaince and least support to be the primary source of questions. Commented Feb 22 at 14:59
  • "So, why ask us why the newcomers aren't following the rules?" I mean, Meta users are the crowd that generally knows the answer to these questions. The issue is the company often doesn't listen to Meta. If I had 1 reputation point for every post by a staff member on Meta where the community gave feedback and it wasn't listened to/implemented, I'd be able to downvote posts from that rep alone, at least... maybe more. Commented Mar 3 at 17:21
12

Another way to look at this is that a question that gets asked today has a 60% chance of going unanswered (whether that's because it is closed, deleted, or just gets no responses).

Many of other answers posted here cover the problem from the question aspect. However, there is an additional problem that can be easily overlooked: SE partnership with AI companies that was not well received by the community and because of which some users deleted their accounts and some reduced their participation or stopped completely.

See: Our partnership with Google and commitment to socially responsible AI and Our Partnership with OpenAI

While there has been a continuous participation drop after general availability of gen AI models, there is another small drop in numbers clearly visible in the answers per month graph at the time when partnerships were announced. Note, that the first announcement in February, 2024 was not picked up by majority of users, while second one in May, 2024 was more publicized and caused protests and account deletions.

Query: https://data.stackexchange.com/stackoverflow/query/1888350/answers-per-month#graph

Answers per month graph

Change in 2024

Query: https://data.stackexchange.com/stackoverflow/query/1888371/answers-per-month-2024

Answers per month 2024 graph

It is not only AI in general that is hurting the participation, but also the stance and continuous push for AI by the company. You cannot fix the former, without considering and fixing the later.

4
  • 1
    The change in May 24 is only a tiny bit higher than the average monthly change in 24. Can you maybe show differences between consecutive months to better see it? Commented Feb 22 at 20:33
  • 2
    @NoDataDumpNoContribution I added graph for 2024. Commented Feb 22 at 20:46
  • 2
    But you do not show the differences. The difference would remove the underlying downward trend and would show if a change is really larger than the average change month to month and the variation thereof. The purpose would be to validate the effect (somebody could say it was just noise) and to get an impression of the size of it. Something like that announcement accelerated the decline by X months or so. Commented Feb 22 at 20:54
  • It started at 80000 at Jan-24 and ended at 35000 in Dec-24. The difference is 45000 in 12 months. The drop in May is, say, 68000 to 56000, so 12000 in one month and the average drop in the 11 other months is then 45000-12000=35000 in 11 months or roughly 3100 per month. If that trend continues zero new answers will be achieved at the end of 2025. The drop in May-24 was almost three times as strong as an average month before and after. Commented Feb 22 at 22:59
11

Yes, asking a good question and getting good answers are parts of having a good asking experience, but I'd see them as sort of separate problems to tackle (answers don't grow on trees), and it seems from the question here (the motivating first paragraph), you're more interested in the part on getting good answers, so I'll focus my thoughts here on that, but of course, I also really appreciate the work that's being done on designing the asking experience for quality in questions (Ex. Staging Ground), especially since question closure and deletion (which you focus on in the motivating paragraph) are generally responses to quality issues.

  • Attract experts.
    • Maybe you could do more to promote the public platform in dev channels / spaces.
    • Maybe you could push harder encouraging people to share links to questions they want answers to in other dev spaces.
    • Maybe you could make the UX for answerers less painful. General site UX has quite a few pain-points.
    • I know swag is a lot of work and complicated to do, but... it could be a good motivator, and there could be ways to do it at a very small, more manageable scale. (EDIT: oh hey!)
  • Teach people how to find unanswered, open questions that askers are already interested in. Ex. is:q answers:0 [tag] score:3.. closed:no. They may be harder questions, but they're likely higher-value. There was a period when I'd use queries like that (maybe I'll do it again sometime), and I have quite a few goodies to show for it. Others might find such badges motivating as well.
  • I do wonder if the our bad public image discourages some people from coming to try answering questions, but I don't know how to test that hypothesis, and I don't have any great ideas on how to address that right now.
6
  • 2
    About "I do wonder if the/our bad public image discourages some people from coming to try answering questions", I think that "bad public image" really varies per (main) Tag... When I joined 'SO' (as an Answerer in a small/niche Tag), what I found "most blocking" was that the Interface was annoyingly completely geared at Askers, and that especially the 50-Rep requirement for posting Comments (asking for clarifications on the Question) was the most blocking part for an Answerer... Commented Feb 19 at 19:27
  • 1
    @chivracq I've said it before- I see question quality as the root issue to address with the comment restriction. kevin might disagree with me on that though. curious what they think. Commented Feb 19 at 20:04
  • 1
    "I think that "bad public image" really varies per (main) Tag" - it might have an effect on how likely people are to feel discouraged; but when I see that kind of off-site criticism, universally it's (presented as being) about the entire site and not about a specific tag. Commented Feb 22 at 19:39
  • "General site UX has quite a few pain-points." Quite a few more now than there were in 2020 or before, I might add. Commented Mar 3 at 17:20
  • @starball I think limiting comments by rep is absurd. It only exists currently as a way of preventing spam, and it’s probably effective at that, but I think commenting in general would be vastly improved if it received a rebranding and an interface overhaul that better indicates its desired usage. Maybe “comments” isn’t the best way to describe it. Maybe we do want discussions in comments, make it threaded, hide it by default unless the post has more than x downvotes. Now we can have an entire thread of comments deleted in one go once it’s root is NLN. Commented Mar 3 at 18:57
  • getting pretty sidetracked from this answer post, but on the subject of comment restrictions, some of my recent thoughts: meta.stackexchange.com/a/407055/997587 Commented Mar 3 at 20:23
11

When a duplicate is not a duplicate

There is such a thing as a duplicate question, but most of the times, the questions closed as duplicate are not quite a duplicate of that other question, they just happen to have the same answer.

This causes a lot of friction:

  1. The OP is targeted at the duplicate question, and complains that their question isn't, actually, a duplicate of that other question over there.
  2. They are informed that some of the answers to that question actually answer their questions too.
  3. The OP complains that the first answer doesn't, actually, answer their question.
  4. They are informed that the 2nd/3rd answer does, indeed.

It's frustrating for everyone involved.

And doubly so when, actually, the OP is right -- yes, it happens rarely but it does happen -- and with further clarification on their question it turns out it's not quite a duplicate and the linked answers don't quite fit, but by now the question is closed, and the OP rage quitted.

(It's arguably their fault for not asking a clear question in the first place... but asking clear question is a hard-learned skill, we can't expect someone to ask perfect questions on the first try)

Already Answered

When a question is NOT an exact duplicate, what about importing answers from other questions?

That is, allow a user to suggest an existing answer, and have the answer appear on the new question with a banner: "This answer to "X" may answer this question", with a link to said question.

Possibly, also allow a "note" (as suggested by others) to explain why the answer is relevant to this question.

This is a very different experience from getting one's question downvoted/closed.

Even better, it allows other users to chime in (with regard to the relevance of the question) by voting up/down, and it allows dedicated answers to be posted and ranked alongside the linked answers, so that the best answer to the question naturally floats towards the top -- whether original or linked.

And if points matter:

  • Accept points should go to the person who posted the link to the pre-existing answer.
  • Upvote points should be split equally between original answerer and the person who posted the link to the pre-existing answer..
  • Downvote points should go to the person who posted the link to the pre-existing answer.

Finally, if the question turns out to actually be an exact duplicate? Well, it can always be closed then.

12
  • 2
    Was about to type this answer. Many questions are nearly duplicates, but have a slight but potentially important difference. Response from the community can be premature downvoting, closing, deletion. Instead SO might just need a process to ask a related question. Allow links to another question that are related, and then asking yours by pointing out the difference. And maybe put them in a different queue for closing so only people with points in the related language tag are allowed to vote close. Because to someone unfamiliar with the language it might just look the same. Commented Feb 21 at 15:22
  • Don't really understand what you're saying. Is this suggestion something that would happen as the question is receiving close votes? Is it completely separate from closing (and in that case why)? Commented Feb 21 at 21:32
  • @Laurel: It's an alternative to closing as duplicate. We all know that closing as duplicate is problematic, if only because the question often isn't an exact duplicate, it's just on the same topic, and thus can be answered with an existing answer. SO was asked multiple times to make it possible to link an answer as the target of a duplicate, rather than a question, but never did. I'm questioning the whole "closing" though. Closing is... disruptive. Harsh. Just because a question touches on the same topic as another existing doesn't make it "bad", which closing signals. (cont.) Commented Feb 22 at 11:44
  • @Laurel (cont.) Thus this proposal. If the question isn't a duplicate of another existing question, but just happens to be "tangent", then keep it open, and link existing answers in. This way the OP feels better about not having the door shut in their face, if the linked answers don't quite fit, it's no big deal -- they are voted up/down on their own merit -- new answers can be presented if they're better, etc... I think it may work better. Commented Feb 22 at 11:46
  • The motivation is solid: there's a void between a question and its proposed duplicate in a lot of cases. This isn't the first proposal I've seen like this (not even this week), and I've even come up with some similar thoughts myself. I'm not sold on the implementation of anything yet though. Like, is there a reason why this shouldn't always apply when a duplicate is suggested? Is there a reason why we should prefer a change to the mechanics of the site instead of saying these questions should not be closed? Commented Feb 22 at 12:04
  • @Laurel: is there a reason why this shouldn't always apply when a duplicate is suggested? => I'm torn on the topic of near-exact duplicate. (1) It's unclear what values those near-exact duplicate have; unlike a not-so-exact duplicate, they're too similar to be a useful (different) signpost and (2) I'm afraid that if near-exact duplicates are not closed, it's an invitation for users to copy/paste existing questions as a way to farm reputation. Commented Feb 22 at 12:07
  • @Laurel: Is there a reason why we should prefer a change to the mechanics of the site instead of saying these questions should not be closed => As a developer, I think there's value in links to related content, and I think there's a value in DRY. This is why I think it's worth it to (1) link existing answers, making the question they come from visible for anyone who wishes to have a look in case that question could match their situation better and (2) avoiding copy/pasting the same answer multiple times, but instead just... well.. linking to it. Commented Feb 22 at 12:10
  • See also what I said before about "perfect" duplicates; some dupes redirect anon users, so there could be value in handling it differently for everyone else too. Rereading your answer again, are you not also suggesting that we refrain from closing questions where there is a substantial gap between the proposed duplicate so that specific, dedicated answers can be posted addressing the new question (answers that, I assume, couldn't be posted to the duplicate)? Commented Feb 22 at 12:35
  • @Laurel: Rereading your answer again, are you not also suggesting that we refrain from closing questions where there is a substantial gap between the proposed duplicate so that specific [...] => I am yes. A lot of the complaints about questions closed as duplicate is that while the duplicate may be obvious to the expert which votes to close, they may not be obvious at all to newcomers. What we see as just a gap may seem like a world apart to them, which apart from the complaints and vitriol about "clueless/drunk-on-power moderators" mean they don't get any value from the duplicate target. Commented Feb 22 at 14:24
  • I agree with this, except I think upon accepting a 'link to a pre-existing answer' should automatically close the question as a duplicate (remember, the closure text states "this question already has an answer here). If someone accepts an answer that is essentially just a rephrased/restructured link to another answer, the question is effectively a duplicate, in both the sense that it's already got an answer elsewhere, _and in the sense that we don't want any more answers on this new question). Commented Mar 3 at 17:19
  • @TylerH: I'm not necessarily convinced, but it also seems reasonable. My doubt hinges on the fact that OPs regularly accept answers that get outvoted by what the community judges to be a (sometimes clearly) better answer, and closing the door in the face of the community just because the OP had a brainfart seems antithetic to the idea of building a quality Q&A for all (not just the OP). Commented Mar 3 at 18:52
  • @MatthieuM. In the case of duplicates like this, we can still receive those better answers, except they should be posted on the original question/duplicate target, not on the duplicate one. Commented Mar 3 at 19:29
9

Could you highlight the tag excerpt(and tag info page) to the new comers? The order of asking the questions should be modified to facilitate better question asking.

Tags first, body next, titles last as a summary of the body.

When the main tag is added, show that tag's excerpt(along with a link(More resources) to the tag info page), which contains crucial details expected by the SMEs of that tag. It's the only way for experts participating in that tag to communicate with new users. It's really bad, that you hide those under layers of clicks, which never gets seen. SMEs then blame the new users and new users blame it on SMEs, when the real culprit is you.

When you put titles first, users tend to think of titles as a brief catchphrase rather than a summary/tldr of the entire question, which is what is expected by the SMEs. Again, the culprit responsible for such miscommunication and hostility is you.

19
  • 2
    "When you put titles first, users tend to think of titles as a brief catchphrase" yes, often it's "What's wrong with this code?" or "Help needed CSS, VS, React" Commented Feb 20 at 10:59
  • It makes sense from a Star Trek Vulcan logical perspective. It is also pretty unorthodox though, I can't name a single instance on any site (or local software) where you'd input the title last. From that perspective I am a little hesitant, Stack Overflow already has plenty of issues with breaking from the norm making people misunderstand it because their assumptions are all wrong. Heck, just this week I saw people starting to use Discussions as if it was some kind of live chat service... But that's an extreme example. Commented Feb 20 at 13:49
  • Maybe showing title first and last? Like "let's revisit your title now that you've written the body" sorta thing, to help overcome the kneejerk aversion to skipping over the title first. Commented Feb 20 at 17:04
  • 1
    @Gimby FWIW, I'd prefer that they don't even mention it as title. But ask for a summary or a tldr of the question at the last. After posting, it'll automatically become the title. Compared to the comments thing that they're testing now, this has a much better potential reward for the work. Also, this is not a new concept, SO recommends that they write titles last Commented Feb 21 at 1:26
  • 1
    @Gimby, on those rare occasions where I post a question, I always write the title last. I'm not sure about forcing people into that mold, but the practice itself is perfectly sensible, and I don't think it's all that unorthodox. And I posit that it might seem more orthodox to you if, in the asking UI, the "title" were cast instead as one-line summary. Commented Feb 21 at 19:09
  • "to the new comers"? Unless "SME" means "Stack Matters Expert", even some of your experts don't know where the full wiki is. I've seen it happen myself. Make it easy for everyone to see what a tag is about when asking a question (and editing, really). Commented Feb 22 at 12:13
  • 2
    @Laurel True, but a subset of those experts, who edit and maintain the wiki are also more active in curating content. I also know other SMEs you're talking about. One of them never cast a single downvote in like 7+ years. In a sense, the perceived hostility is rarely from those type of SMEs, but only from those who care about quality of questions and therefore more involved in curating activities. Commented Feb 22 at 14:33
  • 2
    " It is also pretty unorthodox though, I can't name a single instance on any site (or local software) where you'd input the title last. " - Codidact implements this, for the same reasons being discussed here. Commented Feb 22 at 19:24
  • "In a sense, the perceived hostility is rarely from those type of SMEs, but only from those who care about quality of questions and therefore more involved in curating activities." There's plenty of hostility from those SMEs. It's just directed at us, rather than at the beginners. Commented Feb 22 at 19:25
  • 1
    @TheMaster Interesting ideas! You seem to be trying to solve a few problems - better titles and tag wiki discovery. And you’re also touching on a core UX principle: what looks like user error (even "hostility") very often a design flaw. I can see how many of the recurring tensions, like unclear expectations or fuzzy norms, can probably be traced back to design choices that don’t make those expectations visible or easy to act on. Commented Apr 18 at 3:37
  • 1
    @EmmaBee A tag excerpt is different from tag wiki. The excerpt contains a short blurb about the most important things. I want the whole excerpt with a link to wiki under "More resources" etc. There's also tag-tips, but it needs mods/staff to create/edit it. If direct copy paste can work, that's great. But the copied data would have a format specific to google-sheets.. I don't think it's feasible to create one for every tag. Tag excerpts make the expectations clear. So, tag first(which shows excerpt and link to tag wiki) and tldr summary last(which becomes a title). Commented Apr 18 at 4:22
  • 1
    @EmmaBee Also, from this answer, The author brings about many important points(but with the tone, it is downvoted). One complaint the author makes is: "it is absolutely inconceivable that in the “prompt” you don't get a “sign” when you try to add an image that says: “We remind you that codes, error messages, explanations or any other type of text should not be uploaded in images (link to the explanation)”.TBH that's a very good point.SO as a whole laments images/external links(like this q).But a simple prompt, when adding link could've fixed that. Commented Apr 18 at 4:31
  • 1
    @TheMaster Thanks for sharing! Does seem like some in-context "nudges" to reduce these smaller frictions around formatting would go a long way. Also asked Marce this: do you think are all the requirements we put on askers for questions are necessary? Asking good questions IS important for getting a good answer, but are we perhaps overloading too many requirements for questions upfront? Wondering if it's a lot OR is it simply a question of making these norms more visible to askers (which is important) Wondering if there are ways to reduce what is required upfront and then fix details later. Commented Apr 18 at 5:10
  • 1
    @EmmaBee Requirements are made for a variety of reasons. Most are based on years of reasoning. For example, Discouraging Images was made for the reasons mentioned in this q/a. It is easy for the asker to just post an image, but it's extremely hard, if not impossible to get the data for testing for answerers. While we don't want askers to adhere to all requirements, we do want them to at least follow the ones in the tag excerpt/no links-images/ english and a minimal repro [mcve]. If these are broken, there will be flurry of down/close votes. Commented Apr 18 at 5:30
  • 1
    @EmmaBee I don't think we ask a lot upfront. We ask almost nothing upfront.Currently nudges are done by volunteers through comments. Yes, it would greatly help if nudges are automated.For eg, if a link is added, providing a nudge that "Textual data as images are not recommended. Know more(link to that FAQ)" would greatly reduce the friction. I don't know if the timing could be delayed. The first hour after the question is posted is the most important.Votes gatherered during that hour stay.Closed questions rarely get reopened. More the time after posting, the lesser the rewards of any effort. Commented Apr 18 at 14:51
8

You should interview people on other sites, such as Reddit and Quora, because that's where those types go that hate the question asking process on SO. That's where potential new users are. Here you don't have potential new users, only current users. We have ideas too, but we aren't the ones you're trying to attract.

6
  • 5
    In theory, sure. In practice, those users are people who fundamentally want Stack Overflow to be something other than what it is; or rather, want to use something that is fundamentally different from what Stack Overflow is intended to be. Commented Feb 19 at 21:11
  • 3
    I agree. SO is what it is. those people want something else. however, SE Inc could grow to accommodate those people with something that is adjacent to SO, or maybe just a bit of extra plumbing stapled onto SO. they don't have to (shouldn't) remodel the current structure but add new buildings, with plumbing/utilities and footpaths going between them, so to speak. experiments should not happen "on prod" (SO), but evolution requires experiments, room for experiments. Commented Feb 19 at 21:16
  • 1
    In my mind, the Staging Ground is filling quite a bit of that "SO-adjacent" role already - especially since it supports threaded comments. I think it's fine if comments there don't get used completely for discussion, and aren't completely focused on getting the question published - since a lot of them realistically won't ever be, even if they have potential. Commented Feb 19 at 21:23
  • 2
    While this is technically true, most of those people just complain about the need to ask decent questions instead of poor-quality "do my homework for me" questions. They want SO to be free labor for their specific use-case, not a high-quality repository of general knowledge Commented Feb 19 at 21:42
  • 2
    reddit's model for that "debug this for me" is to have smaller communities (subreddits), where individuals don't notice the repetition over time because they don't get blasted with that firehose we have here, and an emphasis on "don't like it? don't respond" mentality that avoids confrontation/the potential to offend while atrophying people's ability to handle the most benign "confrontation". Commented Feb 19 at 21:46
  • 5
    For what it's worth, speaking as a former UX researcher here (and current dev), we definitely do research as well! We wanted to get meta's thoughts specifically on this topic in addition to our ongoing user research - IMO there's a place for both UXR and brainstorming in the product development process! Commented Feb 20 at 8:43
5

I would begin by ending the practice of encouraging users to ask follow-up questions in discussions, where users are even less likely to receive help.

-8

I don't have the numbers, but I think many users who are new to programming and do not yet have the skills to understand Stack Overflow do not have a good experience.

Please consider running an experiment for an "ELI5 Ask a Stack Overlow Question" wizard.


ELI5 = Explain it like I'm 5


Did you know that 5-year-olds can program, i.e., using Scratch Jr., but can't ask a question on Stack Overflow due to the site's minimal age policies? Putting aside the restriction, and thinking outside of the box, I suggest that the SO's UX team run a workshop with the developers and educators who work with these young programmers to think about how to make the Asking Question process for them.

Then run a similar workshop with a group of young programmers.

Then, use the lessons learned from these workshops to think about how the outcomes of the abovementioned workshops could be used on https://stackoverflow.com and the Stack Exchange Network.

References

Stack Overflow Blog

Others

Example of vendors offering programming resources for kids / parents

7
  • what would the different be compared to the existing wizard? explain what? Commented Mar 1 at 23:34
  • @starball There is not much to elaborate, explain how to ask a question in Stack Overflow. The current wizard is not ELI5. Please bear in mind that we were not asked to design the experiment; we were just asked for experiment ideas. Commented Mar 1 at 23:52
  • 2
    without that elaboration, it was not clear whether you were talking about the wizard explaining how to ask a question. or people giving answers to the question post-wizard explaining the answer to the question. Commented Mar 2 at 8:40
  • 1
    Your "ELI5" suggestion ignores the fact that even that blog mentions that text-based coding is more of a 10 and older thing. Commented Mar 3 at 15:08
  • 2
    And having read that blog... It's just an ad for their Scratch Jr. online classes... There goes that credibility. Commented Mar 3 at 15:09
  • 2
    for anyone reading this who doesn't know, minimum age to access or use SO is 13, or 16 for those in EU. Commented Mar 3 at 20:31
  • 1
    At which point talking to someone like they're 5 kinda becomes insulting... Commented Mar 3 at 21:31
-21

We navigate a deaf, stupid and disrespectful system.

Quality questions...

What is the limit?, can someone specify it?, asking “how to declare a variable?” is a low quality question, ah... I know, it's a question you can look up in any internet site, but... this site is “hanging from the moon?", is this not ‘the site’ where to look for questions related to the art of programming?, I understand that for some users, answering this kind of questions, is not ‘stimulating’, well, don't answer them, let those who have the right profile do it, let's not expel new users.

Closed in duplicate...

“The world is a square, flat surface, supported by four elephants”... it was once a ‘great truth’.
Anyone who is or has been active on the site for a while, knows that “there are answers and answers”, some very good, others... to that we must add the fact that languages evolve, and what years ago was a great truth, now is a great lie, but the thing does not end there, I have found questions closed by duplicates, which referred the user to another question also closed by duplicate, which referred to an incorrect answer. ... bullshit (sorry for the expression, but I want to emphasize the feeling of the OP in this situation), no, closing questions for being duplicated is not a good idea, eliminate it, let's not expel new users.

Negative votes...

“Aggression”, is what both the questioner and the answerer feel (much more the new users, and even more, if there is no comment clarifying the reason for it), anyone with a minimum understanding of human psychology, knows that it is highly counterproductive to behave that way, to that we must add a reality known to all (both those who moderate, those who respond and those who ask), and is that there are users who .... let's say it sweetly, use the negative vote for “sporting” purposes, and others that show a “clear lack of criteria” when it comes to perform this type of actions, so this option should be eliminated.
If it is not eliminated, at least a system should be implemented that forces to give an explanation of the vote, and that allows the “voted”, to make a complaint if he considers that the vote is not fair (although the user does not know who or who cast the vote/s, the system does), this complaint must be analyzed by “competent programmers in the language in question”, and if the voter accumulates three verified complaints, the privilege is removed for a while, let's not expel new users.

Badly formulated questions...

“Let's burn the new user who has not read the 25 pages of the help center before asking his question”, it took me three months to learn all the rules of the site, to expect a new user, who does not even know that these rules exist, let alone where to look for them, to read them before asking his question, is a sign of absolute ignorance of the usual behavior of people.
Now, this is a problem, and then what, we leave it as it is, well no, the solution (actually an approximation) is in the input prompt for the questions:
we are in the year 2025...
this is a “programmers” site...
it is absolutely inconceivable that in the “prompt” you don't get a “sign” when you try to add an image that says: “We remind you that codes, error messages, explanations or any other type of text should not be uploaded in images (link to the explanation)”, and there are other guidelines that can be given to the user while typing (I omit the rest because they have already been suggested before).
In 2023, in the spanish site, I made a “mini” experiment, during a couple of months, I dedicated “full time”, to add comments in the questions as soon as they had been made, indicating to the OP the necessary modifications, my experiment resulted in a lower number of closed questions (to “good eye” I would say that “only” 80% answer properly, on the other hand, I could not get to all, yes... sometimes I sleep, and others I simply arrive after the three minutes it takes the “closing talibans”... to close it), this shows us that with little, it is possible to unload work from the shoulders of the moderators, and create a more “human” experience for the OP, I think this feature should be implemented in users who have a low reputation, do not expel new users, and do not bother the “veterans”.

Closed questions...

At the level of “what does the OP feel”, it is the same as “Close for duplicate”, but if we focus on the messages that accompany the closure, many times incoherent, or the bad work of users who detect a word in the title and vote for the closure (typical “ArrayIndexOutOfBoundsException”, as if there were not different scenarios for this), etc, the feeling is also applicable to the contributor, who took 45 minutes to make an answer and when he finishes, he either publishes it and the question is closed, or he doesn't even publish it (even more frustrating).
It is enough to deal with writing an answer and when you go to publish, you find another similar, this has no solution, then “put the violin in the case and go to play somewhere else”, but when you find a question closed by duplicate, or by “bad practice” of some moderators, you feel like an “idiot”, and an angry idiot, this is not good, not only take away the desire to collaborate, but if you overcome them, you find yourself trying to write quick answers, to arrive before a possible closure, which results in a lower quality of the same, in this regard I have two proposals, the most basic, a question that already has an answer is never closed, the other is to create the "answering" button, which marks the question, and you cannot eliminate marked questions (the implementation of the second makes the first unnecessary), then we can see if there are users who answer questions "seriously out of place", and what to do with them, but let's start with the basics, let's not expel the new ones users, and let's not disrespect those who maintain the site.

Hello Michael!!!...

The height of stupidity, including a greeting or a thank you in a question or answer is prohibited, if you include them, they will be deleted, I don't know who came up with this prohibition, just fire them.
I am human,
I am educated,
I am sociable,
I am empathetic,
and the worst thing... I like being one. The commercial part does not interest me, but if I were the owner, I would force each moderator to greet cordially, and I would even invite the OP to have a coffee, while waiting for the response, because apart from that... I am a good merchant, and I know how to take care of my business.

"More dangerous than a monkey with a knife"...

I already mentioned the moderators... "special", there is only one Husain Bolt, there is only one Messi, but there are many carpenters, I would hesitate to put a carpenter to play in the national team... or Messi to repair a piece of furniture, but what I would not hesitate about is not to put a blind person to direct traffic, or a mute to report a sporting event, not all people have "what it takes" to be a moderator, it is obvious that the company succeeds very cheap (shortsighted look) to put this task in the hands of unpaid people, but there is the collateral cost, these users are behind the big complaints about the site. StackOverflow in Spanish, it sank, some of us raised our voices, but the company did not listen, today there are almost as many questions brought from the past by the chatbot, as new questions, the site seems like a desert, this one still has a while to get to that situation...

13
  • 6
    Please try to read existing Q&A on Meta to make sure you understand the rationale for how the site works, before trying to criticize it. Your complaints are not new (many of them have been made for over a decade, over and over) - and are not acted upon, because they fundamentally are the complaints of people who want a different site from what Stack Overflow is trying to be, intentionally and by design, for a specific, well thought-out purpose. It just isn't the purpose you have in mind. Commented Feb 25 at 20:23
  • 1
    Well, you just need to look at the "ship", realize that it is sinking, and assume the need to implement some kind of change :) Commented Feb 26 at 0:44
  • 3
    This is another reason why we get garbage questions. Stack Overflow has consistently time and time again failed to tell new and casual users what type of site it is - and that it is not a site for everything that happens to be a question. Like for example this guy Mark here who obviously has no idea at all how SO works. Commented Feb 26 at 2:41
  • 4
    @MarcePuente sorry but this site runs the way it was intended to run. It does not run in the fictional way that you have made up all by yourself. If you do not understand how it works, then go find out. Commented Feb 26 at 2:44
  • 3
    That opening sentence and later complaining about aggression is an interesting combination. Commented Feb 26 at 12:53
  • 3
    @MarcePuente Or your free to find a different ship, if you are unhappy with this one. Stack overflow is not, and should not be the only place on the internet. Commented Feb 26 at 20:19
  • 1
    This appears to be a (very poorly worded) diatribe against Stack Overflow in general, perhaps coming from the author's own experiences on the site. It doesn't appear to address the question in any substantive way. Full disclosure, for that reason, I've cast a delete vote on it. Please reserve answers for responses that address the question that was asked. Commented Mar 3 at 17:15
  • @TylerH Meh... It addresses and answers the question. You just don't like the answer. But even you would agree that there are some good proposals here, for eg, you don't get a “sign” when you try to add an image that says: “We remind you that codes, error messages, explanations or any other type of text should not be uploaded in images (link to the explanation)” Deleting conflicting opinions creates a echo chamber with barely any new ideas: "Oh we have already discussed it. We know it all. You got nothing new. No one ever would come up with something better" Commented Mar 27 at 14:57
  • @TheMaster No, I genuinely don't think this is a legitimate attempt at responding to the question, and it has zero value in remaining around. Please don't put words in my mouth or presume to better understand my thoughts than me. There are many other answers I've disagreed with here in this question and on Meta in general that I did not vote to delete but that were of low enough score. Commented Mar 27 at 16:22
  • @TylerH Do you really believe the quoted italicized part in my previous comment doesn't even remotely address the question? Commented Mar 27 at 22:55
  • @MarcePuente I hear a lot of frustration in your post, and I am sorry about this! Hopefully we can remove these frictions bit by bit. Interesting to hear about your commenting experiment and the results! To me that suggests helping users cover the basics of writing a decent question (maybe with nudges and guidance), would go far in reducing closures. I do wonder though: are all the requirements for questions necessary? Asking good questions is important to getting a good answer, but I wonder if we may also be overloading too many requirements for questions upfront. Curious where the line is. Commented Apr 18 at 4:57
  • @EmmaBee If you mean my frustration.... you're not understanding what I want to express (surely I explained it badly), although I feel it, I learned to live with it and I'm not a heavy user, but there are others who are (especially those who ask and are ‘new’), who end up migrating to other spaces, my struggle is not to be more comfortable with the rules, Commented Apr 21 at 7:09
  • if not to prevent further loss of users, with respect to the question you ask, that's ‘the question’, and it is one of the two complaints that you can find in any programming site where StackOverFlow is discussed, "you enter for the first time to the site and they ask you to know a lot of rules to formulate a question “, (the other is ”they treat you as if you were a rubbish ’), regarding the first one, I agree with you, the formulation of the question has to be guided (at least until you have done 10 questions). .. Commented Apr 21 at 7:10

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.