Projects
One of my goals is to launch at least one new project every year. I’m making small bets and staying comfortable with failure.
2026
Yes, It’s a Problem: An OpenAI-powered hobby application that confirms all your fears.

2025
Don’t Stay Stuck: A Debugging Guide for Rising Engineers. Debugging is one of the most difficult programming skills. It’s also a skill you can learn, and that’s the purpose of this guide.

2024
“Technical Book About Testing”: I wrote a 30K-word draft of a technical book about automated testing. It’s on pause.
2023
Maine JS: I took over as organizer of this Meetup in 2023. Along with my co-organizers I’ve rebranded, reinvigorated, and grown group membership 5x through a series of monthly events.
2022
Newsletter: As of 2026, this is an additional channel for my blog posts, with some subscriber-only thoughts and content.
2021
React Explained: I launched this React-focused newsletter during the pandemic, publishing thirty issues about the latest news and advancements in the community. Revue has since shut down and issues are no longer available on the internet.

Hashshake: A small application to foster communication and camaraderie between remote teammates. It chooses pairs of coworkers to meet for informal, 20-minute conversations via a Slackbot message.
2020
FinTech Startup: For a year I moonlighted as CTO and co-founder of a FinTech startup. We built an MVP web application in React and TypeScript and an API in Ruby on Rails. We built something I am proud of and I learned a lot.
The Bell: The Bell was a pandemic-inspired social-distancing art project I created and maintained from March–October 2020. Over the life of the project, The Bell was clicked over 4K times.

2018
SQL Workshop: Jack Christensen and I built this full-day, hands-on SQL curriculum for the Code Platoon programming bootcamp. We’ve taught it live about ten times.
Conway’s Game of Life: This is my React/TypeScript implementation of the classic cellular automaton and programming puzzle, Conway’s Game of Life.

JavaScript Equality: I built this React/TypeScript application to demonstrate the difference between twoquals and threequals in JavaScript.

2016
PG Casts: PG Casts is a series of screencasts about PostgreSQL. My coworkers and I built it together during downtime at Hashrocket. I helped create the idea, build the site, and wrote, recorded, and edited six screencasts as one of the founders.
Capybara::Webmock: A Rubygem to speed up your integration tests. Co-written with Dillon Hafer.
2015
Today I Learned (Application): TIL was my apprentice project at Hashrocket. It has grown into a popular developers blog with over 3K posts, millions of page views per year, and the top-ranked answers on Google to many an esoteric question.
Ceramic Nation: Ceramic Nation was an autogenerated internet novel, one chapter per day, supported by a Ruby gem I wrote called Remarkovable. From 2015-2022 it produced nonsensical, occasionally inspired prose informed by a corpus of classic literature.
Today I Learned (repository): Technical articles; needless words omitted.
cap-driver-benchmarking: Benchmarking the performance of the drivers available for use with Capybara.
2014
jakeworth.com: The site you’re reading now. Learn, write, repeat.
Talks
I’ve delivered dozens of technical talks across the country. Here are my favorites. Today, I focus on short talks at MaineJS.
Observing Change: A Gold Master Test in Practice
Abstract: Tests try to observe change. But are some systems too big to observe them all? What if we need to test a function with a very complex output?
In this talk, we’ll explore a Gold Master test– a special test for evaluating complicated legacy systems. We’ll look at how this test takes an input, such as a production database, runs it through a transformative function, and then compares the output to an approved version of the output.
Testers of every experience level will leave this talk with a new technique for evaluating complex environments, and a broader conception of what a test can be.
Format Your Elixir Code Now
Abstract: Elixir master now contains a formatter that automatically formats your code to match a community style. Which might lead you to ask: Why should I use it? How do I set it up? What is it going to do to my code?
Wonder no more! In this talk, we’ll seek answers to these questions. We’ll locate Elixir’s moment in the history of this idea, review the best arguments for and against autoformatting, and witness how it changes a real OSS Elixir/Phoenix application.
Elixir mixologists of every experience level will leave this talk with a better understanding of this important tool, and a deeper grasp of the persistent debate around code style.