Recent Work

In my free time (which there is little) I like to work on making games. I also consult with NIU Outreach to help develop content for ACT prep and educational games. You can find a couple of games below.


Adventures of Gloor

I ran a game camp during the summer of 2015. The goal of the camp was to create a mario clone web game. The students named the game "Adventures of Gloor." I'm not sure why. Anyhow, the game was coded using the Phaser framework. The levels were created using software called Tiled (it's free!).
Try it out: Adventures of Gloor


Collisions are a main part of any arcade based video game. While working with the Phaser framework I came across a function that had a parameter and I never knew what it did. This game was built around figuring it out. Basically it works like this; when a collision occurs you want the two objects to stop. Maybe they bounce off each other or sometimes they just stick together (like Mario landing on the ground). If you play this demo game you'll notice that when the player jumps he goes through the bridge (no collision occurs). On the way down he will land on the bridge (collision occurs). It may not seem like a big deal but this is an extremely powerful tool to have when programming platform type games.
Try it out: Jumper

Brian Says

When preparing for the game development game, I wanted to come up with games that focused on different things. Platform games focus on collisons, jumping, etc. Brian says is a rip-off of Simon says. The game focuses on keeping track of data and timing.
Give it a shot: Brian Says

Simple Tic Tac Toe

Tic Tac Toe is one of the easist games to learn and one of the first games taught to game developers. The gameplay is not complicated. But as a first time programmer you need to learn how to structure a game, how to use variables, functions, arrays, etc. Basically this game uses everything taught in a beginning programming class.
Try it out (2 player only): Simple Tic Tac Toe

Extreme Tic Tac Toe

This game has a few other names as well. It's basically a giant tic tac toe board. Instead of selecting and getting that box, each box is made up of another tic tac toe board. So in order to get the center box, you need to win the tic tac toe board in the center box. Here's why this game is so difficult. Your oppontents choice will determine which tic tac toe board you can play. And the box you choose will determine which tic tac toe board he or she can play. There are other mechanics to the game but I find them difficult to explain. If you are interested, contact me.
Try it out: Extreme Tic Tac Toe

Lights Out

You start with a 3x3, 4x4, or 5x5 grid of lights. They are all turned "on." When you click a light, any light to the left, right, above, and below (including the light you clicked) will change. If it's off, it will turn on. If it's on, it will turn off. The goal is to turn off all the lights.

The game is made using HTML5 Canvas and Javascript. The interesting thing about this game is it can be modeled by using Linear Algebra. Given any starting point for the lights, I programmed a solution generator. The program will solve a large system of equations modulo 2 and indicate on screen which lights should be clicked.

Check out the game at Lights Out

Zombie and the ACT

This game was made by Mary Baker and myself. It takes normal ACT questions and zombifies them. In other words, I turned a typical act math problem into a zombie word problem.

You can check out the game at Zombies and the ACT

Zombie ACT-tack

I made this game to be used as a bell ringer for high school math students. It can be modified to be used in any class that uses multiple choice questions. This is a demo version.

I made this game using a javascript framework called Phaser. People say I should start using software programs to make my games (like GameMaker), but I to get my hands dirty with actually coding it from scratch.

You can check out the game at Zombie ACT-tack

Cryptography Activity

Cryptography Website

Introduction to Cryptography - Lecture Notes

For the 2013 NIU Math Camp, I did an introduction to cryptography. I wrote up some lectures and activities for the students to work on in groups. In order to work with harder examples, I created some websites that allow them to encrypt without having to do it by hand. The websites include

Using Modular Arithmetic

Most of the substitution websites were created using Javascript/Jquery. The Modular websites are created with PHP.

Javascript Loan Calculator

I know there are many loan calculators online. But they're on sites with dozens of annoying ads. I wanted to make a very simple calculator for my students working on their finance projects. The calculator is made using Javascript and error messages are displayed using Jquery. You can check out the calculator at Javascript Loan Calculator.


Quccu was a project I worked on with Michael Kang. He was the project manager and frontend designer. The project was similar to how a user would search for a job. I helped create the database and backend needed for a user to successfully create and edit an online profile. Instead of searching for jobs, the users can search for other jobseekers. It's a useful tool for employers looking for jobseekers.

In addition to programming the backend for maintaining a profile and the login system, I also programmed a search function. An employer can search by state and job description. It would display jobseekers that match the description, where you can then view their profile, bookmark them (so you can view their profile later), or connect with them (similar to a Facebook friend request.)

You can check out the site at Quccu.

Lecture Notes

Calculus I Lecture Notes

Calculus II Lecture Notes