# What should Code Review's [homework] tag wiki contain?

The tag has a pending tag wiki edit. It's same as the tag wiki of the homework tag on Stack Overflow and does not seem completely suitable for Code Review:

Questions regarding homework assignments are more than welcome, provided that they:

1. Briefly explain the problem you are trying to solve. Do not post your entire assignment verbatim.
2. Explain what you have tried thus far and where you are stuck (preferably with code examples).
3. Don't ask for 'complete' solutions to the problem. We're not here to do your homework for you.

For further guidelines, see the FAQ.

Some notes and questions:

• A questioner don't have to be stuck since we need working code (and it's not an option as the 2nd point says).
• What could be a 'complete' solution here?

So, what should the tag wiki contain on Code Review?

Tag wikis on other Stack Exchange sites which contain more or less different homework tag wikis:

Guidelines about posting homework questions belong here on the Meta site. The tag should be deleted.

is a meaningless tag. Whether a question is homework or not is completely irrelevant: it doesn't change the nature of the question or the expertise required to answer the question. It isn't useful to categorize the question or to make it more visible to its intended audience. It is a meta tag and should be deleted.

might still pop up from migrations from Stack Overflow. Stack Overflow still uses this tag for historical reasons, but the current community trend is strongly against it. Hopefully it will go away soon.

Suggestion

Homework questions are welcomed here, but they are still held to the same expectations as all other questions.

In particular, homework questions should contain correct code, and the goal of the question should be to improve the code, not to fix or complete it.

Any questions regarding broken or otherwise non-working code are off topic for this site.

An example of a valid homework question:

I wrote the following code to parse student records from a pipe separated file. It currently works, but I have a feeling that there is a better, more C++ idiomatic, way to accomplish this.

An example of an off-topic homework question:

I have to write a program for class that takes a pipe separated file, parses it into Student objects and outputs some information. For some reason, the surnames are not printing out correctly.

(Note that I'm by no means saying this is perfect. I'm suggesting it as a starting point, not as final content.)

Personal note

I don't think the homework tag particularly has a place at CodeReview. Homework questions are fine, but they are no different from non-homework questions.

The tag basically has no purpose other than searching/discriminating. Tags should be meaningful. They should be specific about the content of a question. When I look at a tag, I expect to go "Oh, I now better understand what is in this question." When I see a homework tag, I can guess a few things about the question, but it does not establish anything factual.

Instead of homework, a better option may be to break down the potential meaning of homework into more specific tags like beginner and so on.

• how would a beginner tag be helpful? Is there a reason we would want to consider one thing beginner and another expert level? I do agree that homework doesn't seem to have much use here. – James Khoury Aug 6 '12 at 5:10
• @JamesKhoury My thinking process behind it at the time was homework is a useless tag because it doesn't actually tell us anything. Instead of using homework as a tag to imply things, the things meant to be implied should be stated explicitly. However, upon further considering it, I believe you're right. I can't see a very strong use for beginner. The only thing I can think of is that it would allow other beginners to find questions that would be more likely to contain beginner mistakes, thus allowing beginners to more directly address their own coding. That's a pretty weak reason though. – Corbin Aug 6 '12 at 6:27