I found myself (unintentionally and not proudly) asking a question on Security Stack Exchange and as I got simple answers and became more educated about what I was asking, my question changed. A lot.

While what I was asking was staying the same, the question itself seemed to have changed a lot. There also seemed to be a lot of extra information that flew around and convoluted the whole Q&A system. I think the 2 over-all sources of the chaos were that I didn't do enough research before-hand (though I didn't know that at the time of asking the question), and while I had a general idea of what I wanted to ask, I didn't know exactly what I was asking at the beginning.

My big questions are:

  • Is this kind of scenario always my fault for unintentionally asking too broad of a question?
  • How can I (or any user for that matter) avoid this kind of scenario?
  • How do I know when to stop adding information to my question and ask a new one?
  • If I find myself ending up with a whole new question, should I ask my new question as, well, a new question and flag my old question for deletion so that all of the out-dated discussion and possibly off-topic answers go away?
  • you can make it a community question if guilts after you ;)
    – user221081
    Sep 4, 2013 at 12:07
  • @mehow What is a community question? I couldn't find anything. And it's not so much the guilt as it is that I want to learn from my mistake and avoid doing something like this again.
    – user225149
    Sep 4, 2013 at 16:23
  • community wiki, or mark for moderators attention and ask to lock the question for editing perhaps
    – user221081
    Sep 4, 2013 at 16:46

2 Answers 2

  • It's not always your fault, but you are a cause of it. But why bother about guilt?
  • Usually you cannot. At least not if you have done all you could to research topic on your own. If you lack some knowledge and can't research it, all you can do is ask.
  • If answer was good and new data in question would obsolete it, it's time to ask new one.
  • Don't delete old question. Link to it from new one. And maybe edit the old one to emphasize the parts you lacked to understand your problem, to make it stand apart from the new one (but not invalidate answers, quite the opposite if anything).

Questions that change after people have started to answer them are called chameleon questions. They're disliked because the answers are wasted effort. If you change your question too much, your question may be reverted to its original state.

In general:

  • If you find out that you've asked the wrong question, do not edit your question. As soon as you post a question or an answer, it becomes in part public property, you can't take it away unilaterally. If your original question was a valid one, and it has answers already, don't edit your question in a way that fundamentally changes its meaning. Instead, ask a new question.
  • A good guideline for how far you can change a question is: would this change invalidate existing answers? Use common sense: if an answer was besides the point in the first place, editing your question to clarify the point that the answerer had missed is a good thing. But if the answer was based on a valid reading of the question, don't edit your question in a way that would invalidate it.
  • If you end up asking a new question, it's a good idea to explicitly mention the older question and explain how your new question differs. This ensures that the subtle difference in your new question won't get missed (which is both useful to guide answerers, and to show that your question isn't a duplicate), and acts as a pointer to people who may find your new question in a search but are actually after your old question.
  • Don't delete a question just because it isn't what you'd meant to ask. If it's something others might ask, and especially if people have put work in writing an answer, let the question stand and ask a new one.

Regarding your specific question:

  • Your original question was broad but not overly so. It was separately covered by multiple earlier questions (which I cite in my answer), because your initial proposals (email as salt, (hashed) password as salt) had different defects.
  • You could have found all your answers by reading earlier questions, but you would have had to read the right ones. You should at least have browsed the top questions in the [salt] tag.
  • Revision 9 is when you starting going into a very different issue, when you put shifted the focus towards ”salt is not stored in the database”.
  • It's too late now, you have answers addressing various states of the question. Stop editing, read the answers (and the links you were given to earlier questions) thoroughly.
  • The very fact that 1. you needed to ask and 2. your question shifted around shows that you should not implement your own protocol. Stick with standard, vetted methods.

You must log in to answer this question.