I say “me” and “I” in this guide but this applies everywhere

Asking good questions is really about explaining your current understanding. If you tell me where you are, it’s much easier for me to lead you to the solution.

0. Don’t ask to ask a question. Don’t say “can I ask a question?” The answer is always yes. Asking to ask a question just wastes time.

1. Show me any error messages. Not a summary, not part of the message, the actual message.

2. Show me your code. Don’t describe what it does, just show it. I’m good at reading code!

Sometimes I will ask you to send me your whole program, but only as a last resort.

But this is not CS 0007! It is no longer acceptable for you to send your whole program to me and ask, “can you have a look?” No, I can’t. Your programs are getting really long. Instead:

3. Show me your code as text! Avoid screenshots of code. Screenshots of error messages and output are good though.

Often I want to copy your code, add comments to it, move things around etc. Email kinda sucks for this, which is why I usually prefer Discord for helping with code issues. See the Discord guide for how to paste code properly.

And please don’t do this, it makes my soul hurt (and you should clean your screen):

a blurry, tilted phone camera photo of code on a dusty fingerprint-laden laptop screen