The older programmers amongst us will probably know the expression “RTFM”. This was usually the one word answer thrown at some hapless junior programmer who dared to ask what a senior programmer thought was a stupid question, the answer of which could be found in the manual.
For those (luckily) not in the know, RTFM is an acronym for “Read the F… Fabulous Manual”. It’s often used in a dismissive or hostile way, because there’s an assumption that the person asking the question could have found the answer “easily” in a technical manual or by doing some independent research.
Leaving the negative, counter-productive issues aside, there is more than a grain of truth in the phrase. Let’s approach the RTFM idea from a few other perspectives.
Questions and Answers
As a teacher/lecturer/facilitator, I do believe that every question is valid, and that we should never think of any question as “stupid”.
It’s hard enough for most people to summon up the courage to ask a question, especially if they are new to the field. And who are we to assume that they haven’t done some reading or haven’t tried googling for the answer? Maybe they’ve read a whole bunch of answers and are totally lost. Maybe the terminology is new and confusing. Maybe they don’t even know what the question should really have been. Remember that everyone has different backgrounds, experiences and training.
When asked a seemingly stupid or elementary question, we must practise more empathy and be more understanding. Remember that we were once in their shoes too.
Try answering their question with a few questions of your own, like “What have you tried already?”, “What do you think the problem might be?”, “What do you understand about the error message?”, “Have you tried to do X or Y?”.
Java-based APIs
We as Java programmers need to think of “RTFM” as a personal mantra to remind us to keep reading and learning. I’ve been teaching Java for over 25 years, and I would never regard myself as a guru. There’s always more to learn! The more I read and study, the more I realise I don’t know. That drives me to do more reading and research.
Just as an illustration, the following table details the size of some common Java APIs. I’ve only listed some of the APIs that are on my computer; they’re not necessarily the latest and greatest versions.
Java API | Packages | Classes | Version |
---|---|---|---|
Java SE8 | 217 | 4240 | 8 |
Java FX8 (GUI lib) | 36 | 689 | 8 |
Java EE8 | 135 | 2026 | 8 |
Jakarta EE8 | 133 | 2067 | 9.1 |
Spring Framework | 414 | 4044 | 5.3.22 |
Spring Boot | 418 | 2075 | 2.5.4 |
JUnit 4 & Hamcrest | 24 | 387 | 4.13.2 & 1.3 |
Think about it: if you’re using Spring Boot within a JEE application server and doing some unit testing, you’ll have access to over 12,700 classes! You’ll definitely not use them all, or have to know them all, but you’ll need a good idea of what’s available when you write your application. You don’t want to re-invent the wheel!
StackOverflow is a good resource, but you can’t expect to find an answer to every question you may have on these 12,700 classes. I have found that many of the answers on StackOverflow only make sense if you already have an idea of what the answer should be. The more you know, the easier it is to filter out the good answers from the not-so-good answers or the plain wrong ones.
The only way to get to know what these classes do and how you can use them is to “RTFM”! Make sure you download all relevant JavaDoc documentation to your computer so that it is readily available. Read it whenever you have a chance, or at the very least, when you need to use a specific class.
Admittedly some of the language and terminology used in the Java documentation is technical and hard to read. Most of the technical terms will have been used at college or university. These are relatively easy to look up on the web. Once you understand these terms, the rest of the documentation should be easy to follow.
Debugging
Another place when we as programmers can use RTFM as a personal mantra is when debugging. Here I would rather change the acronym to RTFS – “Read the F… Fabulous Screen”. Java error messages are way clearer than C and C++ messages ever were. They point you to almost the exact location of the error, line number and column.
But that’s a topic for the next post… [cliff hanger exit]
Ending Off
Don’t forget to share your comments and Java experiences.
2 thoughts on “RTFM – Read the Fabulous Manual”
Pingback: RTFS - Read the Fabulous Screen • 2022 • Incus Data Programming Courses
Pingback: Observation, Knowledge and the Decimal Point • 2022 • Incus Data Programming Courses