Does CS10 prepare you for CS61A? Should I wait?!

<p>I want to major in Business but also in Computer Science - which means I need to maintain at least a 3.7 GPA with those difficult CS prereqs to get into HAAS. I have some experience in Python (about 1.5 months worth...), but is that enough to ace CS61A? Or should I take CS10 and familiarize myself with programming before I dive right into CS61A? I have good worth ethic and will do whatever it takes to ace classes, but I don't want to enter CS61A if it's completely impossible for a newbie.</p>

<p>Right now, my schedule is:</p>

<p>CS61A
Econ 1
Japanese 1
Scandanavian r5a</p>

<p>I have experience with Japanese, and I already have the calculus requirement waived. Will take Math 54 next semester. Should I replace CS61A with CS10 or Sex 101 if I have little python experience?</p>

<p>If you want to do both majors, you probably don’t want to use of a schedule slot on CS 10, since your schedule will be crowded with courses for both majors.</p>

<p>You can preview CS 61A by looking at past course home pages here: [EECS</a> Course WEB Sites](<a href=“http://www-inst.eecs.berkeley.edu/classes-eecs.html]EECS”>CAS - Central Authentication Service)</p>

<p>Better than not taking it at all but not substantial amounts. In terms of programming concepts, 61a literally covered everything from CS10 in the first week.</p>

<p>Just take CS10 and see how well you like CS. If you’re doing Haas, taking CS61A might affect your GPA (especially if you’re new; getting a B+ or better is pretty hard). I would suggest for CS10 since you’re not adamant on CS…</p>

<p>Sign up for both and drop 61A if it’s killing you. You should realize if it is by the drop date (most of friends did lol)</p>

<p>What makes 61A hard? Workload? Exams? Speaking of exams, how are tests at Berkeley (for engineering majors) different from your typical high school exams? I often hear that Berkeley and MIT forces you to adopt a conceptual thinking approach, but what does that mean really?</p>

<p>Adding to the questions posed above: How is 61AS? Does it give a better introduction to Computer Science in Unit 0 than CS10? I have absolutely NO programming experience (I come from rural China), and it would be great to have some insight from those who have taken 61AS.</p>

<p>I definitely think it might (I haven’t taken it, but was comparing it to 61A just a little while ago), as I’m pretty sure the syllabus says it will cover what was once in an introductory CS course (idk which one it was anymore) if you need it. The downside is that it is self paced (have to have a lot of discipline, especially since you have the option to start this semester and finish in the spring). 61AS is also taught in scheme (61A is python), which I personally found not as intuitive as python. I’m not sure who is best between Harvey and DeNero though…</p>

<p>Wait… how do you have no programming experience, yet say that you have 1.5 months Python experience?</p>

<p>@ChinaWonOlympics: I’m taking 61A this semester, but I’ve had some programming experience in the past and I’ve done some of the homework. </p>

<p>In my opinion, what makes 61A hard is that many of the problems are like puzzles. You have to solve what might seem like a simple problem, except there are tons of restraints. For someone who hasn’t done programming, the analogy I would give is this: say you want to find the square root of 2. In the “normal” programming world, I would just call a built-in square root function, kind of like using a calculator. In 61A, a restraint might be that you can’t use a calculator. Then, a simple problem becomes much harder. 61A problems aren’t actually as hard as my analogy, but I hope you see what I mean.</p>

<p>I’d say go and take 61A. With some experience CS10 programming will be boring/useless. On top of that CS10 has lots of readings etc that you have to spend time on. Just do 61A if you can’t do it then you can’t do it. If you can then stay on. CS10 isn’t going to change that.</p>

<p>As someone who was in your position a year back (had no programming experience at all, at least you’ve got 1.5 months of Python in), I’d say take CS 61A. It’s going to be * slightly* hard, but it’s going to be totally worth it. Especially because John DeNero is teaching it, and he’s a fabulous instructor (I took the class with him last Fall, and boy, he was great!) . You don’t want to wait for Spring because Brian Harvey will take it in Spring and rumor is that he’ll probably switch back to Scheme for the semester, which is why your experience in Python will count for very little.
All the intricacies aside, 61A is a great class, and you can easily manage a B+ or a better grade if you’re willing to be regular. If you go the extra mile, attend your sections and labs religiously, then you can get your A too.
I don’t regret taking it as my first CS course at Berkeley, it was thoroughly enjoyable. :)</p>

<p>My 1.5 months of Python experience is probably nothing compared to what other people have. All I know how to do is how to program basic procedures, write recursive definitions, and build an infantile search engine. I think I’m going to try going through all the courses materials for CS10 and 61A and see how bad I do with it.</p>

<p>I see no problem with your knowledge, its more than the expected prerequisite for the class. If only you weren’t so pessimistic, you’d do more than fine in 61A.</p>

<p>yeah spring is going got be brain harvey teaching it and he teaches it in scheme. your experience for python wont be as useful. AND CS10 uses a graphics language called BYOB. Its not going to help you python anyway. CS10 teaches basic concepts that you seem to already know so just take 61A already otherwise you’ll regret it. </p>

<p>I took 61a without experience and ended up doing better than i expected. you’re going to regret the time wasted in CS10 if you do take it.</p>

<p>At Berkeley, most languages you’ll use in your courses will have to be picked up within the first few weeks of class. I’d say taking 61A is preferable to taking 10 because of this. 61AS might be easier considering the massive amount of material you can google to help you out with the projects in scheme.</p>

<p>

No. Just from what you’ve written, I can already tell that CS10 is not for you, and you should take CS 61A.</p>

<p>I’m curious as to why CS61A was taught in Scheme before, rather than Python? Is Scheme used in other CS classes? Is there an advantage to knowing Scheme in the workforce, and elsewhere?</p>

<p>To answer your questions in order:
Scheme has bare-bones syntax and makes the concepts of abstraction and recursion very apparent. No. No.</p>

<p>That being said, Scheme is a functional programming language, and even though it is not advantageous to know them for industry, functional languages like Lisp (Scheme is a dialect of Lisp) are very interesting languages because they are very, very different from Java/C/C++/Python.</p>