My last semester is over, which is pretty sad. I was pretty busy for most of it, so this is actually my very first blog post all semester; I didn’t even do a semester in review post for last semester, other than the “What I’ve Been Up To” post. I did finally finish my GameCube adapter for the front of my computer, though.
So, I took A History of Computing, Ethics, CSE Service Projects, and Introduction to Droid Building, and I did undergraduate research.
Projects for my Classes
A History of Computing
I liked our mid-semester project more than our final project, so I’ll talk about that. We wrote a game called A Hag Amongst the Glyphs, which is a procederally generated dungeon crawler. The code is, as usual, on GitHub. The project was fun to work on, so we put in more effort than we intended to when we started. We actually enjoyed playing our game, too. I might go back to it to make it a little more done. A group of students taking Data Structures added better pathfinding to the AI for their final project, which was kind of neat. I might merge in what they did, for at least some of the different enemies, as apparently the game is unbeatable when the enemies properly follow you.
Introduction to Droid Building
For my droid building class, we built a droid, obviously. We had to build an astromech out of PLA and an arduino based control system. We had the outer shell of our droid provided to us (a cylinder of PLA, basically), and had to design everything else ourselves. We were also provided with a battery, some motors, some motor hardware, some speakers, and a couple of boards. We decided early on that we wanted to make a droid to serve in casinos. We ultimately ended up with a “muscle car casino” droid, which featured white walled tires, rear turn signals / brake lights shaped like digital dice, a front grill with a car cigarette lighter and an arm that extended that could dispense a drink using a peristaltic pump, and a slot machine in its head. We recorded a few videos here.
Side Projects
I didn’t do too much this semester. I don’t know how that happened. I guess it’s because, for the first time while in college, I
actually played video games during the school week. I blame Celeste, which immediately became one of my favorite games of all time.
Interestingly, I found out that if I run the game when my $TERM environmental variable is xterm-256color
, it just crashes. I can
fix this by setting $TERM to something else, or just piping the output of the game to /dev/null
. Weird, huh?
What I did do is prove that Arrows is Turing complete, and I started writing a program to convert descriptions of turing machines into Arrows programs.
I also started remaking an android game I made in high school, which itself was just a clone of an existing game that I found cool but didn’t want to pay $2 for an add on for. I don’t know if I will continue with that going forward or not, but we’ll see.
Going Forward
I’m still working on a few of my last “Going Forward” ideas. I have an idea for another fun little programming language - a scripting language like bash for programming little command line utilites, but where documentation is both required and integral to the function of the program. Speaking of programming languages, I’ve been meaning to play with some “new” ones, like Rust. I spent some of yesterday playing with Groovy, and learning Go probably isn’t a bad idea.
For my second History of Computing project I had to learn Unity, so I might try my hand at making a game of sorts with it. I was thinking it would be cool to do an AR game, but I don’t have any specific ideas.
Lastly, I do have a cool post coming up, pertaining to my graduation cap. I don’t know when I’ll post it, but seeing as I graduate in a week, it’ll have to be soon.