Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 158 Stack Exchange communities.

What is meta?
Here's how it works:
  1. Any Stack Exchange user can ask a question
  2. The community provides support, votes on ideas, and reports bugs
  3. Your voice helps shape the way Stack Exchange operates

I asked a question, and it got closed*. It was about an algorithm, but contained no code because I wanted to keep the question contained. I'm confused, because the FAQ explicitly states that algorithm questions are allowed. Should this question have been closed?

* and since then since reopened

share|improve this question
The bonus question is definitely off-topic: "Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam." – George Cummins Aug 23 '13 at 21:38
I added it because of comments that the question didn't have enough to do with coding. I'd be just as happy to have the question totally language agnostic. – Shep Aug 23 '13 at 21:39
note that the question is now reopened (following some very helpful edits and suggestions) – Shep Aug 23 '13 at 22:28
I hope you don't mind that I shrunk the size of your diagram a little bit. I like the diagram and think it adds to the question, but controversial algorithm questions seem to have unnecessarily large images. Don't worry, I'm an expert in image size reduction. :-) – Cody Gray Aug 24 '13 at 6:43
I'm not an expert in image-anything, your skills are appreciated. (drawing those circles took me ages with GIMP) – Shep Aug 24 '13 at 7:42
although... while @CodyGray's resizing instincts are second to none, I see that he hasn't mastered the art of image format sticklery: I can see the aliasing, clearly run through a wavelet transform... only for croissants. I admit that I committed the first sin by using a raster image, but wavelets have no place in diagrams. (I'll return with a better png) – Shep Aug 24 '13 at 11:09
There were really no skills involved. I just added an m to the end of the imgur link, which returns a "medium" scaled version. – Cody Gray Aug 24 '13 at 11:14

Problems with the Question

It's not a bad question. It's not my area of expertise, but I can certainly weigh in on the semantics of the question itself. Here are some of the problems I see (before whatever the current round of edits are):

  1. It comes off as searchy, which will attract close votes unless you take pains to explain why something isn't searchable.
  2. It lacks a sufficiency of tags to attract the right set of viewers. Coders will tend to down-vote or close questions that don't have some linkage to programming.
  3. It lacks information on what you have already considered, other than brute force.

Possible Solutions

There are a lot of ways to improve this sort of post. I've already tried some edits that may help, but here's a list of how I think this sort of question can usually be improved.

  1. Problems which are hard to Google for should explain why. For example, in this Ruby answer I note that the OP would have hard a hard time searching for an answer without already knowing the precise terminology.
  2. Details labels help, especially if they make it clear that it's a language-agnostic algorithms question.
  3. Describe the use of your algorithm in a way that makes it sound useful and/or practical. This sock-sorting question was contentious largely because it wasn't applicable to any imaginable real-world programming problem.
  4. Include any algorithms you've considered and why you discarded them. This will reassure people that you've made a valid effort at solving a problem.
  5. If you're asking about algorithmic complexity, you might want to explain why it matters and why whatever else your doing is not adequate. SO tends to be about pragmatic solutions to real problems; voters tend to punish abstract or purely theoretical questions.

In short, even if your question is on-topic and well-written, it can give off "smells" that attract close-votes and down-votes. Getting out in front of those issues by addressing them in the question itself is often a great way to keep a question that's "risky" from being closed too quickly, but your mileage with this strategy will vary.

share|improve this answer

It's debatable (and debated) whether pure algorithm questions are on-topic on Stack Overflow. Questions about implementing algorithms, or about picking the right algorithm for a programming task, is on-topic, but questions about algorithm design aren't.

In addition, there is a culture on Stack Overflow to reject any question that doesn't contain code, no matter how useless code would be in that question.

Questions about algorithms are on-topic on Computer Science Stack Exchange. You can flag your question to request a migration. (The C++ library part is off-topic on CS.SE, of course.)

share|improve this answer
So he ether casts the algo in code and it goes back to Stack Overflow, or he leaves code out and puts it into Computer Stack Exchange ? And if he used pseudo code would his question be: a) excluded from both sites, or b) be included in both, but then be blasted in both for being too cody or not cody enough, respectively? EDIT : meant both tongue-in-check and not. (Quantum fans: my cat is both alive and dead and neither.) – Howard Pautz Aug 23 '13 at 21:45
@HowardPautz Yes. – Gilles Aug 23 '13 at 21:49
The Computer Science exchange is language agnostic. So if the psuedo algorithm is also language agnostic then that would improve the question. However if it is implemented in a single language then it will be seen as less useful. As it stands, that question should be on CS. – Travis J Aug 23 '13 at 21:49
Seriously: Computer Science is ok with pseudocode. SO is crazy these days. – Gilles Aug 23 '13 at 21:50
@Gilles - Language agnostic. That is how the entire field of computer science is. It is not just stack overflow. – Travis J Aug 23 '13 at 21:50

You must log in to answer this question.

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