Sitemap
A list of all the posts and pages found on the site. For you robots out there, there is an XML version available for digesting as well.
Pages
Posts
The Datomic Peer Is a Cache. Here’s What That Means Under Load
Published:
A few days ago I was running a Datomic load test. Nothing fancy — a Clojure application using the Datomic Peer library, backed by a PostgreSQL Transactor, with Locust driving HTTP requests against a Ring API. I had just replaced the fixed step load shape with an infinite ramp: +100 users every 30 seconds, starting from 1.
Pulso Dashboard: From Zero to a Tested, CI-Ready Dashboard in Under an Hour
Published:
A few months ago I built Pulso, a streaming ETL pipeline that loads 3.4M+ Apple Health records into PostgreSQL. The data was sitting there in normalized tables, ready to be visualized. Today, in a single session of less than one hour, I shipped a complete analytics dashboard: Django backend, React + Chart.js frontend, 23 unit tests, and a CI pipeline — all green and pushed to production.
Adding a Progress Bar to a Streaming ETL Pipeline
Published:
After optimizing Pulso’s ETL to 4.4 minutes, I realized I had a new problem: staring at a silent terminal for four and a half minutes wondering if anything was happening.
13x Faster: Optimizing Pulso’s ETL from 57 Minutes to 4.4 Minutes
Published:
Two weeks ago I built Pulso, an ETL pipeline that loads Apple Health XML exports into PostgreSQL. It worked, but loading 3.4M records from a 1.5GB file took 57 minutes. Today I got it down to 4.4 minutes.
Pulso: Building a Production-Grade ETL Pipeline in an Afternoon with Claude Code
Published:
I just shipped Pulso, a complete Apple Health XML to PostgreSQL ETL pipeline that processes 1.5GB+ health exports and loads 3.4M+ health records into a normalized relational model. What’s remarkable? The entire project—from concept to production—was built in a single afternoon using Claude Code with human supervision.
Clojure and Homoiconicity: When Code Is Data
Published:
If you’ve spent enough time around Lisps, you’ve probably heard the phrase “code is data”. It sounds like a platitude until you actually experience it. Clojure, a modern Lisp hosted on the JVM, makes this idea tangible through a property called homoiconicity — and once you internalize it, it changes how you think about programming languages in general.