Effective reading for programmers

adminguy's picture
Posted June 10th, 2015 by adminguy



The need to learn continuously is both a joy and pain in software development. But it's also like a game. We begin to enjoy it only when we learn to play it well.
We learn in many ways like reading, watching videos, listening to audio streams, and by actually writing code. In this article I'll focus on reading, because that's still the predominant way in which most people get their information.
Did you know that there are strategies for effective reading? I certainly didn't back in high school. I would just read a book cover to cover. It worked well for me then because the content was rather simple and distractions were few. But this strategy (or rather the lack of it) started becoming less effective as I progressed to grad school. I really wish I had learned about effective reading techniques back then, but for some strange reason I did not and entered the workplace without any tools to manage the vast deluge of information which would soon hit me like a thunderbolt. After much frustration, fear and exasperation, I realized that information overload was not the only problem. Part of the problem was I did not have an effective strategy for managing my information intake. 
Fortunately, I chanced upon a book called How to read a book, which propelled my search for an effective reading strategy. The more I read, the more I realized that all successful people had a strategy not only for reading, but also for managing information and making sure they keep themselves current. 
What I'd like to discuss here is a strategy which many people seem to follow. The strategy is a lot like attempting to visit a new city to really get to know it well. Just speeding through the city is clearly the least effective way to get the job done. Most people would make some sort of plan which would involve studying the maps and maybe reading a couple of lonely planet articles about the city, followed with a detailed visit and probably a revisit. Effect reading is a lot like that.
A good reading strategy consists of three stages: pre reading, actual reading, and review. I'll briefly discuss each of these below.

Pre Reading 
The pre reading phase is about getting a sense of the content. It's like looking at the map of a city and reading a couple of short lonely planet articles before visiting. It helps orient our brain for what's to come. The brain works best when it has some sort of a framework within which it can fit pieces of information. In the context of reading, the framework consists of the main argument/concept and sub concepts of the text we are about to read. 
In the pre reading phase we typically read the introduction and the conclusion to understand the main argument and concepts, followed by section headings and perhaps the first couple lines in important sections. This is usually enough to give us a basic orientation for what's to come. 
Actual Reading
Getting back to our analogy, here's where we actually visit the city and go to the museums, parks and beaches. We meet a few people and get really get to know the city. 
A very effective way to understand what we read is what's known as active reading. I'll explain active reading by first explaining it's opposite - passive reading. Coming back to our analogy, passive reading is like speeding through all the main roads of the city without really looking around, stopping to visit places or talking to people. Reading the text from the first word to the last without stopping, thinking, questioning, and making connections is passive reading. A round of passive reading will help us know as much about a text as rushing through a city will help us know the city. 
Active reading on the other hand is deliberate. We don't just rush through the words. We read a section and link it (in our mind) to the main argument/concept. We try to link it to what we already know and ask smart questions to figure out if it makes sense. We can make a note of these questions by writing them in the margins (if we own the book) or writing them elsewhere. If possible, active reading also involves highlighting small pieces of text to help us review it later. 
Different people use different strategies for active reading. We'll discuss them in a separate blog post, but the important point is that it involves deliberate reading, making connections, and asking questions. It's like having a conversation with the book  as opposed to a monologue where we passively listen to what it has to say.
A friend once told me that you have to visit a place twice to really get to know it. There are some insights which come only in hindsight and the human brain also has a fairly short half life for information. A review gives us the benefit of hindsight and a chance to strengthen the material in our mind.
In the context of reading, the review phase typically begins with trying to answer the questions we made note of in active reading. We review the text for questions we cannot answer and repeat until we are confident of the content. Then we briefly summarize the content in our own words and compare it with the actual content to make sure we have really understood it.
The important point about reviewing is - we want to make sure we have really understood the content and are not parting ways with it assuming a false sense of knowledge. How you review depends a lot on the complexity of the content, your familiarity with the larger context, it's importance and an insight into how your brain best understands and remembers information. Like active reading, many people have developed their own review strategies. We'll discuss them in detail in a separate blog post. 
In Conclusion
The three phases of reading: pre reading, actual reading, and review are an important part of many reader's strategy. However, they are not written in stone. Think of them as a framework which can be adapted for your own needs and circumstances. Feel free to tweak the process to suit your specific requirements as well as the complexity of the content. The process I have outlined works well for fairly complex material, but it can be simplified for simpler content. 
I hope you found this article useful. Since reading constitutes a significant portion of how we learn, any plan to help us read effectively will go a long way in saving time and keeping us ahead on the learning curve. I'll describe these phases in more detail in the next few blog posts. Stay tuned if you would like to improve your reading skills...