1

A recent question of mine has been closed as non-constructive. The question was IMO very clear: what are / would be the technical problems in dropping backward compatibility from C++. I got a quite satisfactorily and to-the-point answer from user AProgrammer, which I have accepted. Seeing that some users were starting to go out of topic, I have reformulated the question to bring the answers back to the point: technical reasons why dropping backward compatibility is not possible / difficult.

The first version of the question contained a motivation that might have distracted from the main focus of the question, so I rephrased it.

I think the question was specific enough to require a precise answer ("Are there technical problems (e.g. ...) that make such a change too difficult or even impossible?"). So, I was not suggesting a discussion whether backward compatibility should be dropped or not, I was asking specifically what kinds of technical / practical problems it would involve.

I would have found it more appropriate to invite the users that could not stick to the question to give a precise answer rather than close the question.

In any case, I would like to ask for suggestions how to formulate a question even better or about possible measures to take, in case a similar situation (answers not sticking to the point) should occur again.

9

The close notification for "not constructive" reads:

This question is not a good fit to our Q&A format. We expect answers to generally involve facts, references, or specific expertise; this question will likely solicit opinion, debate, arguments, polling, or extended discussion. See the FAQ for guidance on how to improve it.

There are:

  1. 6 answers, and most of them missed the point of your question (judging from your comments to them),
  2. 23 comments on the question (+1 deleted),
  3. 31 comments on all answers (+1 deleted).

6 answers and 56 comments in total is a good sign that the question solicits opinion, debate, arguments, polling, or extended discussion, which is why it was closed. Although you make a very good point that it would be more appropriate to invite the users that could not stick to the question to give a precise answer rather than close the question, you need to consider that:

  • Closure is a temporary state, it might lead to deletion after a while, but initially it's just a temporary state that has a single goal: no more answers.
  • It's always preferable to close early, review, improve and re-open. Not every closed question is salvageable, obviously, but some are, and closing early protects people from wasting time answering a question that may be deleted if not improved, and protects the question itself from spiraling into an uncontrollable mess.
  • Sometimes on borderline questions the answers are the deciding factor. It may not be fair to the asker, but if more people miss the point of the question than those who actually got it, well, perhaps the point of the question wasn't very clear to begin with.
  • Closing a question is the fastest option, when a question is troublesome. Please don't take this the wrong way, but we are all volunteering our time here, and closure does serve as a signal to other users that the question is in need of help.

The question had 3 close votes and 1 flag (for the extended discussion in the comments) when I first visited it, and I considered all of the above before closing it. If I had seen the flame bait in the original version, I would have closed it asap. I'm guessing that some of the close votes were directed at the original version, although there isn't really a way to verify that, but in any case it's irrelevant.

The question will need 5 re-open votes from regular users to be re-opened, or a single re-open vote from a fellow moderator. I won't cast mine, this is still a community closure and I'm not convinced that the question is constructive, at least not to the point of reversing a community closure.

In any case, I would like to ask for suggestions how to formulate a question even better or about possible measures to take, in case a similar situation (answers not sticking to the point) should occur again.

As far as this question is concerned, I honestly don't know. Closing the question bumped it on the front page, and it will get some extra visibility through this Meta question, so hopefully the community will find ways to improve it (which might not have much to do with the question itself).

For future reference:

  • Avoid flame bait, stick to the point and always try to back your subjective claims with references. And no, comments to Programmers questions and answers don't count as references,
  • Flag off topic / chatty / not constructive / obsolete comments as such,
  • Down vote answers that completely missed the point of the question.
  • Thanks a lot for the feedback. The original question might have not been formulated in the most appropriate way, but it did not contain a flame-bait, if by this we mean a topic or argument that is aimed at provoking a flame (I was quite surprised by the reactions). I will delete the question if it is technically possible. – Giorgio Apr 3 '12 at 20:44
  • +1: "Down vote answers that completely missed the point of the question." Good point, I hadn't thought about this! – Giorgio Apr 3 '12 at 20:49
  • @Giorgio I never said that the flame bait was intentional, but it's reasonable that the initial wording got the reaction it got. I don't think you should delete the question, there's some useful information in there and you've already found a satisfying answer (the accepted one). There's nothing inherently wrong with the question, and others may benefit from it and its answers. If it starts getting downvotes (I pretty much doubt it) you can flag it for moderation attention and ask for it to be deleted, but as is it's not delete worthy and possibly re-open worthy, it only takes 5 re-open votes. – yannis Apr 3 '12 at 20:53
  • I had crafted the question very carefully but I have the impression that certain topics are flame-baits in themselves. Either you do not ask or, if you ask, you get a flame. My argument was: this seems to be a problem for the C++ community (BTW, I have been doing C++ for 6 years now, so I am part of the community too), would this be a feasible solution? – Giorgio Apr 3 '12 at 20:58
  • I don't know about the C++ community in general, but truth be told the C++ community on Programmers and Stack Overflow is a bit snarky, to put it lightly. But calling any language obsolete will get a reaction, regardless of the language (There are still some passionate COBOL programmers out there). Some topics are flamebaits in themselves, and it is also true that some people may got stuck in the first paragraph and never read through the rest of the question. In any case you did the right thing, you improved the question, give it a couple of days to see how the community will react to it. – yannis Apr 3 '12 at 21:07
  • @Giorgio I removed some of the comments that were irrelevant to the current version of the question. – yannis Apr 3 '12 at 21:09
  • Thanks. The point is that I do not consider C or C++ obsolete (and if I did, I would not write it in a question because it would be pointless), but I have read others making such observations (I was citing them). I was surprised when another C++ programmer on the site told me that certain idioms I use are obsolete and should be dropped in favour of new ones. So my obvious question was: why don't they drop the parts of the language that they consider obsolete? Probably there are very valid technical reasons behind this (one is templates), and that's fine with me! – Giorgio Apr 3 '12 at 21:31
  • @Giorgio I think the point you may be missing is that obsolete carries a very strong meaning, and may bring unwanted reactions however you put it ("my sister thinks mails are obsolete"). You could have stated that c and c++ serve different purposes, or any other premise people may agree on and serve your goal. No offense but I take this as a valuable lesson about what to avoid when writing long questions. – Simon Bergot Apr 4 '12 at 8:35
  • @Simon: I thought it was clear that that was not my opinion so any possible strong reaction should have been directed against C++ developers who had expressed such opinions and not against me reporting them. Why should I be responsible for something that I did not say? But then I realized that many readers did not see the difference and I removed that part completely. No offense taken, it is indeed a very valuable lesson: the choice of words is important because some will read the question very superficially, pick some key words from the text, and understand what they want to understand. – Giorgio Apr 4 '12 at 8:46
  • @Simon: What if I want to ask: "My sister thinks mails are obsolete, why does she still use them?" The possible answers are (1) "Your premise is wrong: your sister does not think that mails are obsolete" or (2) "Your sister still uses them because she does not have a reasonable alternative." Do you think it is possible to ask such a question and get a serious answer, or is this a kind of question that will lead automatically to a flame no matter how it is formulated? – Giorgio Apr 4 '12 at 9:04
  • @Giogio I think that you have a higher risk of getting answer to questions you haven't asked. In extreme cases, it may lead to a flame war ("are jews obsolete?" please do not reuse this :-)). I just mean that you have to take into account how any reader discover your question. People will read the beginning only to determine if the question is interesting or not. If you suspect that a particular construct is dangerous, mark the distance or remove it. So those first lines are important. I am only stating obvious things here. People are sometimes irrationnal. And this is a good study case. – Simon Bergot Apr 4 '12 at 10:15
  • And sadly this is why it is hard to have serious discussions about some important topics in public media. Hopefully topics on programmers are rather neutral, and you should be able to find a good formulation in most cases. – Simon Bergot Apr 4 '12 at 10:20
  • @Simon: "I think that you have a higher risk of getting answer to questions you haven't asked.": Very good point. My way of marking the distance was saying: "As far as I understand, it is an opinion in the community that " I honestly thought it was distant enough and the only way of discovering if it was was to post it and look at the reactions. Now I know more. In the future I will ask shorter questions and with as little context as possible, I hope this helps. – Giorgio Apr 4 '12 at 11:17

You must log in to answer this question.

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