A number of questions have been asked about the programming challenges on the website Interview Street. For example, this, this, this, this and this.

What should our policy be for these? To me, some seem perfectly reasonable, while others are not. Should we worry about whether the contests for these problems are still open? Should we insist the questions not be focused on code (many of them are currently focused on algorithms, but I could imagine they might also be focused on data structures or another relevant area)?


1 Answer 1


My position statement

First, I want to make something very clear: I will not act in any way that prevents people from answering a question on the basis that this question was asked in a contest. I will not close, lock or delete a question on that basis. This goes even if the contest is ongoing.

Academic tradition does not recognize a monopoly on ideas, and this is a tradition that I very much care to uphold. Anyone may ask a question or contribute an idea that are not original to them. While the law in most countries, which is less liberal than scientists tend to be, recognizes a monopoly (with limitations) on a particular way to express an idea (copyright) and on the practical use of an idea (patents), a monopoly on the ideas themselves is not acceptable to our society in general, nor the narrower community of mathematicians.

Academic tradition does require attributing ideas when they are not so well-known that you know their source. If you notice a contest problem is posted without attribution, please do add the attribution; Stack Exchange in general does not appreciate plagiarism either.

As an answerer, you are entirely free to apply your own policies. If you wish to wait for the end of the contest before answering, or to report the user to the contest organizers, it's up to you. I might in fact do these too. All I ask is that you do not prevent others from answering.

The argument that “we must not help people cheat so we must not answer contest questions” is specious. The net effect of such a policy would be that cheaters would carefully hide the origin of the question, while innocent people (who read the question elsewhere, or aren't participating in the contest) would be penalized. If you think someone is cheating on a contest, report them to the contest organizers: they are the ones who can decide whether the person is cheating and what to do about it. (Do note that the privacy policy does not allow either moderators or Stack Exchange staff to reveal private information such as email or IP addresses.)

General rules that apply throughout Stack Exchange

If the text of question is directly copied from the contest description, that may be a copyright violation. This could only apply if the wording of the assignment is sufficiently original to be covered by copyright (sometimes there is a natural way to phrase a problem, it would be difficult to claim copyright on that). The contest organizers may in that case send a takedown notice to have the offending text removed — see “Reporting Copyright Infringements” in the terms of service. Note that copyright takedown notices have to be sent by the copyright holder (not by third parties) to the specified email address (not to site moderators, who are not enpowered to deal with them). If the question has answers, we would prefer if it can be rephrased rather than taken down, so a flag in addition would be appreciated.

If the problem statement is posted without attribution, and represents a non-trivial, original wording effort, it may be plagiarism. In this case, please flag the post, or edit it to add attribution. If you do not have an account on the site, you can still suggest an edit to add the attribution, or you can use the contact form to contact Stack Exchange staff who can relay a request to site moderators.

On the topic of edits, please note that an edit that adds attribution is fine (“This question was asked as part of the Algorithms Little League of Podunk.”) An edit that removes content from the question or that adds editorial text such that “do not answer this, it's from an ongoing contest” will be treated as the vandalism it is and will be reverted.

Acceptable questions on Computer Science Stack Exchange

Not every question from a programming contest is acceptable here.

Like homework questions, contest questions are often too broad if they are asked as-is. A good Stack Exchange question would typically focus on one aspect of finding the solution, such as choosing a data structure with certain properties, or finding a good algorithm for a subtask.

Since this is a computer science site and not a programming site, I expect questions and answers to use pseudocode more often than code in a real programming language. Executable pseudocode is nice, though, if it doesn't come at the expense of readability. If the asker isn't satisfied with an answer that explains an algorithm in English or pseudocode, feel free to tell him to try writing the code, and ask on Stack Overflow if he gets stuck.

  • $\begingroup$ I was more worried about questions like "my code isn't fast enough; help me improve it", which some of these questions are approaching. $\endgroup$
    – Peter Shor
    Commented Oct 22, 2012 at 20:57
  • 2
    $\begingroup$ @PeterShor That might fall under off-topic if it's about code rather than about the underlying algorithms, or under not a real question if it's just “help me make the whole thing faster” as opposed to questions focused on a particular subtask. None of the questions you cited have any pending close votes, so I presume the CS.SE community doesn't find them too broad. $\endgroup$ Commented Oct 22, 2012 at 21:02
  • $\begingroup$ One of them has several downvotes, though. $\endgroup$
    – Peter Shor
    Commented Oct 22, 2012 at 23:51

You must log in to answer this question.

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