Live data from Hacker News

Tell HN: UC Berkeley's CS61A/B/C are the best courses to learn CS and coding

news.ycombinator.com

61–70 of 76 posts

Re: Tell HN: UC Berkeley's CS61A/B/C are the best courses to learn CS and coding

#61
post #46

Disagree too. These courses were also known as “weeder” courses so less students do the major, which can’t support all the interested students, so they’re overly difficult. Anyone learning, I would start with JavaScript and make small fun stuff.

They weren't overly difficult. They were just the same difficulty as the rest of the CS classes at Cal. If you couldn't pass these you wouldn't pass any other CS course.

The CS61 series was excessively difficult compared to the upper-level material, and it was absolutely because it was intended to weed people out of the major.

I got A's in all of my upper-level CS courses at Cal. Cryptography and compilers were a breeze compared to the CS61 courses. My average grade in the CS61 series was a B-. The semester I took CS61B (data structures), my grade on the final was 21, out of 100. The average grade was 16, and the highest score was 35. (The 35 is a VC now and is fairly active on HN.)

Re: Tell HN: UC Berkeley's CS61A/B/C are the best courses to learn CS and coding

#62
post #46

Earlier quoted context omitted.

They weren't overly difficult. They were just the same difficulty as the rest of the CS classes at Cal. If you couldn't pass these you wouldn't pass any other CS course.

The CS61 series was excessively difficult compared to the upper-level material, and it was absolutely because it was intended to weed people out of the major. I got A's in all of my upper-level CS courses at Cal. Cryptography and compilers were a breeze compared to the CS61 courses. My average grade in the CS61 series was a B-. The semester I took CS61B (data structures), my grade on the final was 21, out of 100. The…

The semester I took CS61B (data structures), my grade on the final was 21, out of 100. The average grade was 16, and the highest score was 35.

Hilfinger?

Re: Tell HN: UC Berkeley's CS61A/B/C are the best courses to learn CS and coding

#63

Going to hard disagree here and say this is extremely person-specific. I already knew how to code in C++ and Python from high school AP classes. CS61A was awful for me and made me hate computer science. I tested out of 61B. 61C taught me how computers actually work and simultaneously made me quit the major. Here's my take: if you are interested in computer science , the combination of these classes is great. If you a…

> CS61A was awful for me and made me hate computer science.

Valid criticism. Think for most students, 61A has too steep of a learning curve for an introductory class. For people without any programming experience, it’s a bit too much too fast and with a class size of 2000+, you struggle for resources.

For those with prior experience, it feels like unnecessary training wheels. You learn a little bit of Python, SQL, and Scheme. You have to do environment diagrams (What Would Python Do) on paper, and learn how to use a debugger. Projects and tests have mad-libs style fill in the skeleton code.

In my experience, 61A is a tasting menu of computer science: you take it for the experience, and leave hungry and confused – but excited.

> I tested out of 61B.

OP, you really missed a lot by testing out. This class is half theory, half learn by doing. For example, you learn about red-black trees or Dijkstra's in lecture and then go to lab and implement it.

I know theory and algorithms seem bland at first, but look at the applications. https://www.cs.princeton.edu/~wayne/kleinberg-tardos/

Favorite aspect of this class was designing and then writing a smaller version of git. You had to write a design spec that was checked off, and then your implementation had to pass a test suite.

If that’s not software development, then I don’t know what it is.

> 61C taught me how computers actually work and simultaneously made me quit the major.

61C was not one of my favorite classes because of how low level it is (compilers, RISC-V, concurrency, etc.). But if you stopped taking classes before upper division, you missed out on a whole gamut of “practical” classes like algorithms (CS170) and operating systems (CS162).

Re: Tell HN: UC Berkeley's CS61A/B/C are the best courses to learn CS and coding

#64
post #62

Earlier quoted context omitted.

The CS61 series was excessively difficult compared to the upper-level material, and it was absolutely because it was intended to weed people out of the major. I got A's in all of my upper-level CS courses at Cal. Cryptography and compilers were a breeze compared to the CS61 courses. My average grade in the CS61 series was a B-. The semester I took CS61B (data structures), my grade on the final was 21, out of 100. The…

The semester I took CS61B (data structures), my grade on the final was 21, out of 100. The average grade was 16, and the highest score was 35. Hilfinger?

Calls to mind a Hilfinger quote from my CS61A experience: "Mike Clancy makes the tests; I make them harder."

Re: Tell HN: UC Berkeley's CS61A/B/C are the best courses to learn CS and coding

#65
post #46

Earlier quoted context omitted.

They weren't overly difficult. They were just the same difficulty as the rest of the CS classes at Cal. If you couldn't pass these you wouldn't pass any other CS course.

I don’t think they were the same difficulty at all as some of the upper divs. Classes like CS 170 (Efficient Algorithms), Cs 189 (ML) and CS 182 (Deep Neural Networks) were all significantly more difficult than any 61 series class.

Of course a computer scientist would call out my imprecise language. :)

What I meant was that it's difficulty was in line with expectations for a lower division course given the difficulty of the upper div courses in the same major.

Re: Tell HN: UC Berkeley's CS61A/B/C are the best courses to learn CS and coding

#66
post #46

Earlier quoted context omitted.

They weren't overly difficult. They were just the same difficulty as the rest of the CS classes at Cal. If you couldn't pass these you wouldn't pass any other CS course.

The CS61 series was excessively difficult compared to the upper-level material, and it was absolutely because it was intended to weed people out of the major. I got A's in all of my upper-level CS courses at Cal. Cryptography and compilers were a breeze compared to the CS61 courses. My average grade in the CS61 series was a B-. The semester I took CS61B (data structures), my grade on the final was 21, out of 100. The…

They aren't intended to weed people out through difficulty, they weed people out through honesty. They don't dumb it down or make it easy just because it's the intro course.

It's very clear in the catalog that the course is not for non-majors.

It sounds to me like you learned how to study after you did the 61 series, which is why you did better in upper div (I also did better in upper div for that reason).

Also, 61B was graded on a curve, and you did better than average. The tests were hard so that the people who truly grasped the material could demonstrate that. Profs hate it when a bunch of people get a perfect score, because then they don't know who the best is (and so do the top students). It's done that way not to be hard and make you drop, but so that talent can be truly differentiated.

Re: Tell HN: UC Berkeley's CS61A/B/C are the best courses to learn CS and coding

#68
I agree although at the time these classes seemed so unnecessarily hard.

I was fortunate to take - - CS60A with Stuart Russell - CS60B with John Ousterhout (now Stanford) - CS60C with Paul Hilfinger - CS150 with Randy Katz

I believe (after watching videos online) that CS10 The Beauty and Joy of Computing is also a wonderful intro course to take before the CS61 series.

My daughter took CS61B with Paul Hilfinger and he was so gracious to take a picture with the 3 of us together. I have it here on my office desk!!!

Re: Tell HN: UC Berkeley's CS61A/B/C are the best courses to learn CS and coding

#69
post #62

Earlier quoted context omitted.

The CS61 series was excessively difficult compared to the upper-level material, and it was absolutely because it was intended to weed people out of the major. I got A's in all of my upper-level CS courses at Cal. Cryptography and compilers were a breeze compared to the CS61 courses. My average grade in the CS61 series was a B-. The semester I took CS61B (data structures), my grade on the final was 21, out of 100. The…

The semester I took CS61B (data structures), my grade on the final was 21, out of 100. The average grade was 16, and the highest score was 35. Hilfinger?

Lol yes, it was Hilfinger. He originally tried to flunk the entire class until the administration forced him to use a curve.

Re: Tell HN: UC Berkeley's CS61A/B/C are the best courses to learn CS and coding

#70
post #66

Earlier quoted context omitted.

The CS61 series was excessively difficult compared to the upper-level material, and it was absolutely because it was intended to weed people out of the major. I got A's in all of my upper-level CS courses at Cal. Cryptography and compilers were a breeze compared to the CS61 courses. My average grade in the CS61 series was a B-. The semester I took CS61B (data structures), my grade on the final was 21, out of 100. The…

They aren't intended to weed people out through difficulty, they weed people out through honesty. They don't dumb it down or make it easy just because it's the intro course. It's very clear in the catalog that the course is not for non-majors. It sounds to me like you learned how to study after you did the 61 series, which is why you did better in upper div (I also did better in upper div for that reason). Also, 61B…

1) I took several upper-division classes before I took the 61 series, which I took in my 3rd year. (For my CogSci double-major, I didn't take the pre-req until my final semester, long after I had taken all of the upper-division classes.)

2) It is my understanding that most of the weeding classes (CS61 and their counterparts in other majors) are now graded on a curve, but they weren't back then: your grade was your grade. Hilfinger and others like him are the reason for the change. Quite ironically, several of their colleagues noted at the time that these professors would not have passed their own exams if they hadn't written them. (The story making the rounds back then for the reason that Hilfinger agreed to curve his class: after arguing for a week that students deserved the grades they earned, he took a test prepared by a colleague trying to demonstrate that his test was too difficult, and failed.)

Post reply on HN