Mathematics and Computer Science
18.404 Theory of Computation
This is a great class! Prof. Sipser is a very good lecturer and the class is generally well-structured. The problem sets have a good range of difficulty. Honestly this was probably the most well-organized and well-taught class I've ever taken and I can only think of minor negatives. 10/10 would recommend.
18.410/6.046 Design and Analysis of Algorithms
A useful and interesting subject, essential to most further subjects related to algorithms, so the content is standard fare. Generally well taught and the instructors make plenty of notes and other reference material available (although the instructors do change from term to term, I believe; I found Profs. Devadas and Williams to be pretty good). More theoretically/mathematically advanced than its precursor, 6.006, but involves less ingenuity (less "design a data structure such that…") and no coding. I've heard that those who take 18.410 generally find it easier than those who take 6.046.
18.510 Mathematical Logic and Set Theory
A pretty good class: well-organized, good balance of breadth and depth, enjoyable and interesting on the whole. Prof. Cohn is a good lecturer and cares about his students. I can't think of any negatives, except that I fell asleep during lecture on a couple occasions (which is arguably mostly my own fault), and that the subject matter won't be relevant to most people's future work/study at all, being described by Cohn himself as "somewhat arcane".
18.600 Probability and Random Variables
A good foundational subject in probability. Slow at first, but in the latter half, touched on probability bounds, moment generating functions, and information theory, which were all interesting. I feel prepared to take more advanced subjects that deal with probability, my only wish is that this subject had more probability puzzles/problem-solving practice.
18.701 Algebra I
I enjoyed this subject and it was more challenging than I thought it would be. Prof. Artin has helpful insights in class to accompany his textbook of notes—while I hear that lectures used to be better in the past, I still gained a lot from going to them. If you are considering this course, please note that if you haven't seen proof-based math before or taken a math course that involves significant original problem solving, this class will be very difficult, so find a friend who can help you. This fact is in unfortunate contrast to the fact that the class is effectively an entry point for most pure math majors.
18.702 Algebra II
Disclaimer: subject disrupted by COVID-19. Personally even more enjoyable than 18.701 and I started to actually like algebra. In addition to building upon the content of 18.701, this subject is one level of abstraction higher than it, and the psets are difficult; but I finally got the good sense to find regular pset buddies and make use of office hours. Prof. Shankar is very kind and helpful and cares about his students!
18.783 Elliptic Curves
I took this class without any previous classes in algebra or number theory and oh boy, was that a struggle. Don't do that unless you're looking for a struggle (which I'll admit I was). It was a fun time learning to swim in the deep end of the pool for me, a Sahara desert tribesman, and the content is actually very interesting.
6.050 Information, Entropy, and Computation
The facts about this class are simultaneously positive and negative, much as the qubits that are Prof. Lloyd's lifeblood are a superposition of on and off. The class covers a wide range of related topics in information theory, coding theory, thermodynamics, quantum computation, etc. but assumes that you have an inkling of the topic already (you've been in the same room as someone talking about it, for example). Also, Prof. Lloyd spends a significant amount of class time in stories (mostly related to the subject matter, often personal). These two things together mean that the class conveys a lot of culture about the topics, i.e. an attitude towards thinking about them, along with the actual content.
6.818 Dynamic Computer Language Engineering
The centerpiece of this subject is a challenging, semester-long group project to build a VM-based compiler and interpreter for a dynamic language. Approximately the first half of the subject covers basic principles of virtual machines for dynamic languages, and the second half covers common optimizations (garbage collection strategies, type and value analyses, code generation, miscellaneous hacks). Each group has to implement optimizations for their interpreter based on what they think is worth the computational overhead and the investment of human effort. If you enjoy hacking at compilers-y things, optimizing things, want to spend a lot of time wrestling with a compiler you've built yourself, and learn about real-world compilers through real hands-on experience, this class is for you. The lectures are good but not the main point.
6.905 Large-Scale Symbolic Systems
See the subject homepage for an overview of the content. I think the subject did significantly change the way I program and think about software (for the better, I would hope), which I did not expect going in, and even informed my personal research interests. Prof. Sussman is very passionate about what he teaches and believes in, not only about software design but also about adjacent topics that may come up in class, including free software, programming paradigms, modern trends in computer science research, etc. Take the class as much to experience him as to learn the content! But also if you're interested in becoming a better programmer.
Linguistics and Cognitive Science
24.903 Semantics and Pragmatics
A fairly standard subject in linguistic semantics. When I took it with Prof. Elliott, it assumed very little background in math/CS, so I found the treatment of elementary logic, truth tables, set theory, compositionality of syntax, etc. quite slow. But further topics were interesting.
24.904 Language Acquisition
Disclaimer: subject disrupted by COVID-19. Looks at how children acquire their (first) language, from phonology to pragmatics. A lot of interesting readings from the literature that give you a nice overview of where the field is currently at! And whichever sub-topic you like the most, you have the chance to dive into it in the final project, which is to make an original research proposal (5-page paper and class presentation). Prof. Aravind is a wonderful instructor and was happy to respond in-depth to any and all questions, and generally made the class a fun experience.
9.13 The Human Brain
The class presents a broad functional-level study of the brain. (Not to be confused with psychology, which is the behavioral study of humans that attempts to build models of our social and personal states of being, functional-level cognitive science attempts to explain how exactly the brain performs the computations that let us see, hear, move, reason, etc. Note that this class does not talk much about memory, language, or consciousness.) The weekly readings are recent cognitive science publications that are pretty interesting and helped me feel more confident about reading scientific literature in general. The class also gives an overview of physical methods of data collection and experimentation, like fMRI and intracranial stimulation, and also an overview of what sorts of statistical analyses produce the results presented in class. I liked the focus on experimental design that encouraged critical thinking about competing hypotheses for the same data.
9.39 Language in the Mind and Brain
9.66 Computational Cognitive Science
An exciting subject. Prof. Tenenbaum introduces the fundamental concepts of his field—probabilistic programming and Bayesian inference—and demonstrates their successes over current statistical approaches to modeling cognitive functions in interesting and engaging demos. The bulk of the semester is an extensive literature review of various applications of these techniques. At the end, Prof. Tenenbaum talked about the broader context of learning systems, and informed us that the CoCoSci lab (led by him) is very open to UROPs in fields branching off what's covered in class.
6.805 Foundations of Information Policy
A serious contender for the best CS subject I've taken at MIT, no exaggeration! The professors are extremely knowledgeable and bring a lot of their extensive policy & advocacy experience to the class, which really sets it apart. They've been teaching this class since the 90s, so the topics change every year to stay a few years ahead of current developments, but core material includes legal principles (US Constitution, court cases, international law) and their interaction with technical architecture (e.g. machine learning fairness). Has a hefty (but valuable) final project and requires a lot of LARPing from students in class. See the course website for more.
7.012 Introductory Biology
I'm very glad I took this class! I'd never liked (or understood the point of) biology in high school, and I took this just because it was a requirement and I might as well be done with it, but now I really appreciate how interesting biology is and am not averse to taking more course 7 subjects in the future (maybe 6.049/7.33 Evolutionary Biology?). Prof. Lander is one of the best lecturers I've even seen: he's compelling and approachable and clearly extremely good at what he does. 10/10 would strongly recommend.
21L.005 Introduction to Drama
Disclaimer: subject disrupted by COVID-19. A fun, small class. My main takeaway was being introduced to how to think about drama: as a performance of signs (a 'semiotic' performance), as a space that is simultaneously real (because the actors, the props, everything is really there) and surreal (because they are on a stage and therefore set apart from reality). The class surveys a wide range of drama from the ancient Greek period to contemporary plays, and has short and long writing assignments (it's a CI-H) for literary/dramatic analyses of some plays along with class discussions. Does not involve acting or playwriting.
21M.080 Introduction to Music Technology
This class was a lot of fun! Lectures were for the most part informative and engaging, and the assignments and the final project were enjoyable and really helped me understand hands-on the stuff we talked about in class. I was a little annoyed that I had to run a Windows VM for a lot of classwork and buy more than $100 of software+hardware but I think it was worth it. In my opinion, the topics of this class—acoustics, audio production, electronic synthesis, etc.—fit very well into the "essential MIT attitude" of connecting practical engineering to the humanities.
21M.361 Electronic Music Composition I
21M.716 Play Translation and Cultural Transmission
A good 'induction' into the world of literary translation. Has plenty of readings in the first half, translations as well as translation theory essays, and the second half is mostly about individual translation projects. Students translate a scene from a play of their choice and put on a staged reading as a final project.
24.215 Topics in Philosophy of Science
An interesting subject, presenting its content in ways/frames that I hadn't considered before, albeit a tad slow-paced. There are four units: thermodynamics (focusing on entropy, the second law, and various associated philosophical considerations), causation, evolution (a discussion of what the theory of evolution actually means, evolutionary mechanisms, whether biological artifacts have a "purpose", etc.), and a general conclusion talking about what Science aims to achieve and can actually achieve. Informative on the whole. One major negative is that Prof. Skow completely avoided discussing Bayes' Theorem and its applications to what we were looking at in class, because it was "too much math" (very relevant math though!), but it turned out okay.
HLS 2042 Copyright
I cross-registered at Harvard Law School to take this subject with Prof. Terry Fisher—one of the best courseroad decisions I've made at MIT! It was certainly intimidating to be in a class full of second- and third-year law school students, but (for me) also invigorating and full of fresh perspectives that I would have never gotten in an MIT class. Further, copyright law turned out to be especially interesting to me because of the increasingly important connections to technology, digital media, software, and questions of ownership in a world of algorithmically-generated everything. As one might expect, the expectations of students are very different from a typical MIT class: attending & participating in lectures is essential, but there are no assignments during the term, because the entire grade is based on a long-answer open-book final exam. I highly recommend this subject if you feel up to it (some previous experience with legal things is helpful, e.g. 6.805 described elsewhere on this page) and would generally recommend cross-registering at Harvard Law School at least once if there's a subject area that catches your eye.