4

My question "Evolution of mainstream programming languages: simplicity versus complexity." has been closed.

I am not sure I fully understand why. The explanation I got from the moderator(s) is that "we're looking for practical, solvable problems people are actually facing and need to get help with". The problem that I was stating was quite clear to me: C++ and Java are becoming very complex and difficult to use (is this not a real problem?), shall I switch to another language? This is a very practical problem for me since I am a developer and C++ and Java are my main languages of expertise. I am considering whether I should invest time learning the new versions of these languages, or move to some other language like Scala.

I was hoping to read answers like: stay with Java because my experience is ... or: move to Scala, because my experience is...

I have seen questions that are much more vaguely formulated and still have not been closed, such as: "Why do we study Java at university?" Very interesting question and I do not have anything against it. But in what way does this very general and very open question meet the site requirements more than mine? This is not very clear to me.

I also understand that a question on this site should not end up in a discussion. It should be rather one question with possibly a few answers. On the other hand I am afraid that a general question will generate some discussion (some back and forth). Should this be avoided altogether? Or is it allowed to a very limited extent?

I am a bit unsure whether I try and submit further questions on this site apart from very concrete, technical ones. So I would be grateful if someone could explain to me better what exactly caused my question to be closed and whether I could have formulated it in a different way (consider also what I have explained above) so that it would have been valid.

  • 1
    Odd. I didn't touch the title, but it somehow got edited. Sorry about that. – Adam Lear Jun 27 '11 at 18:51
  • Is it not ok to add a signature at the end of a message? It seems to me that it keeps getting deleted. Just curious. – Giorgio Jun 27 '11 at 19:06
  • 4
    signatures are not kosher. See the FAQ – user8 Jun 27 '11 at 19:08
4

As you mention, the questions that work on Stack Exchange are ones that have a specific, singular, and solvable problem: that is, you ask a question, you get targeted answers that may or may not help you solve the problem. If they don't, you edit your question to clarify. If the answers are unclear, you ask the answerers to expand on their answer.

In this case, that's not what happened: you've presented a position, asked several questions, and attempted to carry on a conversation with all the answerers in a now deleted answer complete with your own thoughts and ideas about the subject. That's not really what Stack Exchange is about: we're not a discussion board where free-form conversations can take place about a general topic.

The blog post Real Questions Have Answers talks about this type of problem and provides specific guidance that is codified in our FAQ (emphasis mine):

What kind of questions should I not ask here?

You should only ask practical, answerable questions based on actual problems that you face. Chatty, open-ended questions diminish the usefulness of our site and push other questions off the front page. To prevent your question from being flagged and possibly removed, avoid asking subjective questions where …

  • every answer is equally valid: “What’s your favorite ______?”
  • your answer is provided along with the question, and you expect more answers: “I use ______ for ______, what do you use?”
  • there is no actual problem to be solved: “I’m curious if other people feel like I do.”
  • we are being asked an open-ended, hypothetical question: “What if ______ happened?”
  • it is a rant disguised as a question: “______ sucks, am I right?”

If your motivation for asking the question is “I would like to participate in a discussion about ______”, then you should not be asking here. If your motivation is “I would like others to explain ______ to me”, then you are probably OK.

So if you distilled all the discussion you were trying to have in all the comments, and all the opinions you might have about a topic, what is the exact nature of the problem you're trying to solve? Asking about that likely is going to be a good fit for us.

Try to ask yourself, "what does a correct answer to this question look like?" If it's hard to imagine it, the question is likely a discussion topic, and should be revised. That is, if you're not getting the answers you want, your first inclination should be to tighten up the question, not to initiate a discussion about your opinions or thoughts about the topic.

To speak to the specific nature of this question, you wanting to know what language you should switch to, that's off-topic here unless it's particularly specific. That is, you have a specific use-case and you need to know if a specific language would be more appropriate: perhaps something like, "Can I interact with an RDBMS using something other than SQL?" or "How can I develop iOS applications without knowing Objective-C?"

For more information about why the more general "What language should I use?" is off-topic, check out the question, Why is “what language should I learn” considered off-topic?:

The simple answer is that the question as stated "which language should I learn next?" is unanswerable.

The only answer anyone should give is always "it depends" - which isn't an answer at all.

Ultimately it's not a real problem. The next language you should learn is largely determined by the project you are working on and unless you are in the rare situation of having complete freedom over what you do this will have been chosen by someone else.

As to other questions, feel free to flag questions you don't believe fit these criteria for moderator review. With over 12,000 questions asked, some slip through the cracks of community moderation.

  • Thanks for the explanations. First I wanted to add a comment, but there was no comment button. I guess it had to do with the fact that I am a new user. So I added a new message because it was the only way I had to comment. Secondly: I had already reformulated the original question completely and I thought that changing it again would have been confusing for readers that had already seen the first version, also because someone had already commented on some deleted part. I hope I grasp the idea now. One should change the original question if this allows to make it more focussed. – Giorgio Jun 27 '11 at 19:42
  • @Giorgio on your second visit, you were an unregistered user (i.e. not logged in); we merged your account afterwards. If you're getting unhelpful answers, definitely re-word your question to provide better guidance to the answerers. But if you want to ask about something else later on, like perhaps a follow-up question, just create a new question so the answers provided aren't invalidated. – user8 Jun 27 '11 at 19:47
  • Regarding the question "What language should I learn next?". Would it be acceptable to make it more specific? E.g.: "I am a Java and C++ programmer and, for this and this reason, I am considering moving to Scala. Do you have any experience with it? What are the difficulties in the switch? What are the benefits? Can Scala work together with existing Java or C++ code?" Can it be used in similar context (e.g. web applications, desktop applications)?" Would a question like this be specific enough? – Giorgio Jun 27 '11 at 20:00
  • @Giorgio That could work, but be sure to go through the existing questions on Scala, many of which speak to those questions, before asking. – user8 Jun 27 '11 at 20:04
  • Sure I will do a search before asking such a question. Just wanted to be sure I had understood what is the right level of abstraction for a question. Thanks for the hints. – Giorgio Jun 27 '11 at 20:08

You must log in to answer this question.

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