HN Academy

The best online courses of Hacker News.

Hacker News Comments on
Combinatorics and Probability

Coursera · University of California San Diego · 1 HN comments

HN Academy has aggregated all Hacker News stories and comments that mention Coursera's "Combinatorics and Probability" from University of California San Diego.
Course Description

Counting is one of the basic mathematically related tasks we encounter on a day to day basis. The main question here is the following. If we need to count something, can we do anything better than just counting all objects one by one? Do we need to create a list of all phone numbers to ensure that there are enough phone numbers for everyone? Is there a way to tell that our algorithm will run in a reasonable time before implementing and actually running it? All these questions are addressed by a mathematical field called Combinatorics.

In this course we discuss most standard combinatorial settings that can help to answer questions of this type. We will especially concentrate on developing the ability to distinguish these settings in real life and algorithmic problems. This will help the learner to actually implement new knowledge. Apart from that we will discuss recursive technique for counting that is important for algorithmic implementations.

One of the main `consumers’ of Combinatorics is Probability Theory. This area is connected with numerous sides of life, on one hand being an important concept in everyday life and on the other hand being an indispensable tool in such modern and important fields as Statistics and Machine Learning. In this course we will concentrate on providing the working knowledge of basics of probability and a good intuition in this area. The practice shows that such an intuition is not easy to develop.

In the end of the course we will create a program that successfully plays a tricky and very counterintuitive dice game.

As prerequisites we assume only basic math (e.g., we expect you to know what is a square or how to add fractions), basic programming in python (functions, loops, recursion), common sense and curiosity. Our intended audience are all people that work or plan to work in IT, starting from motivated high school students.

Do you have technical problems? Write to us: [email protected]

HN Academy Rankings
Provider Info
This course is offered by University of California San Diego on the Coursera platform.
HN Academy may receive a referral commission when you make purchases on sites after clicking through links on this page. Most courses are available for free with the option to purchase a completion certificate.
See also: all Reddit discussions that mention this course at

Hacker News Stories and Comments

All the comments and stories posted to Hacker News that reference this url.
So I actually went ahead and decided to build "curriculum" that I would be happy to study, instead of trying to take potshots at the idea. For reference, I'm a to-graduate-undergrad who's studied a pretty theory CS-heavy course curriculum. I work [in terms of research] in compilers, formal verification, and dabble with some NLP on the side. I personally find knowing pure math, theory CS, and algorithms/data structures (the ones that are derided often here on HN as "leetcode") to be an _insane_ force multiplier.

If I had to recommend online courses, here are the ones I would recommend. Unfortunately, one does not get access to exercises and folks who are willing to verify your work. Math.stackexchange is unfortunately far more active than cstheory.stackexchange. I don't really know of an effective way to "bootstrap" this, except for implementing a lot of the things that show up in computer science.

I'm collecting links of courses that have videos, lecture notes, and exercises, which I would be happy to learn from [or have learnt from in the past].

Theory courses that are must-know:

- Linear algebra:

- Basic Combinatorics:

- Introduction to Algorithms by Erik Demaine:

- OR, Introduction to Algorithms by Robert Sedgewick:

- Complexity theory/theory of computation:

- Structure and interpretation of computer programs:

Computer engineering courses that are must-know: I do not immediate know of good online courses, so I list the topics below

- Operating systems:

- Networks

- Computer graphics [Is a great applied course to see linear algebra in action]

- Distributed systems

- Compilers

- """Machine learning""": Scarce quotes since there's a divide between old-school machine learning and newfangled deep learning. Is useful to know ideas from both.

Advanced good-to-haves:

- Advanced Data structures:

- Graph theory:

- Abstract Algebra:

- Nand2Tetris, where one builds a computer "from scratch":

- As much math, physics, and computer science as can be learnt!

Is Linear Algebra that useful to the typical working programmer? Or is it perhaps only particularly useful for machine learning and similar?

To me, combinatorics, probability and statistics are much more used day to day.

HN Academy is an independent project and is not operated by Y Combinator, Coursera, edX, or any of the universities and other institutions providing courses.
~ yaj@
;laksdfhjdhksalkfj more things ~ Privacy Policy ~
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.