<p>After perusing all the threads on CompSci, I've gathered that it is a very challenging class that requires math/science prowess. I'm a senior in high school and I've never taken any CompSci classes before, but I am interested in taking one at Berkeley. As of now, I'm an undeclared major in L&S heading towards business but I would really like to learn about CompSci. I don't want my GPA to be damaged that badly. Should I take it? Can any CompSci majors tell me about their experiences?</p>
<p>Take CS10 to see how well you like CS. Don’t jump ahead and take CS61A with no experience, trust me!</p>
<p>Agreed with the recommendation on CS10. It’s fun and is geared towards people who want to look at CS.</p>
<p>On the other hand, CS61A is designed for people with prior programming experience. It’s a straight nosedive into a 'why’s of computer programming for those who already have dabbled with the 'how’s. People without prior programming experience will get slaughtered.</p>
<p>I’ve been programming since elementary school, and I still managed to find parts of CS 61A challenging when I took it. As for my friends with no programming experience, almost all of them failed the course despite putting in their best effort and getting all the help possible.</p>
<p>Is CS10 really a good representation of CS? From everything I’ve heard, it seems like a baby class taught in a language that can barely do anything (and whose target audience is three year olds), and you learn little about actual programming.</p>
<p>Let me stress, unless you’re confident that you’ll spend about 15-30hrs each week for CS61A (assuming no experience), then you shouldn’t take it. Try out CS with CS10 even if the class doesn’t help much. It’s a fun class that introduces minor programming, but when you take CS61A during your 2nd semester, you’ll have a better mindset.</p>
<p>No programming experience + CS61A first semester = setting out to fail/bad GPA unless you’re really dedicated.</p>
<p>I disagree with the above posts. 61A is doable without any prior programming experience, and when I took it a decent chunk of the class was in that position. (I was, however, one of the lucky ones that was able to take CS3L before it died ) It just means you have to work a bit harder during the first 2 weeks, but after that everyone is on the same page. </p>
<p>If you really want to test the waters, just go through the cs10 or cs61a lectures online (they’re all webcasted) and see if you like it. I have heard that cs10 is kind of a lame class that isn’t worth taking though… If you wanna dive straight into 61a, the only thing you should really be familiar with if you don’t wanna stress for the first week is recursion. Get familiar with that and you’ll be golden.</p>
<p>CS 10 doesn’t each you a serious language, but the stuff they teach you is as real of a programming language as some “serious” stuff (i.e. Python, Ruby, Java, C/C++, etc.). Programming isn’t about languages; it’s about understanding how to translate intentions into perfectly logical pieces of instructions. Whether those are expressed visually or textually is less important.</p>
<p>I now work at a startup, and before any non-trivial code is written, there’s almost always a brainstorming session in which everything goes into graphical diagrams that look like much more high-level versions of the stuff you see in CS 10. Getting those diagrams correct is the hard part; after that, you just translate that into code and you’re golden. In fact, I’ve never seen any good engineer who thinks in terms of code instead of the overall structure.</p>
<p>Programming is like writing. The structure, literary devices, etc. are the hard parts while the language itself is just a matter of vocabulary and grammar. In upper division courses and the real world, you’re expected to teach yourself and get proficient with new languages within a matter of days.</p>
<p>Taking CS 61A without prior experience will be like taking a grammar course when you haven’t learned basic phrases.</p>
<p>You can preview the course materials for CS 10 and CS 61A here:
[EECS</a> Course WEB Sites](<a href=“http://www-inst.eecs.berkeley.edu/classes-eecs.html]EECS”>CAS - Central Authentication Service)</p>
<p>Follow excelblue’s tip. Don’t pressure yourself into taking CS61A if you’re not prepared… Or if you’re going to do it, take it and see how you do on the first 2 midterms… if it doesn’t go well, drop it before the deadline.</p>
<p>If John DeNero is teaching it again next Fall, which I believe is the rumor, then you’re in somewhat of luck. I had no prior programming experience and I faired decently in 61A, even did better than average. You just gotta want it enough and spend a good chunk of your time learning the material. I heard that CS3S was a better prep for 61A, but has since been cut and replaced entirely with CS10.</p>