cmu courses
reviews of each of my semesters at Carnegie Mellon University.
My page is inspired by Abigale Kim’s courses page.
Typical disclaimer that opinions are mine and do not represent the opinions of my employer/college.
Spring 2026
03-363 System’s Neuroscience (w/ Eric Yttri)
10-301 Into to ML (w/ Matt Gormley & Pat Virtue)
15-210 Parallel & Seq Data Structure & Algorithms (w/ Daniel Anderson & Danny Sleator)
15-494 Cognitive Robitics (w/ Dave Touretzky)
33-104 Experimental Physics (w/ Sufei Shi)
98-317 Hype for Types (w/ Samson Rozansky & Shira Rubin)
Reflection
Coming in May 2026
Fall 2025
15-213 Intro to Computer Systems (w/ Phillip Gibbons & Brian Railing)
15-259 Probability & Computing (w/ Feras Saad & Weina Wang)
17-363 Programming Language Pragmatics (w/ Jonathan Aldrich)
76-270 Writing for the Professions (w/ Alan Kohler)
85-170 Foundations of Brain and Behavior (w/ Jonathan Tsay)
Reflection
- 15-213 is a great class that really surveys different aspects of systems so you’re bound to eventually find something you like. I personally enjoyed datalab and bomblab, but each person finds their favorite. Be prepared to write organized, modular, documented code as you’re working from the beginning or else expect to spend many hours debugging your code. I found most labs can actually be done much faster than expected if you’re organized and methodological.
- 15-259 was pretty tough at first. The class assumes you have a good handle of all prerequisite knowledge, so make sure to brush up on calculus and series. Also, the textbook by Mor is such an asset, make sure you use it and read every chapter assigned to each class even if you showed up to lecture that day. I wish there was more of an emphasis on the “computing” part of PnC, but I still realy enjoyed this class.
- 17-363 was a really nice class. The professor is such a nice guy, I felt bad for missing some of his lectures. The content switches back and forth between formal proofs and practically implementing a working compiler. I learned a lot in this class and didn’t feel like it was too intense as long as you pay attention in lecture.
- 76-270 was a chill but still pretty educational class. The professor is really an amazing teacher, kind, and takes feedback from students seriously. Try to enjoy this class first and foremost, it’s not supposed to eat much of your time.
- 85-170 FOBB was so amazing!!! JT is an amazing teacher and he really cares for each one of his students. He uses demos to help solidify understanding but also memory of the topics. A good strategy for this course is to show up every lecture, give your full attention (don’t take heavy notes), and ask questions. Ask clarifying questions when needed but also ask more complicated questions about implications of what you learned. This is a really fun and fascinating course, so try to make the most of it, especially since it’s not much work at all.
Spring 2025
21-266 Vector Calc for CS (w/ Clive Newstead)
15-251 Great Ideas in Theoretical CS (w/ Anil Ada and Feras Saad)
15-150 Principles of Functional Programming (w/ Dilsun Kaynar)
15-386 Neural Computation (w/ Tai-Sing Lee)
79-281 Intro to Religion (w/ Alexandra Garnhart-Bushakra)
Reflection
- Before starting 21-266, I heard some bad things about it. I was told it was going to be unreasonably hard and that the professor is out to get you. Having finished the class, I strongly disagree. We were pushed to not just solve problems following algorithms we learned but to actually think about things geometrically. It felt like a significant portion of the learning was done through HWs, which I for one really appreciate. That said, I took 3D calc in HS (without any linear algebra which is extensively used in 21-266), which could have helped me see through the struggles.
- My favorite class this year was 15-251. It was as if one took all the good parts of Concepts and put it into a class. We were exposed to a wide range of different “great theoretical ideas” and I found each lecture to be AMAZING and well done. Too much to be said, just take the class!
- I had a rough relationship with 15-150. The professor is really nice and wonderful but I regretfully couldn’t bring myself to pay attention in class. The class generally felt like I was being walked through documentation and not actually fundamentally teaching me new skills, that said, I probably did work on my existing skills and perhaps new ones, but I certainly didn’t feel it. In addition, I felt like the grading was often too pedantic and unreliable which also affected my relationship with this class. I did well, however.
- 15-386 was certainly a very interesting class and if you’re interested in neuroscience and computer science, I highly recommend. At many times, I found the professor to be unengaging, however he’s very nice and very open to feedback (he incorporated my feedback into his lessons which I found very useful). The HWs will often focus on a specific lecture in the past few weeks but the other lectures are a) very interesting to learn about from a biological and cs pov and b) will be useful for the exams. He made it easy to do well in the class and had many chances to get extra credit through further exploring and experimenting with the ideas learned in class which was really fun and pushed me to think about how we can test these tools to better understand them. The textbook we used, Trappenberg, was also well made and explains many more topics if you’re interested in this field.
- I’m really interested in religions and so 79-281 made sense to take as a gen ed. The content was all very interesting and thought provoking, though I often felt lectured without the ability to ask questions in class due to a number of reasons (not being noticed and not finding a good time, for example). I still really enjoyed the class and found the essays fun to write.
Fall 2024
21-241 Matrices and Linear Transformations (w/ Jonathan Simone)
15-151 Concepts / Mathematical Foundations for CS (w/ John Mackey)
15-122 Principles of Imperative Computation (w/ Anne Kohlbrenner)
76-101 Interp. & Argument (w/ Chad Szalkowski-Ference)
07-131 Great Practical Ideas in CS 07-128 Freshman Immigration.
Reflection
- I had an amazing time in 21-241. Dr. Simone is a fantastic teacher and explains things very well. This class also had a final project component where we made something using ideas we learned in class. I made a project about visualizing 4D shapes in 2D (on screens) - it was fun!.
- 15-151 was my favorite class this semester. Dr. Mackey is a beyond amazing teacher and he really cares about each student. This class revolved around proofs which was a bit new to me but I absolutely enjoyed it immensely.
- I found the programming HWs in 15-122 fun and useful even if they seemed long. The weekly checkin/quiz system was also very useful and I found myself less stressed over the semester and didn’t need to study as much for the final. The class taught me principles that are really important, but nothing was really conceptually hard. That said, the class is still pretty hard since there’s a lot to do.
- 76-101 wasn’t a class that took a lot of my time. The professor was nice and very engaging but I don’t feel that I walked away from the class having learned anything, just more practice with writing.
- 07-131 had some content that I found very useful, but a lot of it was something I already knew. I would say that since this class takes very little commitment, if there’s a topic that you don’t know or want a refresher on, it doesn’t hurt to throw this into your schedule.
- 07-128 is the SCS freshman immigration course. There is not much to say here.