I am a PHP, Go and TypeScript developer based in Minneapolis.
I work across the entire stack, but I’m happiest in the backend. Moving data, pushing bytes around, making things fast.
I ❤️ tiny reusable parts with single responsibilities and no side effects. I keep code simple, clear, and easy for anyone to read.
I’ve spent fifteen years in EdTech keeping old systems running and new ones from catching fire. Before that I built industrial and B2B tools where things had to work because people depended on them.
I’ve been modernizing my small Go and TypeScript tools: gifopt, appsettings, and wordwrap now have Go 1.27 coverage, while CsvToMarkdownTable moved from ESLint to Oxlint and Oxfmt with a dedicated quality check. I also tightened its CLI testing so inputs are exercised without shell-built commands in the formatting and linting change. (github.com)
I’ve also been spending time outside my personal repositories. In Exporter, I’m adding streamed XLSX output with integration coverage, using the project’s existing ZipStream foundation; the XLSX work is now under review. Over in Shielded.dev, I’ve been helping standardize frontend formatting with Oxfmt alongside Oxlint. (github.com)
I keep coming back to the value of turning technical problems into concrete, reviewable changes—and to being careful with automation that can imitate progress without necessarily building understanding.
Last update: 2026-09-08






