Words of Wisdom (?)

Sit down, friend, and let me give you some advice.

>> In terms of studying, thirty solid minutes every day is better than 50 hours in the last few days before the exam. It's also a lot more comfortable. I've never managed this myself, but I swear it's true.

>> Look for opportunities to teach things to your peers. They say you haven't really mastered the material until you're able to explain it for someone else to understand... and we're aiming for mastery here!

>> For best results, keep up with the lecture topics. It's not easy to be the hero and make up tons of lost ground. Plus, John DeNero's voice is music to the ears of any sane human being.

>> Convince yourself that you enjoy this material and that you want to learn it. Once you have that, everything else will come a lot easier.

>> Make friends. This class is a hell of a lot more fun when you have people to suffer alongside  complain about CS with  help cultivate your love of learning!

>> In order to become better at something, what do you do? You practice it until you improve (and then you practice some more). The same idea applies to 61A. If you want to get better at coding problems, do a ton of coding problems. If you want to get better at recursion, take in and write a lot of recursive programs. That's how you learn.

>> Actually, here's a generalized algorithm for learning pretty much anything:

Step 1: Acquire conceptual knowledge of the material. In 61A, this can be done by watching lectures, reading the textbook, and talking to other people.
Step 2: Put that knowledge into practice. Binge-solve discussion problems and past exam questions, or try your hand at a side project. It doesn't matter what it is, as long as it allows you to apply the stuff you've learned.
Step 3: Repeat that last step. (A lot.) If you come across things you don't know, repeat Step 1 too.

That's it! Follow the advice on this page and you will surely profit. :)