https://courses.cs.washington.edu/courses/cse121/.
This document describes some recommended strategies for studying for CSE 121 exams. We’ve split them into two categories:
Our awesome TAs compiled a list of strategies and test-taking tips, so be sure to say thanks next time you’re in section!
Cramming technically helps you learn, but the learning is pretty shallow and quickly forgotten. It is far better to study a little bit every day rather than trying to fit all the studying into the late hours before the exam. It might be a bit more work, but the payoff is worth it!
It’s really easy to be overwhelmed with the stress of all your classes and put taking care of yourself on the back burner. This is not a good thing and you should still prioritize being healthy while studying for exams. Your brain is part of your body — so keeping your body healthy also keeps your brain healthy! This means making sure to stay hydrated, eat a balanced diet of things (other than chips and Oreos!), and maintain a normal sleep schedule.
It’s also important to give yourself some mental breaks every once and a while to make sure you aren’t overexerting yourself (likely to cause you stress or fatigue). Try to do some mindfulness exercises for a few minutes every hour to give yourself a well-deserved break! Fitting all these things in your busy schedule can be tough at first, but making them a habit makes it easier in the future.
Students often make a crucial mistake of not adapting their studying to the needs of the test. For example, in our case the exam is going to be on paper — so it’s really important that you practice writing code by hand, so that it’s not a brand new experience when you take the actual final. While our brains can store a lot of information, it’s extremely conditioned on context. Learning a skill in one context (coding on a computer) and never practicing it in the other (writing on paper) can potentially hinder the knowledge you’ve gained.
So if you want to study like you are taking the test, what should you do?
This process can be slow, but very helpful for your ability to solve problems and check if they are correct.
Remember to include checking your answers as part of your test time!
For example, compare and contrast array problems to see how they are similar and how they are different. Trying to figure out these “higher-level” features of the problems will help you see common patterns in solutions. Knowledge is made from connections so forming high-level connections between the problems you solve will help you learn how to solve new types of problems. Reflection is a form of practice that helps you understand the material in a deeper manner. You should reflect on what you found easy and what you found difficult to help guide future practice.
Mixing up the types of problems you practice increases long-term learning.
One well-known study* focused on college students learning calculus and computing the volume of different solids (spheres, cubes, cones, etc.). One group of students practiced by first doing all the cube problems, then all the sphere problems, and so on; this practice strategy is called “massed practice”. The other group of students practiced by mixing up the problem types and doing them in a random order. This type of practice is called “mixed practice.” Right after finishing the practice problems, the students were tested on their knowledge.
Before showing their test results, the students were asked how effective they thought their studying was. The students who did “massed practice” reported at a higher rate that they felt their studying was effective. The students who did “mixed practice” reported they felt slowed down by having to switch between contexts for each problem.
Which one do you think performed better? Turns out the students that did the “massed practice” or a problem type at a time did better when tested immediately! But what about if you test them a week later? The mixed-practice students do much better! What gives?
Massed practice is like cramming. While it provides short-term gains, it doesn’t translate to long-term memory. It also only requires you to learn the material at a shallow level. When working between problem types, you can compare and contrast the aspects of the problem that you worked on, and then apply that deeper understanding to future problems. It does a better job of forming connections between the information rather than treating them as completely separate silos of knowledge. It also has the added benefit of fitting the context of real life a bit better — since you don’t know right away what type of problem you’re working on before you solve it!
This is not to say that mixed practice is “faster” than massed practice. It turns out that learning using mixed practice feels a lot slower because of the context-switching. But the learning is deeper and longer lasting than the fast way. So the students’ responses were right! They did feel “slower” but that was actually a sign they were learning better!
(*interested in the research? one great starting point is the paper “The shuffling of mathematics problems improves learning”, which this section discusses)
Don’t just do easy problems. Do problems that challenge you because it’s a sign that you have somewhere you can improve. This plays into the concept we talked about earlier in the quarter called a “growth mindset” rather than a “fixed mindset”.
People who have fixed mindsets believe their abilities are fixed at birth (i.e. you’re either a CS person or not). Because of this, people with fixed mindsets don’t like to be challenged because it is a sign of inherit weakness to them. People who have a growth mindset believe they can improve their abilities with practice. This means people with growth mindsets see challenge as an opportunity to learn since they can eventually overcome that challenge with enough practice.
Having a fixed mindset can be very difficult emotionally, but it’s something that can change with intentional practice! You have to catch yourself when you are saying “I’m not smart enough” or “I’m not cut out for this” and instead think “I don’t get this yet” or “Something isn’t working right now, what do I need to change about my studying to see improvement?”
Have any questions or suggestions? Post on Ed!
This document was last edited by Elizabeth Shirakian. It was written by many 12x and 14x instructors and TAs over the years!