Hacker Courses The online courses programmers keep recommending, ranked from 20 years of public forum comments.
i
CS 70 Discrete Mathematics and Probability Theory
Image: eecs70.org
#358 overall

CS 70 Discrete Mathematics and Probability Theory

UC Berkeley

1 recommender · 3 threads · recommended in 2 years, 2017–2020 · score 1.4

Go to course ↗

CS 70 is UC Berkeley's lower-division course on discrete mathematics and probability theory, covering logic, proofs, induction, number theory, counting, and probability as used in computer science. Commenters point to its lecture notes as the main course material.

Commenters say the course has a wonderful set of notes that should be a book, and that the notes alone are enough to learn from.

Mathematicsintermediatefreeself-paced text#discrete math#probability#proofs#berkeley#lecture notes

Recommendations by year

20062026

What commenters said (4)

  1. Strongly recommendsCalChris2020in “Why are Soviet math textbooks so hardcore in comparison to US textbooks? (2017)”

    (As you know) most of the lower div EECS courses inherit slide decks and the coverage is set by the department. CS70 has a wonderful set of notes which should be a book. I regularly go through the CS61C, CS152 and CS252 decks; those are great Berkeley classes. CS162 has a good set and then Kubi has his which even better. Hilfinger's CS61A notes were quite good. The deck the EE40 prof used was based on a previous semester and it was pretty good. It's just that the class is an insane amount of material and work.

    There was an intent behind the work. All of the lower div classes are hard with a massive amount of content. But you can show up a Berkeley from a substandard high school on the wrong side of the tracks and blow it out of the water; a buddy of mine was like that and went to Columbia for his PhD. It's very simple. You just have to work. Immediately. Day one. I don't think Berkeley EECS rewards creativity. Indeed I think EECS punishes creativity. But EECS teaches its students to work their asses off, regardless of whether they came from Lick Wilmerding or Skyline.

    Go Bears.

  2. RecommendsCalChris2017in “CS61A Structure and Interpretation of Computer Programs”

    I strongly prefer Patterson and Hennessy Computer Organization and Design to their Computer Architecture which I really don't like; if I do look something up in CA, it's in an old edition. The Dragon Book 2nd ed is awesome. We didn't have a book for 61B. I didn't like the OS book whatever it was. Norvig + Russell is pretty darned good. The notes for CS 70 are awesome as are the CS 161 notes.

    If Kubi is teaching just take the course.

  3. RecommendsCalChris2017in “Ask HN: Which Berkeley Courses Should I Archive?”

    Dunno if CS 161, Computer Security, is available but it's a great course. Wagner or Weaver both have their points.

    CS 70 should make the list but the lecture notes are enough.

    Strongly prefer Kubi for OS or pretty much anything.

  4. MentionsjoshAg2011in “List of best free online learning sites”

    Course material (lecture notes, projects, some have links to videos of lecture, &c). for every undergrad berkeley cs course is available for free if you know the website!

    http://inst.eecs.berkeley.edu/classes-eecs.html has links to all course websites and archives.

    you can look at what courses descriptions here: http://sis.berkeley.edu/catalog/gcc_list_crse_req?p_dept_nam...

    the main courses are:

    /cs61[abc]/ # intro cs

    /cs70/ # discrete math

    /ee122/ # networking with a cs bent in fall and an ee bent in spring

    /cs160/ # ui

    /cs161/ # security

    /cs162/ # systems and os (not recommended right now; the class is going through a restructuring and completely sucks)

    /cs164/ # compilers

    /cs169/ # software engineering

    /cs170/ # algorithms, this class usually doesn't have a website aside from homework assignments; i'd recommend just buying the textbook since its only $30 and the course very closely follows the entire text (save for the quantum chapter at the end)

    /cs172/ # Computability and Complexity

    /cs174/ # Combinatorics and Discrete Probability

    /cs184/ # graphics

    /cs186/ # databases

    /cs188/ # AI

    Lower division classes are numbered between 0 and 100, upper division classes are 100 to 199, and grad classes are 200 and up. A tens digit above 4 indicates a cs class, and a tens digit below five indicates an ee class.

    To get to the archive for a class without having to navigate to the first link first, go to inst.eecs.berkeley.edu/~<class>/archives if you want to go to the most recent website, just remove the /archives.

    EG, cs61's website archive is at http://inst.eecs.berkeley.edu/~cs61a/archives and http://inst.eecs.berkeley.edu/~cs61a will redirect to the most recent course's website.

Related courses

Keyboard

In the course grid
←↑→↓
Move between courses
Home End
Start / end of row (with Ctrl: first / last)
PgUp PgDn
Jump several rows
Enter
Open course
S
Save / unsave course
1–5
Best, Trending, Hidden gems, Evergreen, Saved
[ ]
Previous / next topic
On a course page
← →
Previous / next course in your list
S
Save / unsave
O
Open the course website
Esc
Back to the grid
Everywhere
/
Search
T
Light / dark theme
?
This help