Course review S26
The CS classes started to pick up this semester. Most second semester
freshmen choose between 213 (systems) and 251 (theory). I chose systems,
mainly because I thought it would be more practical and more exciting
than theory.
Courses
- 15-213: Introduction to Computer Systems
- I loved this class! Andersen is an absolutely phenomenal lecturer.
Besides Mackey I don’t think any professor I’ve had even comes close.
The class material was also very interesting. It was ultimately a survey
of really what makes computers work as we use them today. In the second
half we did a lot of systems programming with just C and the POSIX API.
I think this was the coolest part of the class because for most
practical purposes, there’s no level lower than programming this way. I
think it was a cool insight into what underlies a lot of modern software
we take for granted.
- 15-150: Principles of Functional Programming
- Compared to 213, I didn’t love this class. From curriculum
alone, though, I think functional programming concepts are a very
powerful way for expressing computation and I genuinely do believe in
them. But the way this class was taught, though, to me, was
unsatisfactory. Assignments were mainly exercises in logic for the
latest thing introduced. They were super contrived and abstract,
reminiscent of those beginner OOP classes where you literally just
represent some bizarrely specific real-world example in code. To me this
hurt even more since in 213 we were making actually cool and useful
stuff like memory allocators and web proxies.
- 21-260: Differential Equations
- I originally took this class because I was interested in 21-369:
Numerical Methods, which required it. However, it turns out there is a
15-369 that is the same topic under the CS department, which doesn’t. I
recently realized that, so this class was basically useless for me, as
I’d dual enrolled diffeq in high school already. In fact, I believe this
class was easier. I’m not sure if this is just a reflection of my
growing mathematical maturity (I think that’s a thing?) or that this
class is actually easy. The case for this class being easy is strong
though, since it is a prereq for the applied sciences majors here,
which, to put it nicely, are not as well versed in math.
- 21-268: Multidimensional Calculus
- There are actually 4 variants (I think) of multivar that CS majors
can now take. 259, 266, 268, and 269, ordered in ascending difficulty.
Despite not being the hardest, 268 was pretty challenging for me. My
professor was the infamous Greggo, so I don’t know if this class was
meant to be hard, or if it was hard because of Greggo. He did make the
pedagogical choice of teaching differential forms over traditional
vector calculus. I think that was really cool because it generalizes
very beautifully. But anyways, due to the difficulty I did not do very
well in this course.
- 76-101: Interpretation and Argument
- I didn’t get to select first year writing in my first semester. This
class was very chill. Actually I submitted most of my assignments late
(though just like a few hours, usually) and didn’t get any penalty, but
we don’t talk about that. Point being my professor was very kind. I
think most professors usually focus on an area of their specialty for
76-101? Mine centered their course around disability studies. Even
though I probably could have bsed all my assignments and gotten a good
grade, the topic was interesting, so I did put forth an effort. One
thing I did find interesting for this semester in general was that two
of my professors were not actually professors, as they actually were
pretty new to the university and just held lecturer positions.
Coincidentally, they were also the nicest professors out of my classes.
Maybe there’s a correlation? I will need more classes to be sure.
- 98-163: Introduction to Tetris
- Ok, I didn’t really want an intro to Tetris because I’m actually
very good at it. I just took this class so I could spend more time with
the competitive Tetris community at the university, which runs it. I
easily demolished everyone in the end of semester tournament, hahaha.
Well, except for one guy who took the course for a reason similar to
mine, though I beat him as well.