About Me

I’ve learned to make code small, simple, and readable. I gravitate towards functional and language-oriented-programming. Good use of rich type systems, run-time reflection, and declarative APIs can help reduce ceremony, spaghetti code, and bugs.

I love building and fixing systems so they can be managed simply and quickly improved upon.

As a programmer, my first principle is user experience. Like most of us, I am disappointed by lousy software every day, and I use that dissatisfaction to set a high standard for my work. The first end user is the next person who must understand and add to the code.