8
\$\begingroup\$

One of the close reasons that exists is:

Questions containing broken code or asking for advice about code not yet written are off-topic, as the code is not ready for review. Such questions may be suitable for Stack Overflow or Programmers. After the question has been edited to contain working code, we will consider reopening it.

While I'm having trouble finding it off hand, I have seen more than a few questions that were reposted on Programmers.SE after having been closed with this reason. I'm sure there are some on Stack Overflow.

Unfortunately, as I am sure you are aware, that people don't read the help/on-topic page of the help center (if they did, they wouldn't have asked the question on Code Review in the first place). This also means they don't read the help/on-topic on Programmers either when reposting their question.

I've cast some close votes on questions in recent times that were debugging questions that had nothing to do with the design.

Could the close reason, instead of linking to the site link to the on topic definition for the site. This might help people realize the better location.

Ideally, a moderator would never close with this reason because they have the ability to migrate the question to the proper site (I assume that when the site finishes with the graduation ceremony, the migration paths will be added and this close reason will be removed - on Programmers.SE we had some issues with people closing an early version of "go repost somewhere else" (see graph in associated question and the jump for "belongs" (purple - migration) which jumped after the "questions about specific programming problems" (light blue) was removed). So, when you graduate, remove this close reason and let people migrate instead.

In theory, the moderator will have a better idea if the question is a design issue or a code / debug issue than the OP has (when they don't read the site description) and be able to move it more smoothly to the proper site than asking the OP to repost the question. This is especially helpful when there is additional clarifying material in the comments, or it was reformatted. Also, if the question is unclear, too broad, or primarily opinion, no matter if it was on-topic-ish on the other site, the moderator would close it appropriately rather than bouncing the OP around to other sites.

On P.SE, we've tended to find that when a close reason or comment suggests someone to post on another site, it's rarely a good thing and often just leads to a much poorer user experience ("well, the guys on Stack Overflow told me to repost on Programmers after I got the question closed on Code Review" when the original problem is it is unclear to begin with).

Thus, in general, I'd urge you to strongly reconsider having this close reason at all. If something belongs somewhere else, flag it for migration. Closing it with "go repost it over there" doesn't allow for the feedback cycles of rejected migrations and attention to why things are getting moved. These close reasons are often a "we don't want to deal with it, so go over there" - which isn't fair to the OP, or the over there which now has to deal with someone who got the post closed again (and isn't happy about it at all).


If a SE employee/dev can poke at this, it might be useful to try to track down the "the question was closed with this reason here, reposted on [SO|P.SE] and its fate there." I am aware of the difficulty of the matching posts between the sites and might suggest something like 'the first 42 bytes of the question match 42 bytes of a question (anywhere in the post) on another site' as criteria for matching.

This would help get a better idea of how big the repost rather than migrate trend is and if there is any real concern to be worried about this.

\$\endgroup\$
  • 2
    \$\begingroup\$ The "Could the close reason, instead of linking to the site link to the on topic definition for the site. This might help people realize the better location." makes a ton of sense, so we can make that happen with immediate effect, and let the rest go through some more debate. \$\endgroup\$ – rolfl Oct 14 '14 at 0:29
  • \$\begingroup\$ It makes so much sense, that it has been done like that 'for a while' already... e.g. Uptime is not correct \$\endgroup\$ – rolfl Oct 14 '14 at 0:29
  • \$\begingroup\$ @rolfl So it does, and unfortunately they're still not reading it. sigh. \$\endgroup\$ – user22048 Oct 14 '14 at 0:31
  • \$\begingroup\$ How to request for migration? By a flag? It should be embedded in the text to let them know the proper way (not to repost). \$\endgroup\$ – user52292 Oct 15 '14 at 5:32
  • \$\begingroup\$ @MichaelT: The close reason has now been updated, with the links to both sites removed. \$\endgroup\$ – Jamal Oct 16 '14 at 0:40
5
\$\begingroup\$

Update2: A CW-based meta post: My question was closed as being off-topic. What are my options? has been added that addresses the different off-topic close reasons. The Off-topic close reasons have been updated to point to the answers on the above post. The details there can be updated over time as needed.

There are no longer any direct links to either Programmers or Stack Overflow from the close reasons themselves.


Update:

It seems the best solution for Programmers is to not mention Programmers at all, unless the redirect is in a comment with specific instruction on how the question should be structured to be 'good' on Programmers:

If you want to mention us in your Help Center as a place to go, that would be nice. But not in a close reason. And not in a comment without some kind of specific guidance.

Bookmarked conversation


Just waiting on some feedback from Stack Overflow mods as to whether the same logic should be applied to the redirect to their site. When that happens, we can edit the close reason.


Background:

Migrations, and other close reasons (opionated, unclear, too-broad, etc) should be considered independently of this question. Let's clear them out of the way:

  1. Migrations happen when moderators approve of them. Let's just assume that moderators get it right most of the time, and that migrations are a non-problem
  2. Code Review is months (years?) away from getting full graduation abilities, the community-driven migration is a distraction for the next "long-time"
  3. Other close reasons are normally used appropriately. There is no reason (in the context of this question) to start making assumptions about questions being closed for the wrong reasons.

So, let's assume the close reason is used appropriately:

Questions containing broken code or asking for advice about code not yet written are off-topic, as the code is not ready for review. Such questions may be suitable for Stack Overflow or Programmers. After the question has been edited to contain working code, we will consider reopening it.

This means that either:

  1. the question is providing broken code, and it needs to be fixed before it can be reviewed
  2. the question is asking for help writing code, and it needs to be written before it can be reviewed

So, let's deal with those two scenarios in isolation:

Broken code:

The question contains broken code, it can't be reviewed. What are the options:

  1. close and:
    • forgeddaboutit
    • offer some direction as to where to get help
  2. migrate to SO
  3. answer the question here

Answering the broken question will lead to Code Review becoming a debug service. Not an option.

Migrate to SO is only an option if the question is structured in a way that is suitable for SO (small, self-contained code with clear error messages and expectations). It is very unusual for a Code Review question to be presented in a way that is suitable for migration to SO. When they are, they are migrated. If you see one you think has been closed, but is a candidate for migration, then flag it.

This leaves "close and forget about it", and "close and offer some form of help".

The slam-door-in-face close option is not an option, as far as I am concerned. The close reason would be:

Questions containing broken code are off-topic. Please edit your question with working code, and it may be reopened.

That's not helpful. On the other hand, the following would be better:

Questions containing broken code are off-topic. Please edit your question with working code, and it may be reopened. If you need help getting your code to work, you may be able to isolate your problem, describe what you need, and ask on Stack Overflow/help/on-topic.

I would be happy with that.

If the user cannot figure out what's appropriate to ask on SO, then it's a common problem, and not one we can solve on Code Review. It is up to SO to figure out how to get people to apply their help center effectively to the questions on their site.

Code not yet written

Similarly, here the question is asking for help writing code or functionality, that has not yet been designed/written. Questoins of these types are off-topic on SO, and are on-topic (if written correctly), on Programmers.

A close reason:

Questions requesting help writing code are off topic. Please edit your question with working code, and it may be reopened.

would be too 'slam-door-in-face'.

It would be better as:

Questions requesting help writing code are off topic. If you need help with your design, and can phrase your intentions clearly, you may be able to get direction on Programmers.se/help/on-topic. Please edit your question with working code, and it may be reopened.

Conclusion

The close reason's intentions are right. The redirect to SO/Programmers is conceptually nice. The way it is done may be refined.

The wording may need to be expanded to direct users more directly to the fact that changes will be needed before reposting.

It is not the responsibility of Code Review to educate all new users about how to use other sites. If the help pages on those sites are not effective at directing new users to use those sites appropriately, then there is little that Code Review can do better.

\$\endgroup\$
  • \$\begingroup\$ A key point to consider in this "does it belong on Programmers" is that most of the "code not yet written" questions gets closed as too broad. While it isn't necessary to educate users about other sites, a person migrating or suggesting reposting should be aware of the full scope of the site and suggest properly. P.SE got called out about it before. I would also suggest reading the comments on this question. ... \$\endgroup\$ – user22048 Oct 14 '14 at 20:56
  • \$\begingroup\$ When suggesting to repost on another site (either via close reason or comment), the close reasons for the other site must be taken into account. The biggest issue with the existing close reason is that its used as a "not our problem". If someone suggests reposting on Programmers.SE, they should be fully aware of Why was my question closed or down voted? which spells out all of the close reasons and the rational behind them. \$\endgroup\$ – user22048 Oct 14 '14 at 20:58
  • \$\begingroup\$ It is absolutely the responsibility of the person giving the suggestion (again comment or close reason) to provide the best user experience possible for the person being sent to another site. That often means migrating the question for them (and note that if they are question banned on the other site, help them understand what they need to do to get out of it). \$\endgroup\$ – user22048 Oct 14 '14 at 20:59
  • \$\begingroup\$ @MichaelT - the assumption you are making is that the question can be migrated. The point is, that the question cannot be migrated (otherwise it would have been). We know the question is not suitable for migration, but we also have a person who could, if they asked their question differently, ask a viable question on Programmers. We are not suggesting that people cross-post to programmers, we are suggesting that people with design questions can restructure (parts of) their question to make it viable there. \$\endgroup\$ – rolfl Oct 14 '14 at 21:06
  • 1
    \$\begingroup\$ The alternative is to either say: "Don't ask design questions on programmers". Or don't say anything. You seem to be in the "don't say anything" camp. Which is fine, but that has other consequences, and it's not the clear-cut issue you make it out to be. \$\endgroup\$ – rolfl Oct 14 '14 at 21:07
3
\$\begingroup\$

Ideally, a moderator would never close with this reason because they have the ability to migrate the question to the proper site (I assume that when the site finishes with the graduation ceremony, the migration paths will be added and this close reason will be removed

That's not quite how it works.

Although moderators can migrate any question, it doesn't mean that they should always do this. In fact, we've specifically been told not to readily migrate a question just because it doesn't belong on the site. Migration during beta is at the discretion of the moderator, but for us, that should be changing soon.

Essentially, if a question is crap (cannot be salvaged by an edit) or there's already an accepted answer and/or several other good answers, then migration is usually discouraged. In such cases, closing the question without migrating would work best, while possible target sites are still given in case the OP chooses to ask again on another site.

So no, this close reason will not be removed entirely , even after full graduation. However, we should then be allowed more off-topic reasons (current restriction is three), so the close reasons could possibly change after this has taken effect.

\$\endgroup\$
  • 1
    \$\begingroup\$ If it shouldn't be migrated, please don't tell them to repost it on another site - if its crap here, its crap there too. If there is an answer, migration is encouraged to keep the answer with the question rather than having multiple copies of the question around. What happens when the question is crap, and gets closed with this, they repost on SO and P.SE two crap questions which then both get closed and you've got someone upset there saying that "Code Review told me to repost it." \$\endgroup\$ – user22048 Oct 14 '14 at 0:30
  • \$\begingroup\$ @MichaelT: I'm talking about the close reasons, not comments. Of course we're not going to tell the OP to post that question on another site. Like I said, the close reasons could always change, so we could decide to remove the recommended sites if it becomes a problem. \$\endgroup\$ – Jamal Oct 14 '14 at 0:32
  • \$\begingroup\$ The implicit reading of the close reason that includes the text "Questions containing broken code or asking for advice about code not yet written are off-topic, as the code is not ready for review. Such questions may be suitable for Stack Overflow or Programmers. " suggests people to repost the question on another site. I've recently closed a few questions on P.SE where the question was originally posted on Code Review - closed with this reason, where the question was an unclear code issue. It should have never been implied that it might be a good question on P.SE or SO. \$\endgroup\$ – user22048 Oct 14 '14 at 0:35
  • \$\begingroup\$ @MichaelT: So you're just suggesting to have these sites removed from the close reason? If so, that is fair, and if the OP asks where the question belongs, then we'll just refrain from mentioning a site if the question is crap. \$\endgroup\$ – Jamal Oct 14 '14 at 0:36
  • \$\begingroup\$ The key point is, if you think the question belongs on another site and isn't crap 1, 2, 3, 4, 5 ... and so on... migrate it there instead. Do this to help users do less work themselves. And if you think it isn't a good question there either, don't close with that reason. \$\endgroup\$ – user22048 Oct 14 '14 at 0:40
  • \$\begingroup\$ @MichaelT: Then for crap questions, are we to give a custom reason (which provides a different, default close dialogue)? Custom reasons shouldn't be used each time for the most common close reason here, plus users without closing privileges cannot leave custom reasons. \$\endgroup\$ – Jamal Oct 14 '14 at 0:44
  • \$\begingroup\$ If the question would be closed as primarily opinion on another site, use that. If it is unclear, use that. If it is too broad, use that. If the question isn't a good one use that. If you know its a dup, say "its a dup". If it doesn't meet there requirements of the SO question checklist say that. But don't suggest that it might be ok to repost it on another site. When you do that, the person reposts it and is that much closer to a question ban on P.SE or SO (both sites have question bans enabled). \$\endgroup\$ – user22048 Oct 14 '14 at 0:48
  • \$\begingroup\$ May I suggest a chat in The 2nd Monitor? \$\endgroup\$ – rolfl Oct 14 '14 at 0:51
3
\$\begingroup\$

As a regular here on Code Review, I'll admit that having links to SO and Programmers in that close reason has bothered me for quite some time, but without a clear migration path, it seemed reasonable. However, with graduation coming, migration will be less of a moderator issue and more of a community issue. I agree that the site links should be removed. We have an issue with SO suggesting that broken code be posted here, so why are we suggesting (almost by default) that closed questions be reposted on another SE site?

However, removing the "broken code" reason should not happen. It's our top reason for closing questions here. Removing it would be terribly detrimental to our community. We simply can not review broken code.

I would like to see the close reason up dated to this:

Questions containing broken code or asking for advice about code not yet written are off-topic, as the code is not ready for review. After the question has been edited to contain working code, we will consider reopening it.

\$\endgroup\$

You must log in to answer this question.