This post is a much-expanded version of the editorial in my last bi-weekly SQLskills Insider newsletter, including a bunch of the feedback I got.
(Also see my corollary post How to answer questions politely and correctly.)
Recently I’ve been complaining on Twitter about some of the ridiculous questions I receive over email (I get a bunch of SQL Server questions every day from random people across the world), where it was clear that the senders had done no research at all before sending me an email, or they demanded a response ASAP, or they didn’t say please or thank you, or a combination of all three. It gets pretty frustrating and it bugs me when people are demonstrably lazy and/or rude (usually without meaning to be). I see the same thing in forum questions too and occasionally on #sqlhelp on Twitter.
Don’t get me wrong, I like getting SQL Server questions in email, and I encourage class students to do it. I’m not being a grumpy old curmudgeon: I think people should learn how to ask questions properly. If you’re old enough to be responsible for SQL Server, you should have basic human-human communication skills.
I had feedback from the newsletter that some people might not know how to use Google/Bing. In this day and age, if someone is responsible for SQL Server in any way, shape, or form, and they don’t know how to search online, they shouldn’t be allowed near any I.T. infrastructure IMHO. I had a few people suggest sending Let Me Google That For You links as replies to emails where the answer can easily be found online, but I think that’s too snarky of a response and I don’t like to be rude.
I came up with a handy rule: if my 14-yr old smart daughter could find the answer on Google from your question, you’d shouldn’t post or ask in email.
But what about the concern of over-use of Google, so people never remember anything and rely on finding the answer online? And what if the answer is wrong? (Sometimes my life is this! :-) Yes, these are legitimate concerns. So maybe do the research and then ask a clarifying question or ask for corroboration from an authoritative source. And research the methodology for solving your problem, not just ‘the answer’. Teach yourself to fish rather than just finding the fish (mangling the old saying…)
And what about the concern about people wasting hours searching on Google rather than spending 5 minutes asking a question? That’s between you and your manager to work out how your company wants you to spend your time. But if you’re sending a random email question to someone *outside* your company, due diligence is not optional unless you’re paying for help.
This all brings to mind a training course from my days at Microsoft entitled Precision Questioning. The course taught how to hone your questioning technique for maximum efficacy, saving time for the questioner and the person/group being questioned. It also stressed the need to do due diligence in trying to find the answer to your question before taking up someone else’s time to help. I think something similar would be of great benefit to technical communities on the Internet where people ask questions.
Here are some quick guidelines for asking SQL Server questions I came up with (many of these apply to asking questions in general):
- State your problem as unambiguously as possible.
- State what research you’ve done before asking the question (this show’s you’ve done due diligence). You could even say what you searched for on Google/Bing.
- State the SQL Server version/SP/CU/build you’re using.
- State what you’ve done to try to alleviate your problem so far, if anything.
- Ideally, include all Transact-SQL code to reproduce the phenomena (or, at least the details of the schema, indexes, query, query plan etc.) – just use your best judgment and include these as an annotated/commented script.
- Include whatever results are pertinent.
- Try to anticipate what people would ask to get more information, and provide answers in your question.
- If you’re sending an unsolicited email to someone like me, consider this: if it’s going to take more than a minute or two to read the question, the answer’s going to be something like: this is too long to do in a quick email, please post on forum XYZ or let me know if you’d like some formal consulting help. Free questions are cool (to me), but don’t abuse the privilege. Note that this doesn’t apply if you know me or you’ve been invited to send questions (e.g. from being in a class). You might still get that same answer though, but it won’t be because you’ve abused the privilege.
- Mandatory: say please and thank you.
- Don’t demand urgent or immediate help. The only people who can ask for urgent assistance or use ASAP in their email are colleagues and people paying for help. Unless you’re in one of those categories, you’re not entitled to help – doesn’t matter how urgent your problem is. If your problem really is urgent, put yourself into one of those two categories. And even if you’re in one of those categories, make sure you frame the request so it isn’t too demanding as that can come across as rude.
- DO NOT SEND THE SAME EMAIL QUESTION TO MULTIPLE PEOPLE INDIVIDUALLY. Seriously, this wastes people’s time by having multiple people respond to you. That’s what a forum is for. This is the #1 thing that annoys me and 100% guarantees a response stating that they will not get help from us (unless they’re paying, of course :-) Some people also expand this rule to include not posting the same question to multiple forums at the same time.
You might say to all of this that I have to consider the culture of the person asking the question and cut them some slack if they don’t say please or thank you, for instance. NO!!!! *They* need to consider *my* culture. That’s how communication works. The onus is on the person asking for help to make sure they’re communicating appropriately. This is *especially* true when sending random email. Along these lines, there’s a really great book that I recommend to anyone who interacts in a business setting with people outside their own culture: Kiss, Bow, or Shake Hands (and all its more focused companion titles).
If you’re using #sqlhelp on Twitter, most of this isn’t possible, and it’s accepted to not take up valuable tweet space with please and thank you. But asking a question over two tweets, using 1/2 and 2/2 is perfectly acceptable, and putting ‘Looked on Google already’ shows due diligence. You might be asked to post a longer question on a forum, in which case you should do so.
Whatever your chosen method for asking, make sure you respond to those who respond to you. Nothing puts people off from answering questions more than a complete lack of any thanks, or response to a clarifying question. And it’s just common courtesy (sadly lacking these days, especially in the relative anonymity of the internet).
I could sum all of this up by just asking people to be polite, conscientious, and grateful when asking questions.
If you’re reading this and thinking ‘OMG I sent a question to Paul and didn’t do those things, now he hates me’, you can stop panicking. If you really weren’t polite, demanded urgent help, or showed lack of any research, I would have let you know in my reply.
And don’t forget, this isn’t just for asking questions online, these guidelines should help within your company as well. Feel free to use this list, forward this post, or use it in a way that will help you or your company. I don’t mean this to be a marketing post, but a lot of what I have here is covered in my Communications: How to Talk, Write, Present, and Get Ahead! course on Pluralsight.
Now, where can you ask your question online?
- Twitter, using the #sqlhelp hash tag
- Forums like on SQL Server Central, and their dedicated Ask SQL Server Central site
- MSDN’s SQL Server forums
- SQL Sentry’s performance Q&A forum
- Stack Overflow for general programming questions
- Server Fault for general admin questions
- Direct email to people who you know accept them and reply
And a whole bunch of other places where people give out help for free, but these are the main ones as far as I’m concerned.
To finish off, I leave you with two blog posts I wrote three years ago:
The more information you can provide, show you’ve tried on your own to find an answer, and are polite and grateful, the more likely you’ll get useful answers quickly. And if you’re sending direct email, you’d better do all of this if you want a reply. Often you’ll find that going through the rigmarole of putting all this into your question will help you get to the answer on your own, so problem solved!
You’ll be amazed at the great help you can get online for free… if you ask properly!
PS Happy to hear your thoughts on this. If I’ve missed anything I’ll update the post based on your comment.
15 thoughts on “How to ask questions politely and correctly”
Love it, especially about due diligence, and the onus of respecting ones culture is on the requester!
Love this, simple soft skills
Some great advise here, Paul. Will be sharing this with our developers internally!
I remember one time about four years ago, I sent you a question and in your response, besides giving me the answer, you complimented me for a well-written question. I think I appreciated that more than the answer – as evidenced by the fact that I remembered your comment, but I have no recollection of what my original question or your answer was! :-)
This is a great post Paul.
To be honest I never ever felt you are rude and you always replied me back for all the questions I have asked in the past and that too very quickly.
Keep posting such articles . People should always learn some soft skills along with the technical skills.
The one I realy liked is : https://www.sqlskills.com/blogs/paul/ignorance-is-not-stupidity/
Ofcource this is a great one too :) https://www.sqlskills.com/blogs/paul/the-golden-rule-maybe-just-optional-now/
Great article (Advice) Paul.
I usually says thanks in advance (have seen most of the people using in forums) now i got to know the value of that.
the best advice sir specially like me begginers.
Really Great advice. I surely follow your advice.
It’s truly sad that the same people who learn so much at your expense of effort present a complete absence of respect, appreciation, and common sense in return. Thank you for your dedication and efforts!
Excellent post! This is a chronic issue for me at work. Shouldn’t ITIL (or other organization) address the “Client’s Responsibility”? I have been known to reply with the statement “help me help you…” when receiving vague issues via email. Paul, don’t feel bad sending links. They may just remember to search for it themselves next time.
Paul’s great. By the way, I’ve posed questions to sundry experts industry wide and those who have responded every single time are (below) I mean every single time!! I want to sincerely thank them not only for their responses to my questions but for their contributions to the SQL community. Much of the SQL minutia I’ve learned is from these individuals. Many times I was expecting one word responses. Both Paul and Kimberly on separate occasions authored a short story for me. Thank you and don’t please don’t stop.
4) Thomas Kejser
5) Robert Davis
6) Greg Linwood
99% of my questions get answered using the Google search. Most of those answers were questions asked by others in forums. My thinking is help your fellow IT person out by asking your question on a forum. Your question may well be my question 6 years from now (it’s amazing how often the answers I find are forum posts that old) and the answers you got will be my answer. Please if you ask a question follow up on the forum with what finally worked. The more detail the better.
Since so many of my questions are answered the way they are I’ll add in a big thank-you to Paul and all of the other technical people who take the time to answer questions on forums and those who take the time to ask them. THANK-YOU! THANK-YOU! THANK-YOU! Along with the blogs, the free webinars and various free training events that go on around the world.
I give a hearty AMEN to your thoughts. I hope you will author some similar guidance for “responders”.
I am frequently irritated and sometimes infuriated when I see an “expert” take off on a tangent and begin to pontificate on why the question is “stupid” because you should “Never do X”. (fill in your favorite x (Cursor, XPs, Shrink, Production in Simple Mode, ….)
I find it just as frustrating when it is obvious the responder barely read the question. I usually start my questions with a systems description (e.g. SQL 2008R2 SP2, Standard 64-Bit on Windows 2008R2 EE) and had the responder tell me I should upgrade to Enterprise to implement some feature. (they did not offer to cover the license costs:) ).
I try to respond directly to the poster’s question and then offer to provide additional opinions is they so request.
So perhaps you could add a half dozen or so bullets for responders? Here are some suggestions.
1. RTFQ and respond to what is asked.
2. If you need more info, then request it don’t assume it.
3. If you don’t have time to answer the question properly then don’t waste every one’s time with 500 words about how you would answer it if you had time.
4. If you reply with a link make sure it is germane to the question.
I appreciate that you have always been a polite, responsive, and helpful member of the community. A good role model for the other wannabe mentors.
This is so SPOT ON. I am regularly surprised and greatly disappointed at the rudeness of the internet community. But more than that, I am so encouraged by the many who contribute to the body of knowledge available via the internet. I have often found answers to the most difficult challenges in SQL Server, SharePoint, and Power BI through a variety of blogs, forum posts, and articles.
Thank you for what you and your team do in contributing to this body of knowledge. Keep up the good work.
I totally agree with doing some research before you ask, even if it is just to get the terminology correct so your question will be understood.
On the other hand I have received responses to questions that are totally unacceptable and fall under Ray’s comments above. Instead of trying to help they have been answered by a quick thoughtless response about not having enough information but no indication of what information I may be missing. If I knew the hardware side better I wouldn’t need to ask the questions in the first place.
I continue to use you and Kimberly as primary resources when looking for reasonable answers to my questions but have given up on asking specific questions myself due to the rudeness of other responders.
Thank you for sharing your extensive knowledge with the rest of us and also for opening up dialog on these kinds of issues.