Here's a complete list of the courses I have credit for. I've ordered them by course number and added a ranking (1-10). Keep in my that some of these might no longer exist or have been renamed/renumbered (*ahem* intro). I've also put a brief synopsis of each course down at the bottom, in case you're curious what the class is or why I rated it the way I did. These are actually pretty informative since I have some notes about professors and occasional updates about what has changed since I took it.
| Number | Course | Instructor(s) | Units | Semester | Rating |
| 15-127 | Introduction to Programming and Computer Science | Stehlik, Roberts | 10 | 1 | 9 |
| 15-151 | Mathematical Foundations of Computer Science | Clarke, Sutner | 9 | 1 | 5 |
| 15-211 | Fundamental Structures in Computer Science 1 | Morris, Thrun | 12 | 2 | 7 |
| 15-212 | Principles of Programming | Crary, Lafferty | 12 | 3 | 8 |
| 15-213 | Intro to Computer Systems | Bryant, O'Hallaron | 12 | 3 | 9 |
| 15-251 | Great Theoretical Ideas in Computer Science | Rudich | 12 | 2 | 10 |
| 15-381 | Artificial Intelligence | Carbonell, Moore | 9 | 4 | 8 |
| 15-399 | Constructive Logic | Awodey | 9 | 5 | 3 |
| 15-412 | Operating Systems | Kesden | 18 | 6 | 9 |
| 15-441 | Computer Networks | Steenkiste, Harchol-Balter | 12 | 6 | 9 |
| 15-451 | Algorithms: Design and Analysis | A. Blum, Sutner | 9 | 5 | 6 |
| 15-462 | Computer Graphics I | Welling | 12 | 4 | 9 |
| 15-493 | Video Game Programming | Kuffner | 12 | 7 | 7 |
| 15-539 | Independant Study in CS Pedagogy | (Rudich) | 12 | 4 | 10 |
| 15-599 | Undergraduate Research Thesis | (Steenkiste) | 18 | 7-8 | 9 |
| 15-781 | Machine Learning | Mitchell, Moore | 12 | 7 | 7 |
| 16-199 | Building the Future | Atkeson | 4 | 4 | 9 |
| 16-362 | Mobile Robot Programming | Nourbakhsh | 12 | 5 | 10 |
| 18-100 | Intro to Electrical and Computer Engineering | Sullivan | 12 | 3 | 6 |
| 19-601 | Information Warfare | Morel | 12 | 8 | 7 |
| 21-115 | Differential Calculus (AP credit) | - | 5 | - | - |
| 21-116 | Integral Calculus (AP credit) | - | 5 | - | - |
| 21-117 | Integration and Differential Equations | Tolle | 5 | 1 | 5 |
| 21-118 | Calculus of Approxomation | Tolle | 5 | 1 | 5 |
| 21-241 | Matrix Algebra | Tolle | 9 | 2 | 7 |
| 21-259 | Calculus in Three Dimensions | Schaeffer | 9 | 3 | 5 |
| 21-355 | Advanced Calculus | Hrusa | 9 | 5 | 9 |
| 21-484 | Graph Theory | Martin | 9 | 6 | 7 |
| 21-621 | Intro to Lebesgue Integration | Hrusa | 6 | 7 | 7 |
| 33-104 | Experimental Physics (with lab) | Luokkala, Feenstra | 9 | 2 | 6 |
| 33-111 | Physics for Science Students 1 (AP credit) | - | 12 | - | - |
| 33-112 | Physics for Science Students 2 | Swendsen, Feenstra | 12 | 1 | 6 |
| 36-217 | Probability Theory and Random Processes | Genovese | 9 | 4 | 9 |
| 48-095 | Architecture for Non-Majors | Celento | 9 | 5 | 9 |
| 69-130 | Tennis | Moss | 3 | 8 | 5 |
| 69-131 | Volleyball | Webb | 3 | 7,8 | 8 |
| 70-340 | Business Communications | Kirkpatrick | 9 | 8 | 7 |
| 73-100 | Principles of Economics | Dalton | 9 | 4 | 4 |
| 76-101 | Interpretation and Argument | Gripp | 9 | 1 | 3 |
| 76-271 | Introduction to Professional Technical Writing | Cheng | 9 | 8 | 7 |
| 79-266 | Times of Feast, Times of Famine | Lynch | 9 | 2 | 2 |
| 80-100 | What Philosophy Is | Buldt | 9 | 5 | 7 |
| 80-180 | Nature of Language | Simons | 9 | 3 | 2 |
| 85-211 | Cognitive Psychology | Lovett | 9 | 6 | 5 |
| 88-120 | Reason Passion and Social Cognition | Lerner | 9 | 6 | 8 |
| 99-068 | Fun With Robots | (Robotics Club) | 1 | 7 | 5 |
15-127: Mark and Jim! Together!! Oh yeah, the taught us something too, introductory programming or something. They would've got a 10 if remembered the course for the material as well as their antics.
Update: Intro is constantly changing so your mileage may vary. The big thing though is that there is no more special version for majors.
15-151: The bane of freshman year. Horrible intro to discrete math. I hate being a guinea pig. Fine, so I learned stuff, not very well though.
15-211: The second semester data structures course. It was kinda mediocre. We did have some good labs, and the theory was taught quite well, but I'll never forgive them for using java.
15-212: ML! Recursion! Continuations! Good course. Quite hard, but that was my first time with functional programming and I think they did a great job presenting it. Why just an 8? well, what can you REALLY use ML for?
15-213: Getting down to the basics, pure C. This was a great class, those labs (coding malloc, a web proxy, and defusing the bomb!) will stay with me for a while. GDB and pointer hacking was a lot of fun, multi-threading was cool, and the networking code was good too. The only thing that kept this course from getting a 10 was the lectures, I remember getting up bright and early only to be put back to sleep.
15-251: Leaps and bounds above 151, this course finally stretched and broke my limits. It got me thinking about problems in totally different ways and improved my reasoning skills tremendously. This is basically the bar for other classes to match. I won't even begin to list topics, which are quite broad, but the course isn't about the particulars of the material. It's on a meta-level above that; how to approach material. Rudich is quite the lecturer so don't miss this one, it's a perfect 10!
Update: This has been split up into two classes.
15-381: The title is a little misleading, we actually learned about what AI isn't. We got a nice survey of neural nets, markov systems, and general search techniques. In other words, we solved problems that typically take 'intelligence'. Not a terribly tough course, but quite interesting anyway. That and Moore was a great lecturer.
15-399: Eh... it fulfills a category and isn't very hard so it does have some benefits. But it is also slow and boring and not well structured. Basically, avoid this class unless you're willing to put up with these sort of problems.
Update: I heard the class is much better now!
15-412: OS will kick your ass! But I learned so much!! This was a very interesting course that exposed me to what really happens under the hood. Also I finally got to work on large interesting projects. My major gripe is that I had to drop my partner half way through the last project and this definitely soured my experience.
Update: Like 251, this great class is being split in half because someone complained it's too hard.
15-441: Another great course that everyone should take. I'm not so sure it teaches you systems programming also the support and feedback were lacking, but Mor's lectures were absolutely wonderful and definitely got me thinking. Oh yeah, and you really learn how the internet works :) Definitely take it with Mor Harchol-Balter, she's really enthusiastic about this stuff!
15-451: This felt very much like a rehash of 251. I did like the 'presentation' aspect though since you could also chat with the TAs.
15-462: Computer graphics was FUN! Take this class! You hack lots of code and debug by looking at pictures. Yes, it IS a 400 level course, and there's a reason for that, but it's so refreshing to look at pictures for a change! So why not a 10? Well, the problem with this course is that it often feels like a guided study and that's because I remember the labs only. Although labs were the major part of the class, they were fairly disjoint from everything else.
Update: This class is very different now, I hear it still good though.
15-493: What can I say, you get to hack a game. I was a guinea pig here and a lot of the class sucked, but the focus was definitely on the final project. This open-ended assignment was simply to write a video game as well as a webpage and report for it. Working with a new friend we took home the best-overall game award and the end of the semester! I expect this to become a great course after a few iterations so stay tuned.
15-539: Second semester of sophomore year I did an independent study in CS pedagogy. I became part of the course staff for 15-251. Taking a second look at the course, this time from the other point of view, was incredibly enlightening. Aside from learning to speak well, prepare materials, and approach students, I also got a second look at the course material and added to it.
15-599: Everyone should try research, it's definitely unique. And you also learn interesting things with communication as you'll give several short presentations, make two posters, and write a huge paper. It is a full year though so make sure you find an advisor you like and a field you're interested in. This also lets you interact with professors in a very different way... suffice to say the whole thing is a unique experience.
15-781: Builds on AI, but doesn't extend it far enough in my opinion. Overview classes are nice and this one definitely provoked some creative discussion with eager grad students. As usual, Moore is an awesome guy so it's worth taking.
16-199: This was a project based course where we actually built stuff! Andrew, Justin, and I formed a team code-named librient. We put together a web-page and had a lot of fun making all the toys. It's definitely not a 10, this was only a mini-course and the first time being taught, but if it were expanded...
16-362: Great class! It's a lot of fun to actually see your robot run in the real world and debug by looking at physical behaviors. It is closer to research than a traditional class... but I think that's a huge plus! And Illah (last name pronounced Nor-baush) is great, so sign up for this one.
18-100: Learned some basic circuit/logic stuff... not too interesting, but it did have a saving grace. This course had a lab component and we built a gps receiver! Very cool! Fun with soldering fumes and ICs :)
19-601: I was very disappointed by this class, it wasn't at all what I expected. I just assumed it would be more technical, that we would actually be creating exploits and doing case studies of some of the major attacks. Instead this class was filled with a huge variety of students, some had no prior knowledge of computer networks or encryption, others were masters students with industry experience in security. We ended up talking a lot about policy which wasn't what I had signed up for. One saving grace was the interesting guest lectures from CERT. If you want to hack code, stay away from this class. If you want an easy A, with no work, no need to attend class, and no stress then this is the 12 unit filler for you.
21-11x: Basic calculus courses... boring but I had it with Tolle who was fun.
21-241: Matrix... learned a lot of math stuff, and it was geared for cs majors. Kinda boring, but I think all cs majors should know this material. Also taught by Tolle :)
21-259: Calc in 3D. Boring, and NOT taught by Tolle :( It's the other math requirement for graphics, though I don't think I learned much here. Still, it was a good review of matrix.
21-355: The material is kind of bland and dry, you really need to appreciate math for its own sake. But Hrusa is the man and made it a lot of fun anyway; assuming he's teaching again, I highly recommend this class.
21-484: Much of this was review of past cs classes. Interesting material and not very demanding. Not an outstanding class but certainly not a bad one.
21-621: A too-fast introduction to measure theory. Despite Hrusa's best efforts, I didn't find the material nearly as interesting as advanced calc.
33-104: Did some basic physics experiments... nothing groundbreaking, and writing the lab reports sucked. But I still like getting my hands dirty so that was fun.
33-112: I was really into physics at the time and enjoyed electricity and magnetism. I'm not sure why so many people do so poorly in it... Granted the material is a bit abstract and dry, but the math isn't hard and it relates nicely to the big picture.
36-217: I had this with Genovese, who is a great teacher. It's your basic probability stuff. We had plenty of interesting problems to tackle and it was also geared for cs majors. Still, math gets boring after a while and I didn't have any friends in the class.
Update: I heard this class has taken a turn for the worse when Genovese stopped teaching.
48-059: Architecture was a great class. Much of the time is spent at home just building stuff. Class itself is more like a big discussion period and very engaging. The projects themselves were really tough on me because, apparently, I have no artistic talent. Still, this one goes in my all-time favorites, mostly thanks for one of the coolest profs ever.
69-130: The coach was so unenthusiastic, it was boring. On the plus side you do get to use a whole hopper of balls and can go off on your own.
69-131: I'm a volleyball nut and Julie is a great instructor. I took this class twice even :) Oh, and this class meets in the main skibo gym... I had a little trouble finding it my first day because she has this habit of cancelling class.
70-340: Brushed up my resume and really improved my interviewing skills - this seems to be all business majors do anyway so they know what they're talking about. Otherwise it felt like baby sitting - Claudia gives off this grandmother aura. I'm not the first to complain about the group work, the work ethic of my groupmates was waaaaaay below what I'm used to.
73-100: Basic econ, don't think I actually learned anything in this class, but Dalton was cool and I never fell asleep.
76-101: Required english class, otherwise I wouldn't have taken it. Not much to say here.
76-271: A refreshing view of written communications. I don't think I learned much here, but it was a different perspective.
79-266: Unlike econ, I'm SURE I didn't learn anything here. Easy class, and it fulfills a breadth requirement...
Update: I think this one is gone, so no more easy A for you.
80-100: We had a visiting German professor who I really enjoyed. Much of the course seemed to be a waste, however we did break into some nice philosophical debates and the papers didn't feel like a chore.
Update: I've seen the prof back on campus so maybe you'll get to take a class with him afterall.
80-180: Nature of language sucked, it felt like a waste with no redeeming activities, plus I think she tried to teach things that were just plain incorrect.
85-211: Cognitive psyc had some interesting topics but hardly any depth... a very cursory overview of a huge range of topics. On the plus side, she got her BS in CS.
88-120: Lerner was a great lecturer and got me interested in business and psychology stuff that I wouldn't have otherwise cared about or even notived.
99-068: It was rewarding to actually see my own robot navigate a physical maze. This stuco provided an interesting distraction but not much more.
|