AR Video Games

So an AR game is a game that draws objects over a live video feed of the world (usually with something like a head-mounted display or a phone). The effect makes it seem like there are 3D virtual objects in the real world. I worked on two such games with the smart and creative folks in Blair MacIntyre’s AR games studio.

This project wasn’t just me: it’s part of ongoing work that many folks, especially Richard Shemaka are doing in the lab.

This project was me and Iulian Radu.

Computer Science Interest Visualization

The graph shows the interconnections between the various pages of the wiki

Using the flash-based flare framework I attempted to build a pleasing interactive visualization of the ways various interest areas in Computer Science overlap. The crazy graph is connected to the interlinking pages on the wiki (or at least it is if my cronjobs are still updating properly). Check out the live version here: This was a crazy class project that got just slightly out of hand.


I coded a fractal generator in Java. It’s designed so you can build the fractals with a Xbox360 video game controller (or a keyboard and mouse). You can see the latest version on Google Code. Here’s a sample fractal (of course in the actual software you can zoom in infinitely and see at the details):

A fractal in which roosters have within them more roosters which themselves contain roosters

Perplexing Poutry (much love to Rudy Rucker)

I used this app to build a fractal for my sister Gretchen’s wedding. We put it on the pre-wedding-run teeshirts.


The first (and only) circuit board I ever designed

Fabricated board, 3D printed case, and everything else

Me and a team of 3 others built a functional hand-held Bluetooth keyboard and mouse. Up above the circutboard I designed and we had fabricated for the project. The design major on our team made a case that we 3d printed. We programmed the firmware, soldered 100 tiny components to that little green board you see. It was a crazy project to do in a semester.

Autogenerating stories

I took a class on interactive narrative by Brian Magerko. In the process I build a fairly crude system for generating stories about samurai based on user goals in prolog. For whatever reason the idea of a computer that can make up its own stories is just appealing to me…if I didn’t think CS education was so important, I’d love to just do research on computational narrative.

No pretty pictures on this one I’m afraid, but you can look at the code and a description.


Before I went back to school and started working on CS education, I built this project for interfacing with usb devices using ruby. This project is now pretty much defunt, but you can see the code here. I gave at talk about RubyUSB at a ruby conference. The talk has its funny moments even if you aren’t really really excited about the possibilities of easy to configure human interface devices.

Other Stuff

You can see whatever I happen to be playing with on my blog! Here’s what I’ve been working on recently:

  • Looking for a professional programming job this summer November 27, 2017 Being an academic, I get summers off from teaching. When possible, I like to take the opportunity to do three months of software development work for some company. I keeps my programming practices up to date and provides good stories to tell in class…but even more importantly, I enjoy it. In years past, I’ve done this ...
  • My Summer 2016 ventures project was featured in Rose-Hulman’s CPSE newsletter March 6, 2017 So Rose-Hulman’s Center for the Practice & Scholarship of Education publishes a newsletter, and they happened to highlight my collaboration with Rose-Hulman Ventures in their Spring 2017 issue. I really have a lot more to say about the results of this project (all of it good, for the most part) – I guess I ...
  • Looking for CS Contract Work (for me and a team of Rose-Hulman CS majors) April 21, 2016 So this summer, I’m working on a interesting pilot project with the folks at Rose-Hulman Ventures ( Basically, I’ll be acting as technical lead for a group of Rose-Hulman students working on programming contract work. So in the morning, I’ll be basically a professional programmer/mentor and in the afternoon I’ll be teaching a course for ...
  • My Summer Vacation: Programming at Indigo Bioautomation August 22, 2015 This summer I had a fun opportunity to program in a space I’ve never really explored before: medical data analysis. The company was Indigo Bioautomation. They build cloud-based software for analyzing mass spectrometer data. Here’s a pretty good introduction if you’re curious: Despite medical tech’s reputation for somewhat old-school and slow software approaches, ...
  • Catan GUI in Elm July 6, 2014 I’m in India, but there’s some downtime and I’ve been using it to play a with a toy project – a Settlers of Catan game built in the pure FRP web language Elm. Well, perhaps “game” is to strong of a word for what I’ve done thus far – lets say Settlers of Catan ...
  • My Summer Vacation: Programming at Groupon August 24, 2013 After focusing on teaching and research for the last few years, I wanted to get back to the swing of things and write some real code. Lucky for me, my good friend Ben twisted a few arms and got me a summer job with his team at Groupon (lest you doubt Groupon’s hiring practices…yes ...
  • Changing the Emacs Modeline Color in a Buffer November 19, 2012 I wanted to have the color of my term-mode mode line switch, depending on whether I was in character mode or line mode. I’m not sure why this became an overwhelming desire of mine, but it did. Not really knowing anything about emacs font faces, themes, or anything I pulled up my debugger ...
  • Making Simple Fractals in R October 9, 2012 In my GHP Fractals class this summer, I opted to write my sample programs in R. I selected R because it has very nice graphing libraries and built-in complex numbers. Overall, I was pleased with R; it definitely let me built some incredibly straightforward fractal code. It’s not as fast or pretty ...
  • Search-Based AI for Pandemic May 11, 2011 The final project for my game AI course was to build an AI for a modern board game.  My team selected Pandemic, a cooperative board game in which players need to both travel around preventing diseases as well as hoarding cards to “cure” diseases. Emboldened by the success of my very simple AI for Mario Brothers, ...
  • Reforcement Learning Mario AI March 9, 2011 As part of the Game AI class I’m, I built an AI for playing levels of Super Mario Brothers (using this framework here…I didn’t make the mario game itself). This Mario AI trains on one specific Mario level somewhere between 1000 and 100000 times. It may seem pretty cool, but imagine how cool ...

Want more? View all programming stuff posts