About

I'm a computational chemist by training. My doctoral work was about representation — how you take something as messy as a molecule, with its shape and charge and the way it behaves in water, and turn it into something a model can actually learn from. I spent years designing those representations and the software that generated them, and the lesson stuck: most of the hard part is in how you frame the data, not in how complicated you make the model.

That instinct has followed me into a lot of rooms. I've prototyped data systems for an early-stage startup, pulled usable signals off wind turbines through their vibration, and built clinical machine-learning models where the interesting question turned out to be where the data came from, not which algorithm you ran. Different domains, same problem underneath: noisy, inconvenient information that has to be made useful before anything else can happen.

Somewhere along the way I also learned I like building the structures that let other people work — programs, curricula, the governance of a volunteer organization. I've directed an outdoor education program, chaired a nonprofit board committee, and written more charters and training manuals than I expected to enjoy writing. It's the same work as the technical side, really: figure out the system, make it legible, hand it off so it lasts.

These days a lot of that curiosity runs through infrastructure I run myself — a home network and a set of small cloud services I treat as if they were production, because that's how you actually learn. This site is where I'll put the results: projects and how I built them, technical notes, recipes, and field notes from climbing and the mountains, which is where I spend the time that isn't in front of a screen.

I care about work that's honest about its limits. If something is a prototype, I'll call it a prototype. That's the spirit I want the rest of this site to have too.