When you think for a living, reading is an essential skill.
When a software engineer seeks career advice, he or she will often hear that “software engineers should write.”
Writing refines your thinking and is a scalable communication medium. The Pragmatic Programmer, an industry classic, suggests treating English as just another programming language to master. The Passionate Programmer identifies writing as a way to establish your expertise and make it easier to get a new job.
When your job is all about thinking and communicating, writing is a crucial skill to develop. “Software engineers should write” keeps coming up when looking for career advice because it’s solid advice indeed.
Something you don’t hear so often, however, is the recommendation to read.
Yet, when you think for a living, reading is as essential as writing. Software developers ought to take reading seriously because reading delivers benefits across multiple performance vectors.
Reading as a cognitive workout
You might not realize it, but as you are reading these words, your brain is engaged in a highly advanced cognitive activity.
In The Readers Brain, neuroscientist Yellowlees Douglas explains r that reading involves three distinct levels of cognitive processing, lexical, syntactical, and inferential. When we read, our brain gets busy identifying individual words, making sense of them based on their surrounding context, and inferring what to expect next.
All this work happens subconsciously, with the brain coordinating between its different areas. But when it comes to understanding and retaining what we read, constant focus is necessary.
Focus is a crucial skill for software developers. Athletes train their muscles for power and stamina. We should put the same effort into training our brains.
The quality of our output is proportional to the intensity of our focus. When it comes to improve your focus, reading is one of the best workouts.
Reading as a necessary skill on the job
Software developers read more than they write.
We examine code before changing it, peruse API documentation, and review colleagues’ RFCs. Those of us working in async-first, distributed organizations also communicate primarily through reading and writing.
Being adept readers is a foundational, multiplying skill. The easier it is for you to read without getting distracted and assimilate written content, the better you’ll operate.
Putting in focused reading reps with books and articles keeps your reading fit for the job.
Reading as a means to stay relevant
If writing is how we organize ideas, then reading is how we acquire ideas in the first place. Reading provides the raw materials to create new ideas.
Cross-pollination is an excellent strategy for success in the knowledge economy. As I discussed in Broaden your range to improve your thinking and The Synergist Engineer, great rewards await those who can find clever new combinations of existing ideas. Reading broadly is the number one tactic for increasing the surface area of combinations you can devise.
Reading is necessary in tech’s fast-moving environment, even for those not interested in trailblazing by remixing ideas. Whether you relish working on the bleeding edge or prefer robust, proven technologies, sooner or later, you’ll need to learn how to work with the next version of whatever you’re using today. Avoid staying on top of your industry’s development at your own risk.
Software developers work first and foremost with their brains. Everything else is downstream of our ability to think clearly.
Making reading a daily habit will advance your cognition and career.
But perhaps the biggest benefit of reading is one that has nothing to do with performance and everything to do with leisure. In the words of Jojen Reed, from George R.R. Martin’s epic A Dance With Dragons, “A reader lives a thousand lives before he dies. The man who never reads lives only one.“