Major accepts both. Which one should I take? CS88 is only 2 units but people say that it feels like a 4 unit course while CS61A feels like more than a 4 unit course. Yet, CS 61A prepares me well for other CS classes (CS61B), so I’m in between these two.
I have no foundation in CS, but I heard that both of them start from the ground up. I’m also taking either CS88/CS61A, Data 8 and another breadth, so I’ll be able to spend a lot of time learning coding. Any input is appreciated. Thanks!
If you have no background in CS, you should not take CS61A until you have taken one of the beginning courses. CS61A is a very challenging class as my kid can attest to and one could call it a weeder class. Data 8 on the other hand is a pretty easy beginning course. I’m not sure if you really need both Data 8 and the CS 88 connector to Data Science - to me that seems like overkill, but that’s just one opinion. CS 10 is also a beginner class that is offered.
Take CS61A and choose one of the “sections designed for beginners” (plenty of non CS majors there).
Just like Chem1A/1B is the slayer of dreams for pre-med students, CS61A-B is the slayer of dreams for CS hopefuls (agree @ProfessorPlum168 ) There is no point in taking CS88 if you still need CS61B for Data-sci imho…
Ah yes, there are discussion sections for beginners in CS61A, forgot about that. In a weird way, knowing nothing about CS and learning from the ground up at Berkeley is almost better than having lots of experience prior, because the midterms and finals test questions often require you to answer the problems within a framework and a lot of people who are experienced often get flustered at being limited by these frameworks. My kid constantly had to battle that.
I would still take Data 8 first though, easy class and you’ll learn a lot of Python in that class.
Note that classes like CS61A and Data 8 have their own signup methodology for discussion and lab sections. A word of warning: Signups for discussions and labs take place a few days prior to the start of class and is first come first serve so make sure you are available on an Internet-connected computer or phone right at signup time. Choice discussion and lab times can go away within a few minutes.
@ProfessorPlum168 that’s right. I think one of the most difficult parts about CS61A is that it’s not necessarily correlated with your programming experience/competence. You need to be able to think a problem in a certain way, which might not be your preferred way to solve a problem.
For example: Complete the function prune_small that takes in a Tree t and a number n and prunes t mutatively. If t or any of its branches has more than n branches, the n branches with the smallest labels should be kept and any other branches should be pruned, or removed, from the tree.
I’m sure that most people with python experience can solve this problem in some way, but if I give you some blanks to fill up and 5 minutes to do it, then it’s another story
def prunesmall(t, n):
while __:
largest = max(, key=)