Blog

2023-01-01

2022

A quick review.

2022-07-04

Some angst around modern JS frameworks

I don't think I really get the "new wave" JS frameworks. I think they produce build artifacts that are optimized for the wrong thing.

2022-05-03

Data Driven Pull Requests

My system for running comparative benchmarks for Stork patches, and how it helps make sure Stork moves in the right direction.

2021-12-29

2021 End-Of-Year Work Setup

It's where I work, it's where I relax, it's where I plan my life, it's where I talk to friends, it's where I enjoy music, it's where I read the news, it's where I spend most of the hours of the day...

2021-11-26

25 at 25

I turned 25 this week. Here are 25 things I've learned in the past 25 years.

2021-09-19

Stork and Modularity

Splitting code into crates, the benefits of small public interface, and a combinatorial explosion.

2021-06-02

2021-05-25

The Sneaky Ubiquitousness of Subscription Pricing

Every purchase is subscription pricing if you squint hard enough. This isn't a bad thing.

2021-03-28

Stork in the News

Sharing press coverage of Stork from the past month.

2020-12-27

Stork Turns One: Building a search tool for static sites with Rust and WebAssembly

Stork, my web search side project, is launching publicly after one year of development. This post describes the goals I took on while building it and how I got from idea to release.

2020-10-31

2020-04-22

Running Command-Line Applications from a Mac App

You probably don't want to embed a command-line application in your Mac app. But if you do, I'll guide you along the dynamic library and Xcode configuration journey.

2020-03-16

2020-02-01

2020-01-16

Money Stuff

An overarching description of my financial setup, preceded by some of the concepts you need to know about in order to understand what you should do with your money. Meant to help someone go from basic saving to investing.

2020-01-03

A Bummer of a Postmortem

I recently sunsetted a project because the thing already existed. If I never wrote about it, it would be lost to the endless void of time, since I never talked about it anywhere else.

2019-10-21

2019-08-24

My Thought Process while Debugging a CORS error

Piggybacking on the previous post, a stream-of-thought post describing my own process for fixing a CORS error. Ends up as a Cloudfront configuration debugging session.

2019-08-18

Why do we encounter CORS errors?

An explainer describing what a Cross-Origin Resource Sharing error is, why they exist, and how to fix one once you come across it.

2019-05-31

Next

Starting work at Stripe.

2019-04-05

Bowdoin's Article about my Honors Project

Bowdoin's article about my Honors Project

2019-01-25

How to train the Tensorflow Object Detection API with custom training data

A guide to setting up a Tensorflow Object Detection system and training it with your own self-annotated data.

2018-09-14

2018-06-24

Learning and Making

What kinds of personal projects help you learn best? When can they stall learning? When should you build in order to learn, and when should you build in order to have something built at the end?

2018-04-24

Bringing back RSS won't decentralize web publishing.

The first post I ever wrote, about RSS's place on the internet in the era of online news and content distribution.

2018-03-20

The Most Efficient Github SSH Key Generation Process

I generate SSH keys a lot. Here's how to make them (and add them to your Github account) as fast as humanly possible.