I recently discovered cs.stackexchange.com, and just browsing the site, it seemed like a site better suited for homework questions, or questions from those seeking help understanding the basics of the language. Should we start flagging such questions on SO as candidates to be moved to that site instead?

  • What is wrong with the choice of asking users to show how they proceeded with the question, what background knowledge they already possess etc.?
    – hjpotter92
    Oct 3, 2013 at 9:02
  • 4
    The answer to your title is "NO". Should we move questions that are off-topic for SO, but good on topic questions for CS to that site? Sure. But it really has to fit those two criteria: 1. explicitly off-topic for SO. 2. Good question and on-topic for CS.
    – Bart
    Oct 3, 2013 at 9:04
  • @hjpotter92: Nothing, but I think that is orthogonal to whether the question is better suited for cs.SE.
    – jxh
    Oct 3, 2013 at 9:04
  • 2
    I'm pretty sure "the basics of the language" is off topic for Computer Science. "Homework questions" is way too broad. Some homework questions fit on Stack Overflow, some on Computer Science, some on Software Engineering, some on some other places, some far, far away from Stack Exchange, etc. Oct 3, 2013 at 9:05
  • 1
    "understanding the basics of the language" - questions about specific programming languages would I guess be very much better on SO than CS.
    – AakashM
    Oct 3, 2013 at 9:06
  • Hmm... When I go to the about page for each of SO, Computer Science and Programmers, only Computer Science explicity says for students. I am not saying students cannot contribute good questions to SO, but certainly questions where they are asking for hints instead of answers seems better suited on a different site than SO.
    – jxh
    Oct 3, 2013 at 9:16
  • 2
    I'd say that 'students of computer science' can be taken much more broadly than pupils enrolled in education. I am a student of CS, but I am employed full time as a software engineer. Does that disqualify me? Oct 3, 2013 at 9:20
  • 2
    And CS states it is about Computer Science Stack Exchange is for students, researchers and practitioners of computer science. That doesn't make it the go-to-place for just 'students'. Oct 3, 2013 at 9:21
  • @MartijnPieters: If we take the broad definition of "student", then everyone that still wants to learn something about programming is a student, and that would be just about everybody.
    – jxh
    Oct 3, 2013 at 9:22
  • 1
    @jxh: the topic narrows down the group of students to 'students of CS'; those with 9th grade homework questions about Python are not students of CS, they are 9th graders with homework they have to finish before monday morning. Oct 3, 2013 at 9:23
  • 2
    thing always to keep in mind is a famous golden rule: "Don't. Migrate. Crap."
    – gnat
    Oct 3, 2013 at 9:25
  • @MartijnPieters: I am not suggesting it is the go-to-place for just students. But, I short cut "students of computer science" to "students in a computer science program", which may be overly exclusive on my part, but I don't have any ill will in my intent.
    – jxh
    Oct 3, 2013 at 9:26
  • @gnat: Are all homework questions considered crap? I never intended to suggest that they were.
    – jxh
    Oct 3, 2013 at 9:28
  • @jxh: I'd say that only questions on CS theory (performance analysis of algorithms, etc.) should be migrated there. Practical code problems? Not so much. Oct 3, 2013 at 9:30
  • @MartijnPieters: I think you are right, it is more geared toward theory. I guess I should clarify that my suggestion would target questions that are borderline off-topic due to not having a minimal understanding of the problem being solved. It would be nice to provide true students of programming a resource that is populated by educators that are willing to lead them toward understanding, rather than just being told that they aren't old enough to play on SO yet.
    – jxh
    Oct 3, 2013 at 9:39

2 Answers 2


There's nothing wrong with basic questions about languages provided that:

  • They clearly state the problem to be solved
  • They clearly state what has been done thus far to solve the problem, or where and why the author is stuck
  • They show relevant snippets of code, where appropriate, so that the problem can be clearly understood or reproduced
  • The problem must be a real problem that someone is facing

In some cases, these questions will come in the form of impossibly bizarre business logic which is clearly a task designed to test the aptitude of the programmer - student or otherwise. These might not be practical problems, but they are problems that someone faces.

These questions are clearly on topic for Stack Overflow, and in many cases, would not be a good fit for other sites. An exception are requests for folks to evaluate working code, which should be asked on (or sent to) Code Review. However, until CR graduates, there won't be a migration path established; you'll need to involve a moderator to get something sent there.

Provided that a question meets our quality standards and topic guidelines, it's on topic; basic questions are frequently asked repetitively in different ways, there's a good chance a canonical answer to it exists on the site - the 'related' questions to the right will quite often turn up a good duplicate candidate.

If the problem is basic but more algorithmic than a fundamental understanding of language constructs, CS might be a better fit - it's hard to say out of the context of an actual question. Just remember, migrations are designed to make the experience of the question author better, the ability to 'bucket' content more appropriately was secondary to that goal.

  • Thanks, I think this point is valid and correct.
    – jxh
    Oct 3, 2013 at 9:39

I'm a Computer Science Stack Exchange moderator.

CS.SE is a site about computer science. From a computer scientist's perspective, it covers both theoretical and applied computer science: algorithms, information theory, formal methods, etc. as well as data mining, graphics, computer architecture, etc. From a programmer's perspective, you would probably call all of this “theory”.

What CS.SE does not cover is engineering. Programming is not science, it's engineering (which is backed by computer science, like bridge building is backed by physics).

You should consider migrating a question to CS.SE if it is about computer science. Whether a question is homework or not has nothing to do with whether it is more suitable for CS.SE or SO (if any).

I commonly migrate programming homework questions from CS.SE to SO. Programming homework is not suitable for CS.SE, because it is about programming, not about computer science, even if the programming class is part of a computer science curriculum, and even if the programming is done as an application of a computer science class. Of course, questions about computer science homework are fine (provided they meet the usual Stack Exchange quality guidelines, of course).

A question about the basics of the language would not be appropriate for CS.SE. Only questions about programming language theory are appropriate for CS.SE; most of these do not refer to a concrete programming language but to language features in the abstract.

As a rule of thumb, if a question contains code or if its answers would be likely to contain code, it's likely to be suitable for SO but not CS.SE. If a question contains mathematical notation or if its answers would be likely to contain mathematical notation, it's likely to be suitable for CS.SE but not SO.

  • Thank you for the clarification!
    – jxh
    Oct 3, 2013 at 18:48

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