118

Moderator Note: Programmers changed its name recently to Software Engineering.

This post has been updated to reflect the new scope, but it still refers to Programmers for historical reasons. Wherever you see Programmers in this post, you can now mentally substitute "Software Engineering."

You're on Stack Overflow and you've found a question that isn't about coding. It's about design or something squishy like that. You are trying to be helpful, and you put a comment in the question:

You should try asking on Programmers.SE instead. --YourName 2 minutes ago

... and suddenly, out of nowhere Programmer.SE users sweep in and saying:

No, this isn't a good question for Programmers.SE --AnotherName 5 seconds ago

Why are they saying that this isn't a good question for Programmers.SE? What is in scope on that squishy site with the out of focus whiteboard background and a coffee thing as its favico?

What should I look for when determining if a question should go on Programmers? And while you're at it answering these questions, why do they get so annoyed at these suggestions?

  • 35
    would be funny to change help center wording, from "conceptual questions about software development" to "questions about design or something squishy like that" :) – gnat Feb 18 '15 at 20:18
  • 12
    Don't tempt me @gnat... – yannis Feb 19 '15 at 15:41
  • 9
    Part of me thinks there should be an answer here (to the question in the title, rather than to any of the four questions in the body) saying, "To a zeroth-order approximation, nothing goes on Programmers.SE" – AakashM Feb 27 '15 at 15:25
  • 3
    @AakashM I'd probably upvote that as an answer. If you hang out in the whiteboard and watch the occasional feed of "belongs on programmers" type comments that shows up you'll see a... oh, I'd guess about 1 out of 20 be actual questions that would be good here. – user40980 Feb 27 '15 at 16:13
  • 10
    The fact that this is a FAQ that requires a 1500-word essay to answer IME clearly demonstrates that the split between Stack Overflow and Programmers is totally arbitrary and was a bad idea in the first place. – Mark Seemann Jun 30 '15 at 11:12
  • 2
    @MarkSeemann This was written to try to help people understand that questions that are too broad or an "what do you think?" opinion poll on Stack Overflow are not appropriate here. There are also the parts that are completely off topic and that people suggesting a user to repost on P.SE rarely read our help center and will suggest career and legal advice questions be posted here. SO has since focused on "debug this" and a code focus and most of the questions asked here would be off topic on Stack Overflow now. – user40980 Jun 30 '15 at 13:06
  • 2
    @MarkSeemann as an aside, I would encourage you to look through some of the things people have suggested reposting on Programmers.SE. This was written in an attempt to help people understand that "no, we don't want your poorly specified too broad questions either" – user40980 Jun 30 '15 at 14:32
70

What is a good question?

For a start, a good question is:

  • not too broad
  • not opinion polling
  • and not unclear.

If you'd close a question on Stack Overflow for one of these reasons, don't suggest posting it here on Software Engineering.SE.

Those close reasons span all of the Stack Exchange network.

For a description or interpretation of the close reasons, which are specific to this Software Engineering SE site, see Why was my question closed or down voted?


What are common types of poor question?

Please, we don't want these, though it seems like people keep suggesting them to be reposted here.

"I don't understand..."

Questions that that boil down to "I don't understand ${concept}" with no additional information about what is understood tend to get down voted and closed (too broad). There is an expectation that at least the person read the Wikipedia article on the concept and explained what was understood and not.

"Here's my problem. Anyone have a solution?"

Another example of commonly (incorrectly) referred questions are those of "come up with a design or solution for me." Similar to how Stack Overflow has issues with people doing problem statement questions ("write a program that takes the average of three values"), Programmers.SE has similar issues with similar questions ("here is what I want the outcome to be, anyone have a solution?").

Neither Stack Overflow nor Software Engineering.SE is a code/solution writing service. Just because the question lacks code but has a problem statement doesn't mean it belongs here as is. The question needs to be fixed up significantly before it is reposted on the proper site and suggesting to do so with the question in its current state does a disservice to the person asking the question. For a more detailed outline of what is generally expected at Programmers, see Why is research important?

"A blog I read said..."

Questions that are trying to get someone to explain more about something someone said in a blog (or worse - twitter) post also often have trouble with being a good question here. More about those questions can be read at Discuss this ${blog}

Our custom off topic reasons

And then there's our off topic reasons that were alluded to above:

These are specific forms of polling that the Q&A format really isn't geared to answer. While close voters may argue amongst themselves about too broad or the clarity of the question - these reasons often meet with very prompt close votes.


So what is in scope here?

The help center i.e. What topics can I ask about here? is the best page to read for our scope:

  • software development methods and practices
  • requirements, architecture, and design
  • quality assurance and testing
  • configuration management, build, release, and deployment

What we want are well thought out and researched questions about the Software Development Life Cycle that aren't code troubleshooting questions.

Remember that algorithm questions are also on topic on Stack Overflow (so you don't need to migrate those).

If you have a question, stop into chat and ask (we're a friendly bunch). If it's a good question, we might be able to prod a SO mod into migrating it or help flag it ourselves. I don't believe I've had a flag to migrate a question from SO to P.SE declined - explaining that the person flagging the question, despite the low Stack Overflow rep is a trusted user on the target site and will endeavor to have it remain open on the target site rather than being a rejected migration does go a long ways to helping.

Also consider that many of the "soft and squishy" questions are ones that can be answered in chat. We are easily distracted by actual questions when people ask them.


So, why so mad?

Software Engineering.SE has a much smaller community than Stack Overflow. We get about 30-40 questions per day. Stack Overflow gets about 8k questions per day. This is orders of magnitude different in what we look at. It also partially relates to how many people we have available to moderate the site.

To put this into comparison, the Java tag on Stack Overflow gets more questions in one hour than we get in a day. We're much more in line with the Perl tag on Stack Overflow, or Matlab and a bit more active than the Delphi tag.

There are days when there are more suggestions to migrate or repost to Software Engineering.SE than there are questions posted here.

There's a bit of a history here. Back when Software Engineering (Programmers.SE) was changing from its "not programming related" charter to its "conceptual software design questions" we got crap hurled at us. Several times more crap questions were migrated to Programmers.SE each day than were asked on the site. This lead to the post Please stop using SoftwareEngineering.SE as your toilet bowl because we were getting all the questions that were "meh, no code, migrate it to Programmers.SE". As an aside, also give How can I encourage Stack Overflow to rein in the 'subjective' vigilantes? a read for some more history.

When a new user posts a question and then gets told to repost it on Programmers.SE... and then has it resoundingly trounced and down voted - it's not a good experience for anyone involved. We really don't want that. We've got our own set of "why is Programmers.SE so negative" and "why do we get so much crap?" questions in meta too. Exacerbating the problem really doesn't help anyone and it takes up the time of the community moderation.

Stack Overflow can completely swamp us with "post this on Programmers.SE" comments and when even a fraction of those questions show up here (and get closed) it's problematic. So the attempts to nip it in the bud and try to help educate the person suggesting the reposting, and the person asking the question, and hopefully try to prevent the "no code, repost elsewhere" meme from spreading we will.

That you have made it this far, I will apologize for any suggestion that we're a bit terse or angry in the comments. It can be true (though we're not angry - we're just not able to fully express our feelings - it's exasperation and weariness). But when there are a dozen or so comments a day with suggestions one can be a bit sparse with words. Imagine hanging out on the php tag and writing a customized comment each time someone has a SQL injection vulnerability in the code... yea, it's like that.

And no, trying to fit all of this in a comment doesn't work either.


So, what can you do?

  • Think about if it's a good question.
  • Flag it for migration if it is.
  • If it's a really good question, ask in chat here for us to help it move along.
  • Avoid bouncing users from one site to another (and having the question get closed on each)
  • Try answering good questions on this site to understand what we are looking for
  • 14
    This is a good summary of the situation. But honestly, to me, such overcomplicated rules and guidelines effectively hint that there is little reason for P.SE to exist. I understand the original reason for its existence, and I understand why it was migrated to something else (with much frustration from some prominent "old guard" users)... but honestly, there is almost nothing I would ask here. If it's so complex to explain how people should use a website, maybe it should be taken out and shot? :) – Andres F. Jun 18 '15 at 20:36
  • 3
    I'd also point to questions such as "Why do programs use call stacks, if nested function calls can be inlined?", "What's the point of implementing a Stack using two queues?", "How to simulate a REST API?" and "How can I write unit tests that simplify feature implementation?" that are questions appropriate here and uniquely so (they are off topic on the other computing stacks). We have our niche. It is a hard one to ask questions of (try asking on MathOverflow or Skeptics some time) - but it exists and we do fill it well. – user40980 Jun 18 '15 at 20:44
  • 3
    @MichaelT yes, yes, I'm aware of this. I'm a low-rep but long-time lurking user. I've read most of the (passionate) debates about the role of P.SE. These days I tend to lean towards the "P.SE lacks focus and is not particularly useful, and it's way too complex to explain why" camp. (I'm sure many other stackexchange sites have the same problem!) – Andres F. Jun 18 '15 at 20:45
  • 1
    @AndresF. in order to say that it should go away, the first step would be making sure that the scope of the sites that currently send questions here is expanded to include those questions that it is currently sending our way. For example, licensing questions ("what do I need to do to meet the requirements for GPL") needs to be on topic on another site. Until you can figure out how to make Algorithm to find groups of common relations on topic on Stack Overflow, we have our focus and utility. – user40980 Jun 18 '15 at 20:51
  • 1
    ... that we continue to have to deal with people who believe the scope to be "nearly anything that would be closed as too broad or primarily opinion on stack overflow", makes it difficult for us to actually explain that "no, those questions are not appropriate here, or anywhere else on stack exchange." It is much easier to explain our scope when we don't have the additional task of explaining that everything soft isn't on topic here. – user40980 Jun 18 '15 at 20:54
  • 1
    @MichaelT I agree about the StackOverflow problem. Still, I think this site lacks focus; and lack of focus is in itself a misfeature. It's very hard to explain what P.SE is about, which should be a red flag (and yes, the historical change in focus made things worse). The name itself is a historical artifact that doesn't reflect the true scope of the site. Otherwise, the help center would be enough to explain P.SE, and this meta discussion wouldn't be necessary. – Andres F. Jun 18 '15 at 20:59
  • 1
    @AndresF. the help center is indeed sufficient to explain what P.SE is about. However, we have often found that people do not read the help center, the tour, or are unfamiliar with the basic concepts of "primarily opinion", "too broad" and "unclear" or how they apply to all Stack Exchange sites. Our common problem is people recommending questions that are closed as one of these on Stack Overflow be reposted here. That people believe that this is appropriate is troubling and the real problem. This post tries to address that preconception. – user40980 Jun 18 '15 at 21:10
  • 1
    @MichaelT I'm familiar with all this. This problem in its more general form is pervasive in stackexchange (and, I'd say, most internet sites with rules of any kind). I'm just saying, I find P.SE makes this worse by lacking a clear focus; of all the stackexchange sites I'm familiar with, this one is the less clearly defined, which makes the StackOverflow redirection problem even worse. I also don't think this meta question will help; people who don't read the help center won't pay attention to this either. And they are legion! This is of course just my opinion, so at this point I'll shut up. – Andres F. Jun 18 '15 at 23:09
  • 2
    @AndresF. but it has helped. The rate of people suggesting programmers.SE in chat (we've got a chat bot monitoring it) has dropped. Where this post was mentioned in comments we have occasionally gotten "ahh, ok, that makes sense" type responses. This isn't a post that we expect people to read first, but in reading it afterwards, it does appear to have helped in reducing the rate of people suggesting which indirectly improves the new user experience - and that is the important thing. – user40980 Jun 18 '15 at 23:29
  • 1
    @ivan_pozdeev there is quite a bit in scope. However, Programmers.SE has a particular challenge that is probably only second to Skeptics in the challenge of writing a good question to begin with. That narrow line between a good question and too broad, between a design review and primarily opinion. We are all to often faced with questions that amount to "how do I do everything for $project" rather than "how do I solve $problem within $project" - the former being a question that is unanswerable within the Q&A format (here are the dozen tables, four pages of UML, ...). – user40980 Oct 8 '15 at 20:36
  • 1
    @ivan_pozdeev consider questions such as programmers.stackexchange.com/q/299401 programmers.stackexchange.com/q/299386 programmers.stackexchange.com/q/299379 - these could be on topic, if they weren't extremely broad. If the OP was to narrow it down to the problem they were having (rather than trying to crowdsource all of the design work), it might make for an answerable question. With the lower question volume, we are able to close 80% of the 90% of everything is crap more promptly that gives the appearance that nothing is on topic. – user40980 Oct 8 '15 at 20:58
  • 1
    (numbers from the Pareto principle and Sturgeon's law) – user40980 Oct 8 '15 at 20:59
  • 1
    @MichaelT I'm not saying that unanswerable questions are acceptable. I'm saying that there's no principle difference with answerable ones other than if the scope is up to current community's tastes (thus it's wrong to blatantly call them "crap" just for this). So, the blatant "design suggestions" prohibition actually bans all design questions. – ivan_pozdeev Oct 8 '15 at 21:10
  • 1
    @ivan_pozdeev It is rather difficult to ask a good 'design suggestion' question as it requires the person to specifically identify the problem. Consider programmers.stackexchange.com/q/299179 or programmers.stackexchange.com/q/294455 which are both design questions, but are focused on a specific design problem. It is not that 'design suggestions' are off topic, because they aren't. Rather a question that can produce a dozen of different answers with none of them being complete is too broad. That is the problem that most design questions run into. – user40980 Oct 8 '15 at 21:43
  • 3
    @ErikAlapää I would suggest posting such a proposal on meta.stackoverflow and see how well it goes. We (the community of Programmers.SE) have very little control over the scopes of other Stack Exchange sites. – user40980 Oct 27 '15 at 20:00
8

(special edition for folks coming from Math.SE, reposted from Math meta)

Hint: Software Engineering Stack Exchange doesn't do coding help and expect research before asking

Sometimes, we at Software Engineering get a stream of troublesome questions from folks with linked accounts at Math.SE. One of them was kind enough to explain why they get there:

my friends told me that "stack exchange" is undergraduate or master level, and "stack overflow" is PhD or research level. I think my question is very basic, so I asked here

Another user, familiar with many other sites, even figured what could lead to such a misconception:

This "exchange" is the undergraduate while "overflow" is the graduate level may because of the idea for Math vs MathOverflow and Physics vs PhysicsOverflow (not SE related) leaking into other domains. While I don't believe that that naming distinction needs to be fixed (nor can we do anything about it), being able to more promptly close (and delete) the debugging and blatantly off topic questions with a minimum of additional community moderation needed.

It is sad to observe how many of them have fallen victims of this misunderstanding, getting their questions heavily voted down, closed and deleted. This includes even established users having over 1K rep at Math.SE (1, 2).

Things many Math.SE folks seem to miss when they try their luck at Software Engineering are:

  • coding and debugging help is off-topic at Software Engineering.SE
  • it is generally expected of askers to demonstrate research they did before asking

Further reading for those interested to learn more about Software Engineering.SE:

An overview of CS and programming related sites at SE network:

  • Your Math Meta link is broken. – Robert Harvey Apr 9 '16 at 22:31
  • @RobertHarvey no it's not. If you hover on it you'll see "10K link" – gnat Apr 10 '16 at 4:55
  • yet another related example - established user of Math SE (member for almost 2 years, over 5K rep over there) dumps blatantly off-topic, low quality code troubleshooting question at Programmers: 10K link. Full question content is "Why the following programme is not working? <code dump>" – gnat Apr 20 '16 at 14:39
  • 2
    That's weird. I wonder what Math is burning down today... – Shog9 Apr 20 '16 at 17:02
  • @Shog9 today is a usual day over there, post refers other examples like that posted in other days: "This includes even established users having over 1K rep at Math.SE (1, 2)" - here, '1' and '2' are clickable (10K) links – gnat Apr 20 '16 at 17:06
  • ...if you think of it, this is nothing surprising. Where else could they dump questions like that but Programmers? At Stack Overflow, question with text like "Why the following programme is not working? <code dump>" would be automatically swallowed by Triage heuristics. Over time they simply have learned that there is no way for this to get to SO. So they naturally try something else in a hope that it works. At least at Programmers their stuff gets visible at front page – gnat Apr 20 '16 at 17:14
  • ...and yet another example: user with over 5 years and 3K rep at Math posts blatantly off-topic debugging help request. Full question: "Following is from Python interactive console, why the list x is not getting assigned the values in reverse order [3,2,1] ? why the output is "None" <code dump>" – gnat Sep 23 '16 at 9:56
  • ...and yet another example: user with over 3 years and 4K rep at Math posts blatantly off-topic coding help / software recommendation request: "I have a text and want to copy-paste it in textboxes of a software... Is there any way to enter the text without typing it? Is there any software doing this? Could you please guide me to write a c sharp program doing this automatically? (i.e., gets the text and types it in that sofware.)" – gnat Feb 17 '17 at 14:09
  • ...yet another example: user with over 2 years and 1.1K rep at Math.SE posts blatantly off-topic coding help / homework dump: "<code dump> what is the value of $n, a, b, c$ after executing the above code? Please help." – gnat Aug 21 '17 at 6:47
  • ...and yet another example: user with about 4 years and 1.2K rep at Math posts blatantly off-topic debugging help request. Full question: "What wrong with this super easy program? It should print 4 Hello World. But it doesn't show anything. If I replace x>5 instead of 6>5, it works. <code dump>" – gnat Feb 8 '18 at 7:26
  • ...and yet another example: user with over 4 years and about 16K rep (wow!) at Math posts blatantly off-topic debugging help request: "I am an ancient programmer who I need to use my own visual-basic6 files now. Many years ago, I set an access database file on data recordset and I filtered some fields with these lines: <code dump> Now, I tried to take this trick on a data recordset equipped with an Excel file, but it doesn't work. How can I do this? Is is applicable?" – gnat May 4 '18 at 15:55
  • @gnat: The only example with an OP that has enough rep to actually read the guidance you linked to is the last one. – Robert Harvey Aug 29 '18 at 22:02
  • @RobertHarvey I somehow feel that you think I am referring them to Math meta - just in case if you really think so, I don't. All these folks are pointed to this post, at our meta and all of them can easily see this. (FWIW the reason to refer math meta post here is mostly technical, to prove that they don't want this guidance over there, which makes it easier to understand why we host it here) – gnat Aug 29 '18 at 22:06
0

I love the answer here What's the difference between Programmers and Stack Overflow? which is a quote from here, https://stackoverflow.blog/2010/12/17/introducing-programmers-stackexchange-com/:

In a nutshell, Stack Overflow is for when you’re front of your compiler or editor working through code issues. Programmers is for when you’re in front of a whiteboard working through higher level conceptual programming issues.

Stated another way, Stack Overflow questions almost all have actual source code in the questions or answers. It’s much rarer (though certainly OK) for a Programmers question to contain source code.

Since neither of these two links is references in the current answers to this question, thought it is worth adding them.

You must log in to answer this question.