How to ask (me) a technical question.

20 Jul, 2022 by flofriday

I love helping people solve their problems, but sometimes it is just an exhausting experience.

1. You need something

When you ask someone a question you want them to take time out of their day to help you. This means they are doing you a favor, so you should be considered of their time. Yes there is also paid support, but making the experience of helping you more pleasant will get you better results either way.

2. No hello

Put the question into the first message you send them. Don't just say hello and wait for them to respond, don't ask if it would be ok if you'd ask them a question. Just put the question in the first message.

Sure you can be polite but by putting the question into the first message you will get much faster responses.

nohello.net is a dedicated website just for this point with lots more examples and reasons why this sucks.

3. Include as much relevant information as possible

Don't just tell me what went wrong, but also what you tried to do, what the output was (if there is interesting output) and where the relevant code snipped is.

However sharing too much information is just useless. If you share a screenshot of the relevant function I might be able to debug it. But I definitely won't open a zip of the repository. Most likely because when I read your question I'm often on mobile and I am just not able to. But more importantly because it shows that you didn't put much effort into your question and that you are not considered of my time. Therefore I just don't want to invest the time to hunt down a bug in an unknown codebase which might take quite a bit.

4. Consider you might be wrong

When you ask for help, you probably have a wrong understanding of how your system works. You also probably have an assumption on what happened, and you should include them in the description. Just be careful that you also include an objective description on what actually did happen.

While theses assumption sometimes are correct, and often the wrong ones are easy to spot out, sometimes they lead the helping person on the wrong track hindering them to help you.

5. Sharing code right

Code ist not just like any other text.

If the messenger service you use has a formatting option for code with syntax highlighting, please use it.

If it doesn't, share a screenshot of the code (I personally always prefer screenshots). And most important with code screenshots: Include the line numbers in the screenshot.

If I see that you missed a semicolon on line 23, I want to tell you exactly that. And no I won't start counting from the first line of the image or retype the line (which is unintuitive to do so on mobile keyboards).