This page contains a selection of my work.



I developed personal task management software which I used to manage my tasks. The software used heuristics to assess the utility of doing each task. Assessed task utilities are used as the basis for task suggestions. This software is not currently available online.


For my computer science capstone course, I worked with two other individuals on probabilistic music accompaniment software called Impromptica. The code is available here.


I implemented several algorithms in the Python and Go programming languages which I used to generate my homework submissions for an algorithms class rather than trace the algorithms by hand. Algorithms I implemented included:

  • Greedy algorithm for the coin-changing problem
  • Backtracking algorithms for the 0/1 knapsack, n-queens, and sum of subsets problems
  • Dynamic programming algorithms for the 0/1 knapsack, matrix chain multiplication, coin-changing, longest common subsequence, optimal binary search tree, and traveling salesperson problems
  • Approximation algorithms for the traveling salesperson problem using the nearest neighbor, shortest edge, and mininum spanning tree heuristics

The code is not currently available online.


For my software engineering course, I worked with three others on RoboCup 2D Simulation League agent software. The code is available here.


Information-theoretic task scheduling

For my information theory class, I researched how the notion of entropy could be used in task scheduling. A copy of my report is available here.


Kansas Biological Survey

As a student employee at the Kansas Biological Survey, I finished migrating the Survey's website to Django and migrated several of the Survey's initiatives' websites into Django as well. KBS' website has since moved to a university-wide content management system.

Roving Imp Theater

The Roving Imp Theater is an improvisational theater in the Lawrence/Kansas City area that I took classes at. I created the Roving Imp's Django-powered website, which is no longer online.