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

31–40 of 76 posts

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

#32
I did not appreciate it at the time but CS 61 abc absolutely transformed by foundational understanding of computer science and the concepts they push are absolutely and non-negotiably important for someone to learn.

My only recommendation is to learn programming in a more useful and productive language like C++, as the thing you do not want to do in CS61A is to simultaneously learn to program and learn the concepts in those courses. The right way to think about it is those courses are trying to make you go “ohh that’s how things actually work”.

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

#33
post #19
post #3

What about calc 1/2/3 ? I use those skills all the time in optimization work. Linear algebra? These are important skills that self teachers often forget

Try these: An interactive website https://seeing-theory.brown.edu that takes you through some of the most critical probabilities and statistics concepts. Statistics 110: Probability If you want a more advanced overview of Probabilities and Statistics, this course from Harvard University is an excellent introduction: https://www.youtube.com/playlist?list=PL2SOU6wwxB0uwwH80KTQ6... This is MIT Course 18.06, taught by Pr…

Is Strang that guy that just retired?

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

#35
Different things workout for different people. I was overwhelmed by so many ways to do things in Python and everybody teaching their own favourite way of doing things. Similarly, all I was learning was the syntax and no problem solving skills.

Then I cam across the book How to Design Programs aka HTDP. I was skeptical at first. But I eventually started and worked through the second edition of the book available freely at https://www.htdp.org .

It was so beautiful. The teaching languages and writing examples before writing code. It made me really understand programming.

Now I can pick up any language (not that I become a language expert overnight) in a short time. I only need to map the concepts to this new language. And that's that. I can even pattern match my ideas from higher order functions to imperative looping constructs.

I have another book in to TDR list. It is Norvig's Paradigms of Artificial Intelligence Programming.

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

#37
I was a CS61A lecturer for 3 semesters. I thought that we covered very valuable content, but also did not think that it was appropriate for new programmers. I encouraged students to enroll in a true intro class, like CS10, before embarking on the 61A journey.

Here’s my post about how to audit 61A : http://blog.pamelafox.org/2022/07/how-to-audit-cs61a.html?m=...

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

#38

CS61A was great when they taught via LISP (Scheme). Have they switched to Python? Probably still good but would be nice to have LISP.

It now starts in Python and ends with Scheme (building a Scheme interpreter in Python).

Source: I lectured 61A in 2021

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

#39
post #26

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…

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? :)

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

#40
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? :)

I would assume they mean gathering requirements, aligning with other team goals, etc. before picking up the pencil. Which I agree, is a huge part of “engineering” vs. “programming”
Post reply on HN