A gentle introduction to CS61A.
I'm Arushi — online, I go by AMKS. I've been teaching this class at Berkeley for five semesters. This guide contains my insights, some fringe concepts, with a couple challenge questions thrown in for good measure. It is meant as a compliment, not a replacement to the course.
It does not pay lip-service to topics I don't have anything valuable to say about — I'd recommend keeping up with lectures, discussions, homework, labs and projects! Use this guide solely as an additional reference.
The point of 61A is to make you great thinkers of Computer Science first, and great programmers second. The concepts are hard and abstract and, gotta be honest, occasionally annoying. My hope is for you to see how this class is the foundation on which your CS journey is based.
You may be feeling overwhelmed by the amount of activities that 61A has. Word of advice – don't worry, you're not expected to do all of them. The purpose of this overflow of info is not to scare you away but to let you know that you have as much support as you need and more.
Throughout this guide, I hope to:
- Show you how the concepts that you are learning are applied in real life
- Teach you how to think critically and break down problems
- Teach you to built up smaller pieces into impressive large, cohesive programs
And, of course,
- Make you the best 61A student that you can be.
All the best, and go bears!