Hi!

I’m Nick, a product engineer based out of San Diego. I’m energized by shipping, getting feedback, and iterating. I mostly write and review code in Ruby and TypeScript, but I’m excited to learn anything to build great products.

Today, I’m an engineer at Campsite. I previously built software at GitHub, Stripe, and Tuple.

Writing

How we made a Ruby method 200x faster

With the new version of the refactor deployed, we continued to see snappy interactions in Campsite. We had a great new foundation for transforming rich text, and we had a renewed appreciation for profiling and flamegraphs.

Stop paying the code-review productivity tax

Open PRs for tiny vertical slices. Let’s say you’re adding “widgets” to your application. A PR that’s all of the backend controller actions needed to support all CRUD operations on widgets is hard to review. Instead, start with a PR that introduces a blank page and a new URL behind a feature flag. Later, open another PR that displays some widgets on that page.

How I replaced a Rails app with a few dozen lines of Ruby

Even with all the magic that Rails provides, most apps need a whole bunch of things — like authentication, UI, background jobs, email sending, deployment — that aren’t unique to my idea. Next time I have an idea, I’ll look for ways to write less code and maintain less infrastructure, at least to get started.

Try ending today with a failing test for a great start tomorrow

Starting with a failing test means I know exactly what to work on: making it pass. Compared to an item on a to-do list, a failing test is better at returning my mind to the state it was in when I was focused deeply on the task.

Open source contributions

Projects

TypeScriptMochaWeb Components
A custom element that shows text as if it were being typed
JavaScriptJest
Did the activity in your Garmin FIT file have a negative split?
RubyRailsRSpecJavaScriptVue.jsGraphQL
Helps groups on the move choose a next spot