From Floor Pi Wiki
|Course|| Electrical Engineering and Computer Science
Hi! I'm Mark, from Singapore. I like computers, puzzles, subframe technology, video game music and, most of all, sleeping.
- 6.374, Analysis and Design of Digital Integrated Circuits (Sze)
- 6.822, Formal Reasoning About Programs (Chlipala): Take this class if you want to do CS, but actually do math, but actually it's a video game. Yeah, I've said it, Coq's a video game. Chlipala's cool, though the lecture material can be a bit hard to follow live.
- 6.858, Computer Systems Security (Kaashoek, Zeldovich): Another labs-and-papers systems class. It's a nice, broad survey of the field, with a strong focus on security in practice without delving too much into the weeds.
- 18.102, Introduction to Functional Analysis (Melrose): Harder and less of a meme than I was sold, but still manageable. ...I mean, it's a math class, what did I expect. Just be prepared for a really tough final -- a list of 25 problems is released just a week before, from which a few would be chosen. That's like doing 5 psets on exam week.
- 21G.502, Japanese II (Ikeda, Rafique): I got lotteried out of another HASS and thought this would be the silliest class to replace it with. Turned out to be a great choice -- the teachers are really nice, and it was probably the most useful class I've taken at MIT.
- 6.035, Computer Language Engineering (Rinard): Rinard's an entertaining lecturer, but definitely not for everyone -- he spent probably half the time telling irrelevant stories, though he does try to adapt his lectures to the audience. Writing a compiler from scratch was fun, though the language was icky (java? ew), and groupwork was once again ehh since my work schedule never seems to align with anyone else's.
- 6.826, Principles of Computer Systems (Lampson, Zeldovich): Very misleading class name though I already knew that when I took the class. There was just enough computer-verified proof writing to be fun but not tedious. Same paper-then-lecture format as other systems classes so lectures were again a little redundant, though no exams was a big plus.
- CMS.618, Interactive Narrative (Montfort): Play my game!!! Needless to say, I enjoyed the class. Nick is a huge nerd and a supportive teacher, and has quite the taste for postmodernist stuff, which was awesome.
- 21M.139, Ragtime Composition (Shadle): Probably the most fun class so far, rags are such a huge fun to write, Shadle's such a big nerd, there were only like six of us so the discussions were very interactive. There ought to be more six-unit classes like this. Shadle performed all our rags, you can find the recordings here... (though I kinda prefer the MuseScore rendering oops)
- 21M.387, Fundamentals of Music Processing (Humphrey): Apparently the state-of-the-art for music processing is pretty kludgy to begin with, but there's still a lot to learn. The material was relatively easy, but the workload was very small, so the value-to-work ratio ended up being pretty good.
- 6.856, Randomized Algorithms (Karger): Interesting material, neat tricks, fun how everything reduces to a Chernoff bound with a few insights. Karger's a pretty good lecturer, considering how dry the derivations were. The p-sets were horribly long, though.
- 6.823, Computer System Architecture (Sanchez): Fun tour of comp-arch tricks beyond slapping logic gates together. I have no idea how they managed to pull it off given the large breadth of content (by nature), but they did.
- 21M.302, Harmony and Counterpoint II (Shadle): Shadle's a very supportive person and a great teacher. He's also pretty damn awesome at the piano. The add-ons were still obnoxious but the sight-singing lab was (once again) conducted surprisingly well. I ended up reharmonizing a melody in five completely different styles for the final project -- that was definitely fun.
- 9.00, Introduction to Psychology (Gabrieli): I wanted a HASS-S that wasn't econs, so... actually this class was also pretty fun. Gabrieli's just a fun lecturer in general. Good avenue to pad up your general psychology knowledge if you don't read self-help books.
- 6.UAT, Oral Communication (Tony): This is the only class in MIT I've ever taken (and will ever take) solely to satisfy a requirement. Also, I have a strong negative prior when it comes to general communications classes, I just think the premise is flawed to begin with. Surprisingly, I didn't end up hating the class as much as I thought I would. Take of that what you will.
- 6.828, Operating Systems Engineering (Belay, Kaashoek): Similar to 6.824, fun but hand-holdy lab sequence, interesting papers but somewhat redundant lectures. Coding in C/asm was a joy, though. I ended up just doing the final lab because I didn't want to have too many final projects this semester.
- 6.111, Introductory Digital Systems Laboratory (Gim Hom): FPGAs! Verilog is a horrible language but writing HDL is big fun and Verilog is the best of a bad lot. Gim was once again an awesome person. I wrote an Ethernet driver for the final project, which I thought was easy picking but they apparently didn't.
- 18.725, Algebraic Geometry I (Pixton): Crushing p-sets, horribly abstract material, exactly what I wanted. Pixton's a decent lecturer, Vakil's notes were a decent reference, it was a Good Time (TM) but I'm not masochistic enough to take 18.726 next semester.
- 21M.301, Harmony and Counterpoint I (Ruehr): Ruehr was an excellent teacher, very enjoyable class though the add-ons were a bit obnoxious. My final project ended up short and sweet.
- 6.824, Distributed Systems Engineering (Morris, Schwarzkopf): Fun lab sequence, Go channels are such a joy. The papers provided a nice breadth, though mandatory reading before lecture was kinda redundant since the lectures just went over the papers anyway. There's a final lab/project option but mine went a bit wonk.
- 6.101, Analog Electronics Lab (Gim Hom): Gim's an awesome person who really cares about students. There's a lot of focus on how real circuits fail to conform to theory, which in analog is all the time. Get ready for lots of wire stripping, caps exploding and circuits changing behavior when you measure them twice.
- 18.212, Algebraic Combinatorics (Ferber): Relatively light workload, lots more focus on linear algebra and expander graphs than expected. There were some fun theorems and problems though.
- STS.049, The Long War Against Cancer (Scheffler): I wanted a CI-H HASS-H that wasn't philosophy, so... actually this class was pretty great. The lectures were entertaining, at least. The exams were a bit obnoxious, and there was a lot of talk on racism/sexism etc., but that's kind of to be expected for a history class.
- 6.008 (Golland, Wornell): Rather standard, but it's the best class that satisfies the introductory requirement so I'm not complaining (satisfies by petition -- I only learned about this after taking the class).
- 6.012, Microelectronic Devices and Circuits (Shulaker, Palacios): Strongly intuition-focused, which was great, though it surprised me that the class was all devices and no circuits (turns out the class was recently revamped). Shulaker was so idealistic and full of energy, I wonder if the few more years of MIT has jaded him yet.
- 6.837, Computer Graphics (Solomon): Entertaining lecturer, fun assignments, though I *kinda* already had a lot of background to be taking this. The class doesn't actually cover the GPU, but I did a GPU final project anyway for funsies -- Real Time SPH
- 21M.011, Introduction to Western Music (Pollock, Neff): Great CI-H. I'm not much of a fan of classical music, but I do like analyzing music in general. Almost every lecture had a guest lecture/performance section, which was fun.
- Updated my floorpi wiki page.
- Updated my floorpi wiki page again.
- Destroyed my floorpi wiki page?
- Updated my floorpi wiki page!
- Updated my floorpi wiki page yet again!
- Restored my floorpi wiki page. I'm a hero.
- Updated my floorpi wiki page!