Learning to code is hard.
I’m not talking about the sense in which we’re all still learning. I mean when you first start out, the first few months. During this period, every tiny bit of progress you make comes at the expense of an excruciating, time-consuming trial.
Personally, I had the great fortune of being around patient, empathic experts who helped me through the worst of it. (Thanks Jon, Jackie, Lauren, et al!) But not everyone is so lucky, and sooner or later a new programmer is bound to encounter RTFM and its new-fangled cousins, GIYF and LMGTFY.
Ever ask an elementary question about coding or about getting your development environment set up, and encounter one of the following responses?
- Contempt without assistance.
- A link to a page you don’t understand, with no explanation.
- Overly brief assistance, with or without contempt.
Whether or not they say it explicitly, the authors of these responses are expressing the RTFM sentiment. And RTFM is bullshit.
I’m not the first person to say this, of course. But as a programmer who is still very much in touch with what it’s like to know nothing, I hope I am in a position to fortify the empathy of my more seasoned colleagues.
No one feels Meno’s Paradox as viscerally as the Googling noob.
And how will you inquire into a thing when you are wholly ignorant of what it is? Even if you happen to bump right into it, how will you know it is the thing you didn’t know?
Answering technical questions via internet searches is a skill that takes practice to hone and which requires background knowledge. Teaching yourself to code on the internet is a boostrapping process: The more you learn, the better you get at learning it, and before you’ve learned very much, learning is really hard.
If you get stuck and you seek help on the internet, you need to know at least the following in order to have any hope of success:
- The nature of the problem your having.
- The vocabulary that is commonly used to express this problem.
- How to understand potential solutions to your problem.
- How to implement potential solutions to see if they work.
- What would constitute a solution’s working.
People who ask stupid technical questions might be stupid people. Or, more likely, they might just be missing one or more of the pieces of knowledge they need to ask a smart quetsion and understand the answer. It’s not their fault they don’t know these things. They are beginners. Learning to figure stuff our using documentation and Google is a skill they’re developing along with all the others.
So, if someone asks a stupid question, consider taking the time answer it, fully and cheerfully. Or don’t answer at all. Just remember: RTFM is some lazy, rude bullshit.