Long/Short: Courses at Stanford
My recommendations and condemnations of courses I took at Stanford
I really liked my time at Stanford. If you're lucky to be a student there right now, I don’t think your coursework should be your main focus, but I do have some course recommendations that I liked and disliked.
Carta (Stanford’s course review system) is not economically optimal: I think course reviews should be ranked by conviction. These are the three most favorite and least favorite courses that I have high conviction in and (imo) differentiated opinions about. I would love to know if others have thoughts: let’s get in touch and start an argument.
Longs
STATS334: Mathematics of Gambling (Autumn 2020)
I had the absolute pleasure of learning from Professor Persi Diaconis in this course. He has a rare perspective on probability, simplifying the completely unexpected to games like flipping coins.
He intersperses lecture with his famously entertaining exploits. In short, his backstory is larger-than-life: running away from home to become a magician at the circus, getting interested in probability and self-teaching from Feller’s An Introduction to Probability Theory and Its Applications, before realizing he needed to learn calculus and went back to school up to the PhD program at Harvard. I am biased of course, since this is no less than role model material for me.
Perhaps his handwriting is a little hard to read, but he definitely improved it throughout the quarter. All said, this is my favorite course at Stanford.
STATS305A: Applied Statistics I (Autumn 2020)
Professor Trevor Hastie, of Elements of Statistical Learning fame, taught this course to the first year statistics PhDs (and me). Linear regression is the bread and butter of data analysis, and this course gives it the respect it deserves. I started to use the word “orthogonal” outside of the linear algebraic context after this course (to mean idea/thing X is uncorrelated or independent from whatever can be constructed from ideas/things Y, Z, etc.).
CS224N: Natural Language Processing (Winter 2020)
To me, this is the exemplar of a course that keeps its material on the leading edge. NLP has a fragmented history and recent exponential advances, but this course handily united the threads into a story. For example, the teaching team brought Jacob Devlin (the first author of the seminal BERT paper) to guest lecture.
Honorable Mentions
PE33, Beginning Golf: Not differentiated here, but twenty sessions of range time for $100 is a steal.
CS229M, Machine Learning Theory: This was a challenging course, but Professor Tengyu Ma is kind and patient rising star that really cares about your learning.
Less challenging surely, but also see Professor Emma Brunskill’s CS234, Reinforcement Learning.
MATH104, Applied Matrix Theory: A paradoxical name for a course, but I was lucky to be taught by the famed Professor Emmanuel Candès, who brought vibrant color into foundational linear algebra.
E40M, An Intro to Making: An “introduction to a major (EE)” done right, preserving enough depth to color in the frontiers of a field.
ESF6, The Wind of Freedom: I borrowed the only required book I couldn’t find on Libgen from my ESF6 classmate now girlfriend.
Shorts
CS246: Mining Massive Datasets (Winter 2022)
Looking for an easy course with a fancy name to barely cover your AI depth? Well THIS is the course for you! In fact if you've taken more than two (2) courses in AI other than this one, you will only waste your time here!
The homeworks and exams are complete busywork and recycled from previous years and others of Professor Jure Leskovec's courses, a practice that is
Explicitly discouraged by Stanford’s Honor Code, and
Shamelessly lazy: half the problems are copy pasted from CS224W (Machine Learning on Graphs), another one of Prof. Leskovec’s courses. I suspect this is why, departing from every other AI course at Stanford, no solutions are released for either class.
Colabs are completely unnecessary, and again speaking to the laziness of the teaching team, they’re all just rehashed examples from Spark’s MLlib documentation!
Lectures treat the content at a trivial and unsatisfying level, really just a potpourri of Medium data science posts. I even argue that Towards Data Science is even more satisfying than this.
Although the course is organized okay, this is THE WORSE COURSE I’ve taken at Stanford. It is questionable that Stanford sells this course to its students, let alone the outside world.
EE263: Linear Dynamical Systems (Autumn 2020)
Do you have sunk cost in EE103 or ENGR108? Maybe this course could be useful. Have you taken any linear algebra course in MATH above MATH51, especially MATH104? Skip this course and don't look back.
This course neuters linear algebra. Take the pseudoinverse, taught in this course only in its full rank exception. You don’t even need a grasp of the four fundamental subspaces to appreciate the beauty of the pseudoinverse. In fact, this course spent three of ten weeks constructing the SVD, without even a footnote that we can compute the pseudoinverse for any matrix using the SVD (yes, the pseudoinverse DOES exist for every matrix, contrary to what EE263 may have you believe). Ultimately this blocks the full potential and beauty in linear algebra.
Beyond pedagogy, this course was a waste of time. The homeworks are conceptually trivial, but the programming and implementation are mechanical and time consuming. The exams even involve (involved!) programming (sir, this is a math class) and because of their take home format, they expect you to spend one full day of your life implementing their silly trivialities.
Everything felt designed to be as repetitive and mind numbing as possible. I admit that I bought into the hysteria that you need to review linear algebra and differential equations before EE364A (Convex Optimization—a consensus recommendation for me). Instead I wasted 8 hours a week on something I could have done myself in an afternoon.
CS229: Machine Learning (Spring 2020)
This is still a must-take foundational course in the same way MATH51 is a must-take foundational course: you’re just going through the motions. However, compared to its eye-opening reputation, this was a disappointment.
The reputation at Stanford is CS229 is a “theoretical” course. Here “theoretical” just means are you able to take the derivative of a likelihood function with respect to a vector? How about a matrix??? Problem sets are no more than calculus and algebra homework.
If you already have knowledge of estimation and linear algebra up to STATS200 and MATH104, it’s too late and this course will be too bland—skip it.

