Hacker News Comments on
University of California San Diego
Combinatorics and Probability
Hacker News Stories and CommentsAll 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: https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra...
- Basic Combinatorics: https://www.coursera.org/learn/combinatorics#syllabus
- Introduction to Algorithms by Erik Demaine: http://courses.csail.mit.edu/6.006/fall11/
- OR, Introduction to Algorithms by Robert Sedgewick: https://www.extension.harvard.edu/open-learning-initiative/a...
- Complexity theory/theory of computation: https://web.cs.ucdavis.edu/~rogaway/classes/120/spring14/
- Structure and interpretation of computer programs: https://ocw.mit.edu/courses/electrical-engineering-and-compu...
Computer engineering courses that are must-know: I do not immediate know of good online courses, so I list the topics below
- Operating systems:
- Computer graphics [Is a great applied course to see linear algebra in action]
- Distributed systems
- """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 Data structures: http://courses.csail.mit.edu/6.851/fall17/
- Graph theory: https://www.coursera.org/learn/graphs#syllabus
- Abstract Algebra: https://www.extension.harvard.edu/open-learning-initiative/a...
- Nand2Tetris, where one builds a computer "from scratch": https://www.nand2tetris.org/software
- As much math, physics, and computer science as can be learnt!
⬐ emmelaichIs 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.