Tagged with Projects

Internet of Graduation Caps

- Projects

During my last summer internship, a thought popped into my head. I realized that it wouldn’t be too hard to stick an LED matrix under my graduation cap, to have one that would be totally unique. Well, it turns out someone beat me to the punch, but I could still make one that was totally unique by stealing ideas from other places too. Reddit’s r/place was really cool. I figured I could recreate that on a 32x32 board.

Continue reading ↦

Spring 2018 Semester-in-Review

- Blog

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.

Continue reading ↦

Markup for note taking

- Projects

I’m a week into my senior year, and I’ve gotten sick of using OneNote for note taking. As a linux user, I’m pretty much limited to the web interface or WINE, and I’d really prefer neither. I’ve also had plenty of issues with notes not syncing / getting lost in the cloud, which is more than enough of a reason to switch to something else.

Continue reading ↦

Wheel in the Sky

- Projects

Despite the delay, I am still working on my AI/robot game thing. A while ago I added what I said would be my next steps, but never posted about it. So I’m doing that now.

Continue reading ↦

AI Game Components

- Projects

I’ve spent a few days now planning out more of my project. I worked on the language some more, and brainstormed ideas for blocks I would like to have in the program. I also decided to use phaser as the game engine for the building and simulation of robots. This decision was based off the presence of a physics engine and the ability to specify constraints on sprites, which will take off the heavy lifting of “constructing” robots.

Continue reading ↦

AI Game Language

- Projects

For a little while now I’ve wanted to make a game to teach AI programming and robotics. Between school and my summer internship I was able to start it, and here I’ll outline some of my progress. The Project Idea What I want to build is a game in which robots are assembled by snapping together components. The robots are then programmed. The programs must define a run function, which is run every tick of the game.

Continue reading ↦

Spring 2017 Semester-in-Review

- Blog

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.

Continue reading ↦

A Recurrent Neural Network for Wolfrat Bot

- Projects

For fun, I decided Wolfrat Bot needed a bit more, err, personality. So, I set off to make him one. After training an RNN for a few hours on my desktop’s GPU, I had interesting results but ultimately failed at achieving quite what I wanted. Anyway, I encountered some huge hurdles I found out AFTER training for ~8 hours that the way I was encoding the characters for the network input (and thus, the way I was decoding the network output) behaved non-deterministically between Python 3.5 runtimes!

Continue reading ↦

Automatic Site Rebuilding with PHP and GitHub

- Projects

The content of this website is on GitHub here. A nifty feature about GitHub are its Webhooks. I wanted to be able to add content here without having to SSH into my server, cd-ing into the www directory, git pulling, and makeing, as those steps are tedious. So, I set up a GitHub webhook to POST to a PHP page on the server. The basic form of this PHP page is just: <?php passthru("MYSCRIPT.sh"); ?> Where MYSCRIPT.sh is just a script that pulls and makes the site.

Continue reading ↦

Data Structures Final Project - SnowGPS

- Projects

For our final project for our Data Structures course, my group decided to make a GPS app that finds the path with the minimum time spent outdoors. We wrote a python program to allow us to map our campus as an undirected graph, with vertices at the intersection of every outdoor path, and at every door of every building. To decide paths, it uses Dijkstra’s Algorithm. To achieve our goal of deciding paths with the least time outdoors, we assign weights of 0 to all edges that connect nodes within buildings, and for each other edge the weight is the linear distance between the nodes.

Continue reading ↦

Multiplayer Spaceship Game

- Projects

Back between 2008 and 2011, I spent a fair bit of time on FunOrb. One of their most interesting games was their last official release, Void Hunters. Unfortunately, FunOrb did not last much longer than that, as there has only been a small handful of updates since then, and with the death of NPAPI Plugins, the Java-based gaming site has virtually no chance of being revived. Some time around my freshman year at Notre Dame, I decided that it would be fun to recreate the game.

Continue reading ↦

Embedding Audio With Audacity

- Projects

A friend came to me with a request to create an Audacity plugin that, given two stereo audio tracks, takes the second audio track and ensures that it stays X decibels below the first audio track. The project did not take long after establishing just what it means for a track to be quieter than another, despite me having never written anything in a LISP dialect (Audacity uses Nyquist/XLISP) and some of the oddities of Audacity that I will describe below.

Continue reading ↦

Wolfrat Chatbot

- Projects

My friends and I primarily communicate through a GroupMe chat that we named Wolfrat. To liven the place up, I thought I would add a chatbot. So, I quickly threw together (over a day or so) WolfratBot, which uses the GroupMe bot API. The API HTTP POSTS a given callback URL, which is set to a WSGI script that decides on the appropriate reply. The program is very modular, and new functionality can be added without disrupting any other modules.

Continue reading ↦

Fundamentals of Computing I Final

- Projects

For my Fundamentals of Computing I class final project, I decided to make a shmup. The game is played at a faster pace perhaps than it should have been, but I enjoyed making it. The graphics are very minimalistic, consisting almost entirely of circles. The game features a half-decent level intrepretation system, where levels are stored in text files with simple commands to handle enemies and other things. The system had support for branching and conditionals, though the only condition allowed was time.

Continue reading ↦