Projects
Take a look at some of the projects I’ve worked on. Many of these, plus some other smaller endeavors, are on my GitHub page. Some of the more recent ones are currently internal to the National Renewable Energy Lab, though I hope to eventually make them more publicly accessible.
Projects highlighted in this color are ones I’m currently working on or have worked on since the beginning of 2025.
Doing Science
Neurosymbolic AI for Planning
Can AlphaZero learn to generate programs from CFGs to interpretably optimize the planning of real-world systems like the power grid? We’re working on it!
ML Optimization Surrogates
Can machine learning optimization methods like DC3 be extended with graph transformers to solve mixed-integer power grid programs? Early results are promising!
NOAA: AI Arctic Boat Navigation
Can computer vision techniques like semantic segmentation be used to help a robotic sailboat avoid running into Arctic sea ice? Probably!
Making Software
PowerAnalytics.jl
An open-source, user-centered, flexible analysis framework for power grid simulation results in Julia, presented at JuliaCon 2025.
Sienna Cost Representations
A major upgrade to how power generator cost functions can be represented in the Sienna open-source power grid simulation platform.
NREL: OpenPATH
An open-source, sustainability-oriented transportation research app. I created the system design and user interface for auto-filling AI-inferred data.
Exploring Concepts
Microcontroller and FPGA Reaction Wheel Cat
Inspired by cats, designing a device that uses an IMU, a PID controller, and a reaction wheel to always land on its feet.
Convex Optimization Notebooks
Implementing some of the algorithms I learned about in my graduate-level convex optimization course as Jupyter Notebooks.
Shift-Reduce Parser in Haskell
Writing a shift-reduce parser for a sample LR(0) grammar from scratch for a Compiler Design final project.
Thin Group Matrix Investigation
Testing out some abstract algebra-related properties of long matrix products using Numba and other high-performance Python techniques.
Communicating Ideas
TSL Opinion on Climate Misinformation
Overcoming modern bad-faith arguments against climate action requires responsible citizenship from all of us.
CMD-IT/ACM Tapia Conference BoF Presentation and Discussion
Small liberal arts college computer science departments face some unique challenges — but also have unique tools to bring to the table.
Older Science and Software
NextEra Analytics: Power Grid Data Science
Can basic machine learning predict the power needs of a city? Yes! Figure out when a house is charging its electric car? Future work!
Minnesota Regional Climate Modeling
How do regional climate models predict Minnesota’s climate will change over the next century? Hotter and less snow!
Iznik
A browser-based multiplayer adaptation of the board game Azul, created using React and Flask.
HOMAR
An object-oriented, modular Java library bringing holonomic drivetrains, control algorithms, and more to the FIRST Tech Challenge robotics competition.
Other Fun Stuff
Pi Calculating Programs
For years, I’ve been interested in calculating pi in various ways — to many digits, with as little code as possible, explainably, in exotic languages….
HOMAR Animated Logo
My HOMAR library (see above) needed a cool logo, so I learned Inkscape and made one — and then animated it….
Silent Journey Fractal Programs
I’ve been programming for quite some time. Here are some fractal visualizations I made as a 13-year-old in Montessori junior high….