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

41–50 of 76 posts

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

#41
post #26

Earlier quoted context omitted.

Yeah it’s important to point out that programming is not software engineering is not computer science. Computer science mostly requires a pencil and a piece of paper. Programming is the act of making a computer do what you’ve written down on that paper. Software engineering is figuring out what do you need the pencil for and once you’ve done it, making sure computers are doing what programmers think they told them to…

> Software engineering is figuring out what do you need the pencil for Could you please elaborate on this? :)

SE is a project management discipline. CS is a logic/math discipline.

SE gets you to think about what the customer needs, what sort of performance or regulatory constraints may be in the loop, how you can design for teams and the future, etc (i.e., do you need a pencil or a pen, and how the factory is set up to make that happen at the rate and in the time required by the customer).

CS is about algorithms and logic, performance optimization, etc. It's the step where you build the machine that cuts the pencil blank, puts the graphite in, adds an eraser... and the conveyers/etc. that transfer the bits to the appropriate place for them to be useful.

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

#42

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…

It sounds to me like the original poster is saying they're the best courses for them because all the resources are available and up-to-date rather than because the content is superior.

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

#43

I learned nothing in 61A — because I was a dumbass kid and didn’t take it seriously. 61B made me feel like I knew how to program. 61C taught me how computers work. A decade or so later 61A is actually the most useful of the 3 courses now that I’m mid career. I might recommend that you take 61b first before the other 2 if you’re just starting out

Agreed on 61A. I took it when it was still just SICP in scheme. I saw much of the rest of the curriculum as a variation on the themes I learned in 61A.

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

#44
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.

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

#45

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…

I would contend that you can't be great at being a software developer or building things quickly to solve problems if you don't understand the computer science taught in these courses.

You might be good, you might get some stuff done, but you won't be great.

I say this as someone who has been around this industry a while. You don't need a fancy degree from a fancy school, but you do need a solid basis in theory. Some of the best developers I know never went to college, but they did learn the theory on their own.

And some really poor developers did go to college, but their college didn't emphasize theory, and so they aren't very good when something happens just outside of what they learned, or a new problem presents itself.

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

#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.

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

#47

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…

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

I'm genuinely curious, why did the course make you quit? Was it the material or the professor, or something else entirely?

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

#48
Had a similar experience. Came in to college with very little programming background and wasn't sure if CS was right for me. Truly enjoyed CS61A and how simply it worked up from primitives to explain more complex concepts over time in an approachable way. The best part was no hand waving and everything was fully explained.

I had previously tried to learn Java as my first language and never could make sense of all of the "public static void main(String[] args)" and handwaving involved to write a simple hello world.

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

#49
post #26

Earlier quoted context omitted.

Yeah it’s important to point out that programming is not software engineering is not computer science. Computer science mostly requires a pencil and a piece of paper. Programming is the act of making a computer do what you’ve written down on that paper. Software engineering is figuring out what do you need the pencil for and once you’ve done it, making sure computers are doing what programmers think they told them to…

> Software engineering is figuring out what do you need the pencil for Could you please elaborate on this? :)

Programming is like 20% of senior+ software engineer time, on a good day. The rest is spent all sorts of communicating - emails, presentations, specs, docs, figuring out incidents, in general trying to make sure the team is building what should be built - or efforts which support the business and/or the team, like fixing or optimising CI/CD, monitoring, hiring, reviewing backlogs (note plural), mentoring juniors, helping out sales or support with customer issues, working with support of your service providers, etc. This is especially true in big orgs with many teams, in smaller ones you might see a bigger share of pure coding-related work depending on a week... or coding overtime because there simply isn't enough hours in a day to open the IDE normally and these guys still like to code something every now and then.

Computer sciency stuff is maybe 1% on a good year (obviously there will be exceptions depending on the products you're building).

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

#50

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.

I personally had a blast and absolutely incredible time in both CS 61A and 61B. That they're "weeder" classes can be considered true only from the perspective that they're challenging classes but note that almost all CS/Math classes in Berkeley are highly challenging and these weren't outliers at all.

Before coming to college I had tons of programming experience and two interships. I wrote websites, backends, real life applications shipped to customers, school club websites, I even taught C++ in my high school's IEEE chapter. CS 61A completely changed my perspective on how to think about code, I found it so valuable that I could graduate just with 61A, study everything else (algorithms, data structures etc) myself and be fine with it (this is likely an exaggeration of course, there is some value to finishing a traditional CS curriculum).

Post reply on HN