Completed Projects


A web-based textbook/course delivery system for an introductory Computational Thinking class. An extension of the popular Runestone platform totally rewritten in Flask. Incorporates a number of novel elements including real-time collaboration, a block-based programming environment, and useful feedback mechanisms.


A textbook, a course, and a learning management system all wrapped into one, built on the newest web technology.
Interactive questions with immediate feedback embedded in the readings
Google Doc-style real-time Collaboration is supported so that cohorts can work together on a question instantaneously.

Course staff has powerful tools for viewing the classes status, but also to drill down into individual students.


A collection of tools and documents designed to smooth XO development, developed in collaboration with Robert Deaton and Eric McGinnis. 

Platipy consists of:
  • An online tutorial for XO Activity Development (Site).
  • Example.activity, a skeleton of a basic XO laptop game and a packaged set of useful python modules (e.g. simplejson)
  • Spyral, a Pygame replacement for developing games quickly and effectively
  • Conspyre, a school-oriented networking framework and API for the XO that persists data and provides communication between teachers and students
  • Syllabearus, an open-source, semester-targetted game design curriculum with a focus on teaching educational theory and high level game design to Computer Science majors

Animal Science Minecraft Mod

A modification for Minecraft that introduces mechanics designed to teach Animal Science concepts, developed in collaboration with Eleonor Cayford. A full blogpost on the project is published here.

Topics covered by this modification, based on FFA learning standards, include:
  • Animal naming taxonomy (e.g., "Sow" vs. "Boar" vs. "Piglet")
  • Approaching animals safely
  • Hybrid Vigor

Pokemon Battle Analyzer

A analyzer for a classical, turn-based video game utilizing Sparse-Matrix Analysis to quickly navigate a massive probabilistic state space. This system can accurately identify outcomes of match-ups between two players.

Virginia Tech Computer Science Graduate Student Homepage System

A utility for Virginia Tech CS Grad Students to upload a structured file containing their academic information, which then makes them searchable on the Graduate Council website. A structured, real-time editor is also available on the graduate council website.

Functional Programming Game

This is a proof-of-concept for an interesting gameplay mechanic where you compose functions/data LISP-style to satisfy predicates. The demo uses a turn-based combat as the context, but there other possibilities available. If you are having trouble, click the tutorial button in the lower right. Try it out at


Play-writing game for the XO laptop. More information can be found on it's Laptop Wiki page.

Wacky Writer

Collaborative creative writing game for the XO laptop where users take turns writing the lines of a story about a picture. Different game modes encourage wackiness by limiting the number of previously written lines that are visible to the user.

Class Watcher

**site active**
Web application for University of Delaware that periodically monitors class slots and notifies subscribers of open seats 

UDel Classes Connection

Facebook app for connecting University of Delaware students taking the same classes (defunct)

Teaching and Laboratory Assistant Scheduling System

Java Application designed for the University of Delaware's Computer Science department to automatically assign teaching and lab assistants to their labs using constraint satisfaction.