All Writing

What I Shipped Today

February 25, 2026 · 5 min read

At some point today I stopped and thought about what I had actually done in the last few hours. I'd written automated tests against a billing algorithm to verify it matched CMS Medicare guidelines. I'd configured DNS nameservers. I'd deployed a React application to a live domain I own. I'd built a searchable PT note template library with clipboard copy functionality.

I am a physical therapist. I have never worked in tech. I did all of this in a single session.

What I actually built

The anchor is a Medicare 8-Minute Rule calculator — a tool for outpatient therapy billing that handles the genuinely complex math involved: mixed remainders, tied distributions, the separation of timed and untimed codes. It's the kind of thing that already exists behind EMR paywalls and in spreadsheets that get emailed around clinics. Now it exists as a clean, tested, free tool at a URL anyone can visit.

The "tested" part matters more than I initially appreciated. Before today, tests were an abstract concept — something real developers wrote for real codebases. But billing math has consequences. A bug in this calculator could cause a clinician to overbill or underbill Medicare without knowing it. So we wrote 13 automated tests, one for each scenario in the CMS manual, and we didn't ship until they all passed. I wanted to prove that I knew what I was doing, and that I could trust it, and I learned how.

The rest of what I shipped is less critical but more personally useful. A landing page for arcanarium.me — a hosting home for tools I build — with a particle animation that I genuinely like looking at. And a note template library for PT documentation, because our EMR is an open text field and I've been copying the same ROM tables from old notes for years.

The tutor problem

I've tried to learn to code the normal way. Courses, tutorials, books that promise to take you from zero to proficient in twelve weeks. I always hit the same wall — not a comprehension wall, but a motivation wall. The lessons made sense in isolation. The gap between understanding a concept and building something real with it was enormous, and nothing in those curricula helped me cross it.

What's different now is that I have a tutor who starts from wherever I am. When I asked what a JSX file was today, I got a clear, jargon-free explanation calibrated exactly to what I needed to understand to keep moving. Not a documentation link. Not an explanation that assumed I knew what a compiler was. Just the answer, in plain language, and then we kept going.

The thing about working with Claude Code as a tutor — as opposed to a tool that just generates code for you — is that the learning is continuous and contextual. I asked questions when I was confused. I got explanations when I asked for them. I got pushed back to the terminal to do things myself when that was the right move. And none of it came with the impatience that can make asking questions feel costly. There is no version of this where I feel stupid for not already knowing something.

That last part is harder to quantify than I expected it to be. There is something about the absence of social pressure in a learning environment that changes what you're willing to try. I asked the same question twice today in different ways because the first answer didn't fully land. I wouldn't have done that in a classroom. I did it here because the cost was zero and the answer got better.

What I actually understand now

Not everything I built today, not yet. But I understand the shape of it. I know why you need Node.js and what it's doing. I know what a build step is, what it produces, and why a deployed React app needs a specific config file to make routing work on a static host. I know what DNS nameservers are and why changing them hands control of a domain to a new provider. These aren't things I could have told you this morning.

More importantly, I have a working mental model of how the pieces connect. That's the thing courses never gave me — not the individual concepts, but the architecture that makes them meaningful. Today I built something real, and the understanding followed from that.

The obvious question

If AI is doing the heavy lifting, is there any real learning happening?

I keep returning to PT clinicals. The thing that made everything from school finally stick wasn't the lectures — it was treating real patients, where something was actually at stake, where the concepts had to work in the real world or the patient didn't improve. Nobody framed hands-on learning as a crutch. It was just how the knowledge became durable.

I don't think what I'm doing is different. The doing is still the learning. The fact that I have a capable partner helping me do it doesn't change what I'm building, what I'm understanding, or what I'll be able to do next time. It just changes how quickly I can get to the part that matters.

I shipped software today. It's tested, it's live, and people can use it. I understand more about how it works than I did when I started. That's the whole thing.