Fall 2022 Semester Is Over

So. That’s it huh. Final final project turned in, gearing up for going back to see family over break, I made it through.

In this post I’ll review each of the classes I took this semester and maybe some general thoughts on what spring will be like. Only ordering is lexicographic class number.

10-414: Deep Learning Algorithms And Implementation

Absolute banger of the class. The two profs, Tianqui (TQ) Chen and Zico Kotler were/are doing cutting-edge research, and even I recognized their names from big papers. So already u know they’re gonna be dropping knowledge bombs.

This was the second time this class was run, but it hardly showed. You wouldn’t be able to tell just from the lectures (really good, both of them), just some rough edges in certain places in the labs but nothing that couldn’t be overcome.

This class also ran as as open online version with everything needed to complete the course public, which I think is super cool and really shows their commitment to open source.

18-349: Embedded Systems

“Mini-OS” is how I liked to refer to this class. Lab 4 especially (building a small kernel for the embedded hardware) was wayyyyy more tricky than it needed to be; debugging tools for that board were awful (gdb with hardly any breakpoint support, no trace recording, no printf since that’s where the bugs come from). However, it was really fun to do all the labs in Rust, an unusual arrangement we got instructor permission for.

The content was pretty interesting, lots of introductions to topics you have to care about when putting computers in systems that will interact with the real world. Shame some of the labs were so crazy it spoiled my opinion a little, otherwise I really enjoyed this class. Never had Prof. Gregory Kesden before but I kinda get what the hype around him is, Prof. Mark Budnik was really nice too.

21-373: Algebraic Structures

Just a chill math class with Prof. Richard Statman. Turned out to be only homework-based, which I did not know going in but really liked!! Learned the theoretical basis for the Fundamental Theorem of Algebra, starting allllll the way from Groups. Sets me up well for understanding more theoretical stuff in the future.

62-142: Digital Photography I

So all the above classes are like exactly the type of tech classes I like to take, and I really enjoyed them. Yet, this humanities course with Prof. Dylan Vitone ended up being my favorite! Likely because it was very low-stress, and us students were just encouraged to have fun in it. The lectures were still very useful, learned a lot more about just how wide the world of photography really is, expanded my horizons for what pictures can be and look like.

I should post some of my assignments here; fairly proud of them and they deserve a place to show them off, even if it means breaking my rule of “no photos of me on the internet”.


Other Activities

TA for 15-316: Software Foundations of Security and Privacy

I really enjoyed this class with Prof. Matt Fredrikson last year, and was really excited to TA for it this time. All the content was just as cool as I remembered, and Prof. Fredrikson just as nice + caring.

There were a couple big changes this year, that I played a little bit of a role in bringing about as part of course staff: there are two new labs, written from scratch (mostly by Prof. Fredrikson’s herculean efforts) and both of them are freely available online.

The first goes into one approach to formal verification (instrument a program, run a SAT solver on the instrumented program)concretely applied to a toy language, embedded into a Python DSL.

The second shows how to build a simple theorem prover and we have an entire Python DSL for proof trees. While the goal of this lab was to just apply simple tactics to manually prove certain statements, one student ended up writing a general theorem prover for our language which I think is really cool. I plan on doing a blog post about this lab in more detail since I think it deserves more attention.

CMU AAC Officer

Not a whole lot to talk about yet. I’m running our fall zine (which I tried to participate in but then couldn’t complete…) which should be published before spring starts, and Secret Santa which has yet to start. Haven’t drawn nearly as much as I would’ve liked this semester…


Looking Forward To Spring

As it turns out, I only needed one more class to graduate1! As such, next semester will be extremely light. I plan on auditing interesting classes anyways, but having the extra flexibility/less stress will be very nice.

A couple classes fill this requirement, so I’ll need to decide between 15-462 Computer Graphics, 15-330 Computer Security, or 15-455 Undergraduate Complexity Theory. Kinda leaning toward the last one tbh, only because it’s something I can only get at CMU. Heard mixed things about 15-330 but overall Computer Security is something I’m already interested in so it can’t be that bad. Graphics less so but likely still interesting. Thanks to a generous drop/tuition adjustment deadline, I’ll have 2 weeks to choose once the semester starts, we’ll see how it goes!

Footnotes

  1. I could’ve taken that class this semester and graduated early but I didn’t count units right and thought I needed another full semester anyways so I didn’t whoops