Reading (Computer Science) Textbooks
Reading technical material, like research papers and textbooks, is a skill unto itself. What follows is a modification of an approach advocated for reading research papers. This approach is characterized by carrying out a series of passes of the material where early passes are meant to familiarize you with the material and inform the later passes were real depth of understanding is achieved.
Multi-Pass Reading
When reading a chapter of a textbook you should not simply start on page one and continue on until you complete the chapter. This hyper-linear, one-shot approach will not serve you well. Instead, you should make a series of passes over the chapter. Early passes are meant to clue you into the important content and how its organized so that your final passes are focused and goal-oriented. In effect you start by figuring out what the chapter’s all about and how it’s organized and then transition to the details. When you do a linear, one-shot read you have to figure all of this out at once and that’s much harder.
First Pass
The first pass is about getting a quick lay of the land. You want to get a rough idea of the material covered in the chapter and how that content is organized. You should expect to spend something like 10-15 minutes on this pass. This pass should be done when you begin a chapter, and it’s worth repeating whenever you start new sections in order to keep the big picture in mind. When you’ve successfully completed this pass you should be able to give a one to two sentence answer to the questions: “After reading this chapter, what new things should I understand and what new things should I be able to do?” I often frame these questions in terms of problems introduced in the chapter and the approaches given for addressing those problems.
Your first pass proceeds as follows:
- Read the title and section headers. Identify words or terms that are unfamiliar to you and look them up (in the chapter) as needed.
- If the chapter provides an abstract or short introduction, then do a quick read of that material.
- If the chapter provides a summary or short conclusion, then do a quick read of that material.
- Look through any and all review questions, exercises, and problems and get a sense of the kinds of things you’re expected to do after having learned this material.
In a nutshell, the first three steps are about engaging in the question, “After reading this chapter, what should I Know?” where the fourth step asks you to consider the question, “After reading this chapter, what should I be able to do?” These two questions inform one another. Knowing something allows you to do something; doing something requires that you know something. Feel free to play around with the order of the steps but make sure you keep these two perspectives, knowing and doing, in mind as you proceed.
The first step gives you some footing. The chapter title and section titles act as an outline. Knowing the what they refer to will give you a pretty good idea of how the chapter is organized and the ideas presented in the chapter.
The second and third step then adds a little detail to this outline. Many books provide short abstracts that are less than a page long and more still begin with a one or two page introduction. When the introduction is longer than a few pages then just skim it and try to get a general feel for the focus of the chapter. My favorite textbooks provide a short, less than one page, summary of the chapter. More common are short conclusions. In both cases, you should read these. Try reading these before the introduction or skipping back and forth between the conclusion and introduction. The combination of the introductory and concluding material gives you a broad overview of what’s covered in the chapter. Pay special attention to mentions of key problems or issues that are introduced, the different approaches to the problems discussed in the chapter, and the relative merits of those approaches. You do not need to worry about the details of the different approaches nor do you need to fully understand the problems. Your goal is to recognize their place in the chapter and the relationships between these things.
The fourth step is so important that it’s worth playing around with strategies that start with this step then proceed on from there. If you’ve been assigned problems, pay special attention to those but do not ignore the other problems. Every chapter of a textbook is likely to introduce you to big ideas. These ideas pop up in a variety of situations and take on many different forms. The problems at the end of the book are these ideas in very specific, operational form. By looking at the problems you can very clearly think in terms of what you should be able to do instead of what you should know.
The first pass should give you a clear sense of what’s in the chapter and the kinds of tasks you’re expected to be able accomplish after having completed the chapter. It ignores the how of everything and fixates very firmly on the what. The second pass is where we dive into the how by digging into the meat of each section.
Second Pass
In practice, the second pass is carried out on each section of the chapter. You’re likely to spend an hour or more getting through the whole chapter but your mileage will very depending on the textbook. Given that your first pass should have left you with a rough sense of what you’re supposed to know and be able to do after reading the chapter, this second pass is about answering the question: “How do I do those things and what are the details of the things I need to know?”
Your second pass proceeds as follows:
- Read the subsection titles and learn any unknown terms encountered.
- Scan through the section, identify and learn all the keywords (words in bold or italics) and take a moment to look at and read the captions to all the figures ( graphics, code fragments, tables, etc.).
- Now carefully read the section. All of it. Focus on understanding the keywords and figures, how they connect to one another, and how they relate to the the overall chapter themes as identified in your first pass. When you encounter worked examples of problems, read and follow along with them slowly and carefully repeating steps as needed.
The first two steps of the second pass are really continuations of the first pass carried out within a single section. The slow-going, detail-oriented work starts at step three. In that step you’re trying to obtain the knowledge and skills that all your prior reading has identified. After completing pass one and the first two steps of the second pass, your reading should be goal-driven. You have a list of things you need to know and you want to be able to do and it’s all in the section. Work them each item in turn, come back to things, keep at it until you feel like you mostly know what you set out to know. Above all else, let yourself re-read, go-back, and skip-around.
After completing pass two you should feel pretty comfortable with the material. Spend extra time on worked problems and examples and really make sure you get what’s happening for that problem. Once you think you see how everything fits together its time to gut-check that understanding with some problems.
Third Pass
The third pass is about diving into the problems from the chapter. If book problems are assigned as part of the class, then this pass can be thought of as starting or doing some of your homework. If your class is working one or two sections at a time, then you’ll repeat this pass with each section just like you did with the second pass. This pass could also take an hour or more depending on how many problems you choose to do in depth. When you’ve finished this pass you should have verifiable, objective proof that you understand and can apply the material introduced in the chapter.
The third pass proceeds as follows:
- Go through the problems and exercises and group them according the section that covers the material requisite for completing the problem.
- For each problem, identify the most relevant or related worked examples.
- Do some problems and verify your work with provided solutions or the instructor.
Once again, the first two steps of this pass are about getting a foothold on the work. Taking the time to relate problems to sections and identifying similar problems encountered in the chapter lets you approach problems with something to try. It clearly puts you in the place of, “I should be able to use this material and this approach to solve this problem,” rather than,”I should be able to solve this problem.”
If you have assigned problems, then this is the time to do them. If you don’t, then pick some problems and do them or at least take the time to make a real detailed plan for solving them. The real pay off happens when you get confirmation of your work and that doesn’t need to wait until after it’s been graded. Go to office hours and review a few of your solutions with the professor. Don’t just hand it in and passively wait for a thumbs up, ask to walk them through what you did. If your approach and the solution looks good then chances are that you’ve learned some of what you need to learn.
Goal-Driven Reading
What should stand out in this multi-pass strategy is that your first objective is to go from some thing like “learn the material in the chapter” to much more detailed, specific goals that clearly state the ideas and techniques you’re trying to learn. With these specific objectives in mind you begin close reading and problem solving.