Software

Things I build now, mostly on my own time.

NowIn progress

The Philosopher's Pot

AI rules · Markdown · Cursor

A user-owned "brain" for AI tools that keeps your voice and judgment in what the AI writes for you, instead of the average of the web. Part product, part article series.

2026

Honeydew

.NET 8 · Vue 3 · TypeScript · SQLite

Notepad-simple "honey-do" lists for households and small crews. Multi-tenant, with JWT auth, a REST API, roles and permissions, CSV export, and support tickets, built with a production mindset.

Personal projectUnpublished

Fitness log

SQLite · charts

I record workouts in freehand notes like "Squats: 4x12x60" (4 sets of 12 at 60 lbs). Paste them in and the app parses everything into a database, then lets you build custom charts of your progress over time.

2026

This site and philosopherspot.com

Astro · Cloudflare Workers · D1

Both sites were built by delegating to AI - with my own rules keeping it on track - and deployed on Cloudflare, with an email waitlist stored in a database I own.

2025

MIND UP: AI chatbots at work

Course · presentation

A presentation I built for my company on using generative AI safely and well: what chatbots are, safety and ethics, practical uses, and prompt craft. Its core habit is "try it first": do your own thinking, then let AI review and polish.

At work

Highlights from my day jobs.

Cloudvirga

AI pull-request bot & agent context rules

An AI reviewer for pull requests, plus the context rules that let AI coding agents work reliably in a large production codebase.

Cloudvirga, 2021-now

Engineering standards

Standards across AI governance, API design, .NET coding, and UX patterns, and a hand in turning several waterfall teams into fast, consistent agile ones.

Cloudvirga

Encompass SDK-to-API modernization

Led a complex, company-wide overhaul moving our Encompass integration from its legacy SDK to the modern API.

Bently Nevada (GE / Baker Hughes), 2017-2021

Machinery condition monitoring

Security-critical software that monitors industrial machinery for customers worldwide, with a big push on automated end-to-end testing.

LoadIQ, 2014-2017

Energy disaggregation (NILM)

Python · Django · NetworkX · scikit-learn

Unsupervised algorithms that split a building's single power signal into individual appliances, using graph theory over steady states. Ranked #2 in an independent EPRI evaluation in 2016.

Research

From my PhD at West Virginia University and a summer at NASA Ames.

2014

GALE: the Geometric Active Learner

Python

A multi-objective optimizer that finds good solutions in a tiny fraction of the model runs that standard genetic algorithms need: 30 to 50 evaluations instead of thousands.

2013-2017

JMOO

Python

Joe's Multi-Objective Optimization: a framework of problems, algorithms, and statistics for comparing optimizers fairly.

2013

Safer landings at NASA Ames

Python · C++

Applied GALE to Georgia Tech's Work Models that Compute, a simulation of pilots coordinating tasks on approach, and found mitigations for missed or delayed tasks.

Games

A couple dozen small games over the years, from a high school Monopoly spin-off to a Dragon Warrior remake. Here's most of them.

2021

Dragon Warrior clone

Python · Pygame

A remake of the NES original.

2017

Evolution (C#)

C#

The Lua evolution simulation, rebuilt with a friendlier interface.

2016

Matching Game

Java

A memory matching game.

2014

Lights Out

Java

Press buttons to put out all the lights - each press toggles its neighbors too.

2014

Hangman

Java

Guess the word before you run out of tries.

2013

Pyranos' Treasure

Inform

A short work of interactive fiction set in a small puzzle world.

2013

Pysteroids

Python

Asteroids with particle effects and simple vector graphics, where you fly the ship even through the menus.

2012

Qubey's Deep Dungeon

Java

The full version of AiMazed, the Lua prototype below, rebuilt with real art and music from professional artists.

2011

AiMazed2D

Lua

Randomly generated dungeon mazes, solved by an AI agent that finds the key, then the exit.

2010

Attack of the Robots, Grand Theft Wumpus, Evolution

Lua

Remakes of classic AI games, plus a survival-of-the-fittest simulation.

2010

Dimensia

C++ · OpenGL

A Zelda-like where you dial four dimensions of fun - story, creativity, gameplay, and replayability - up or down and watch the game change. Early research for my book.

2008-2009

Getris and Blokuest

C++ · OpenGL

A 3D Tetris showing off shaders, lighting, particles, and reflections, and a 3D puzzle game about maneuvering mini-dungeons.

2006-2007

Rocelia, Bingo Quest, Avalonn

VB.NET · Java

A story-driven RPG with a huge scrolling overworld, Bingo with an RPG twist, and a valley of enemies that roam, sleep, and think with neural networks.

2003-2005

Murdock Dungeon and Joenopoly

Ada · Visual Basic

A turn-based dungeon crawler in a terminal window, and my high school senior project: a Monopoly spin-off.

Strategy guides

Fan guides I wrote and designed in my spare time.

2012

Final Fantasy Mystic Quest strategy guide

An 81-page walkthrough with full-color maps and appendices for items, weapons, armor, magic, and battlefields. About 95% done - the bestiary never got finished.

2012

Dragon Quest V strategy guide

A 52-page walkthrough and strategy guide for the SNES classic. About 60% done.

2014

Guild Wars 2: a 35-minute farming route

A route for farming rich platinum and iron veins, written as "Tanza."