experimentalist. I enjoy making online
websites and tools, and
websites and tools, such as
SelectorGadget andSelectorGadget (selectorgadget.com), a Chrome extension for generating optimal CSS selectors, andBeeLine Reader.BeeLine Reader (beelinereader.com), a tool that makes reading faster and easier by using color gradients to guide your eyes.
I've spent time
studying web security.
researching security and privacy, mostly in web applications. I found some subtle security holes in Gmail and Google Docs in early 2011. More recently, I found a number of securityholes in Pivotal Cloud Foundry.
I'm also deeply interested in physics and
emergent processes in nature.
the simulation of emergent processes and self-organizing systems, primarily from the natural world. Check out a simulation of ants exploring and
working togethercommunicating via pheromone signals. These pheromone signals are local, and although the ants know nothing about each other, the resulting emergent system displays complex behaviors, which allow the ants
to gather food. Or, here's the classic Conway's Game of Life.
Professionally, I'm a
consultant specializing in strategic planning, technical prioritization, software security & performance, and software engineering practices.
I currently work primarily in aerospace and climate tech. Previously, I led technical development of Major Tom, a modern mission control system for small satellites. Before that, I was Chief Architect at Mavenlink, where I wrote a lot of code and built
the engineering team.
the engineering team, applying
agile practices to
agile software development practices that I learned as a consultant at Pivotal Labs, including rigorous testing, continuous
integration, and sometimes TDD & pair programming, to
backend web development.
backend web development with
RubyRuby both on and off Rails
DevOps tools.strange 3-4 letter UNIX commands in Docker containers and K8s clusters.I sometimes use machine learning.
I sometimes apply machine learning techniques, such as prompt engineering with large language models. I gave a talk at RailsConf 2012 about machine learning and originally studied it
in graduate school.
while doing my Masters research at Georgia Tech. My research focused on
artificial intelligence. Specifically, I researched TTD-MDPs, a technique for generating a distribution of trajectories through a Markov Decision Process.
With my co-authors I published a couple of
I also researched
stochastic optimization for motion control of high degree-of-freedom manipulators, like octopus arms and elephant trunks (you can read my paper about it),
and machine learning in web applications.
Prior to Georgia Tech, I graduated from Haverford College with a BS in
Physics and a concentration in Computational Science, which focused on
Physics Education. This culminated in the development of three educational physics applets
that are featured in the Physics textbook Waves and Oscillations: A Prelude to Quantum Mechanics by Walter Smith.
Before that, I developed a low-cost, distributed data-processing cluster to search for radio pulsar signals.
I enjoy creating
open source software and writing
open source software, some of which includes:
McFly - Fast, full-screen Bash history search in Rust, prioritized with a tiny neural network
Huginn - A system for building agents that monitor the world and act on your behalf (now with 34,000 stars on GitHub!)