Another semester is over, one that happened to be my first semester where I was allowed to take only Computer Science courses. So, I took Paradigms, Operating System Principles, CSE Service Projects, Hackers of the Bazaar, and Mobile Computing, and I did undergraduate research. The projects in Operating System Principles were all fairly straightforward, but the last one involved writing a file system of sorts which was cool, but there was no room to do what I wanted, so I will only discuss the other courses.
Final Projects for my Classes
This class wasn’t the best, and the final project was just OK. We wrote a networked platformer, and we called it networked platformer. We were told we would get an F if we wrote Windows 95 Solitaire, so we made a Solitaire themed platformer. We were also forced to use TCP, which was kind of annoying. There isn’t really anything special about this project, so I’ll move on.
CSE Service Projects
For our service project, my group both wrote a recipe reader app as well as made a video about internet safety for Logan Industries. The recipe reader app was neat in that we had it do text to speech, and it was the first iOS app thing I’ve ever been involved with.
My final project for mobile computing was something I wanted to exist for a while - a mobile app that allows you to track Elo ratings for a wide variety of competitive activities - I called it Elo for everything but then I messed up the GitHub repo name. Anyway, I wrote it using Phonegap for the front-end and Nodejs and MongoDB for the backend.
My research involved creating an arduino-controlled drumming machine. Its source is available here. The requirements changed a number of times based off the will of the musician it was created for, but I suppose that’s something I might have to learn to deal with.
Hackers in the Bazaar
My favorite project this semester is pretty typical of me. It was a kind of compiler suite we called GGNoRe. It was meant entirely as a joke for a joke of a class, and it is not meant to have any practical value. Basically, it is a set of python scripts for “helping” write C code - it currently has a script for forcing functions to be below a set length by kicking out excess lines to a new function, as well as a script that repeatedly runs gcc until the code compiles, searching DuckDuckGo for Stack Overflow posts about whatever errors GCC throws, then replacing lines with errors with a random code snippet from one of the Stack Overflow results. That second one is my favorite thing ever and it always leads to hilarious results. After presenting it my professor begged me to not give it to the Sophomore class.
I also have what I feel is a very good idea in the works - a tool meant to teach principles of robotics, AI, and programming in the browser. It would allow users to connect components together (think LEGO or Besieged), including sensors and actuators, and write some LISP to control the “robot” autonomously. I have a lot planned out, and it’s decently ambitious; I’ll probably make a post soon at least outlining what I hope to do.