This is almost our catch phrase. In every class we teach Kimberly and I always say that the answer to every question about SQL Server *starts* with “It depends” – except one: “should auto-shrink be enabled?” :-)
Seriously though, there’s a bit of an unnecessary backlash against the phrase “it depends” and I’d like to clarify why we think it’s a totally valid way to start an answer.
I think the backlash stems from consultants and trainers using it as the answer to any question they don’t know the answer to and then not expounding any further. That’s a crappy way to answer a question as “it depends” on it’s own doesn’t really provide anything useful and I can totally understand people getting frustrated by that. I think that people would be much better answering “I don’t know” rather than trying to cover up lack of knowledge by simply saying “it depends” – there’s no shame in admitting you don’t know something – nobody knows everything about SQL Server.
I find the denigration of the phrase annoying though, as nearly all the answers really do start with “it depends”. I don’t want this to turn into one of those marketing-ish ‘hire-us’ blog posts, but one of the reasons Kimberly and I are so well-known for saying “it depends” is because we spend so much time in our classes explaining *why* it depends, *what* it depends on, and *when* it depends. Occasionally I can even say *who* made it depend too :-) We even have “It depends” emblazoned on the back of our SQLskills instructor t-shirts.
Almost as bad as saying “it depends” without the follow-on explanation is saying the answer is *always* such-and-such. That can be really damaging as nothing is black-and-white (except not using auto-shrink! :-) but teaching that it is can lead to propagation of misleading information out into the community.
My challenge to you: next time you hear someone say “it depends”, ask them to explain. You’ll get a really good feeling for their depth of knowledge and honesty if they can explain to your satisfaction, as otherwise “it depends” is really saying “I don’t know”.
And don’t be scared to say “I don’t know” – you’ll get way more respect than trying to BS an answer.