How to Read a Science Textbook

NOTE: Posting this here for future reference

NOTE: This passage was written with computer science textbooks in mind. It is equally appropriate for a chemistry or physics textbook, so please substitute science or math for computer science, depending on your class.

Reading a computer science text is very different from reading ordinary English. Trying to read computer science the same way as a novel or a history text is certain to cause you trouble. Computer science text typically alternates passages of explanation in English with pieces of code. Even its English, however, is of a special and stylized kind.
 
 When reading any explanatory material in a computer science text, the main principle is simple: read every word, one word at a time. There is no “catching the drift” and then filling in from later paragraphs. The authors will say his or her piece only once. If the author does seem to repeat, it is probably to make a slightly different point. Every word counts.
 
 Forget about speed-reading; one small paragraph may take ten minutes! Understand each part of each sentence as you go along. Keep in mind that familiar words may have computer science meanings that you need to learn. Of course, you need to know the computer science meanings of those unfamiliar computer science words, too. If you cannot understand the passage, then stop to think and go over computer science definitions of words you are reading until you figure out the meaning. Often it is necessary to start reading at the beginning of the passage several times. Take your time. There is simply no way to rush the process. It is a slow and delicate business…and “slow is fast!

With actual code, remember the default flow of control: how each line completes before moving to the line below. If the line is especially obscure, the author may provide some written comments. But be sure that you understand what each line of code does, before you go on to the next line. If you skip even one line, the rest of the code will make little or no sense to you.

It is best to read computer science with pencil and paper at hand, and to reproduce the contents of each variable yourself as you go along. Do not merely write down what you see in the book. Instead, try to work out each program for yourself, step by step, with the author. Really important are problems that the author has worked out in detail. Successful students rely on these very heavily.

How to role play a program in the textbook:
 Start with a given program, understanding it through to the end, one step at a time. Then close the book, and try to write it on your own. Do the whole program as many times as necessary, until you can reproduce the whole solution with the book closed. But try not to memorize the solution. Instead, keep track of “what to do” to move from each line to the next of the operations.

Role playing programs can take a lot of time. It is not unusual to spend an hour or two on a single program. Try to be patient.

After you can work through the example programs on your own, the homework exercises will give you little trouble, for they are usually very similar. Exam questions, too, will mostly follow the same pattern. In short: time spent on problems the author has solved for you will pay off in high grades.
 
 Some students are discouraged to see how easily the author sails through a tough problem. “I never would have thought to do that.” “If we’re supposed to do this on an exam, I’m finished.” These are common reactions. But what you see in the book is only the author’s final product, carefully cleaned up for publication. He or she produced wastebaskets full of scratch paper to find that clean solution. And teachers do the same when preparing for a lecture. We computer science people make computer science look easy because we work hard at it when you aren’t looking.

Remember that you will not be expected to invent a new problem-solving technique on the exam. Your task is to do the techniques already shown to you in class and in the book.

As you can see, you do not merely read a computer science test — you work through it! The information has to be dug out, not just skimmed from the surface. It is a slow business, and the only good way to understand what the computer science text is trying to tell you.

SO BE PATIENT.
 REMEMBER THAT “SLOW IS FAST,”
 and
 ENJOY COMPUTER SCIENCE READING!

Reference:
 http://www.newark.osu.edu/osuncomputer sciencelab/pdf/handouts/howto/pdf/readcomputer science.pdf