Web Apps
How good are the latest and greatest LLM agents?
September 20, 2025 | ~1600 words | 8 min read
I built a simple Streamlit web app for a DIY electrolyte mix recipe. Embracing the "vibe coding" lifestyle, I decided to let a Claude agent do most of the work for me. Here's how it went. (Spoiler: pretty good but far from perfect)
Messing around with Kalman filters to fix noisy Strava activities
September 26, 2022 | ~2500 words | 12 min read
I use Strava to track my runs, and sometimes I'm annoyed with how noisy the GPS tracks are.
I recently learned about Kalman filtering, a methodology for smoothing noisy data.
Let's see if it can solve my Strava problem.
Plus, a small Flask app that integrates with the Strava API.
Analyzing the impact of possible changes
September 6, 2022 | ~1000 words | 5 min read
Some of my fantasy football league members want to make changes to defense scoring settings. I'm not sure it's a good idea, or if it even matters at all. Let's find out! Featuring a Streamlit web app and the (ugly) Yahoo Fantasy Sports API.
November 8, 2021 | ~1100 words | 6 min read
I wanted to try out the popular FastAPI framework. As a learning exercise, I reproduced a simple Flask tutorial using FastAPI.
And using it to prove that I’m a terrible poker player
September 26, 2021 | ~2700 words | 13 min read
Elo is a rating system for two-player games, such as chess. I developed a Python implementation of a generalized Elo system that works for multiplayer games. Then I built a web app to track the Elo ratings of my friend group's poker games. At the risk of personal embarrassment, I'm publishing the results.