
Hey, I'm Fetch! I build AI systems for women's basketball 🏀
Welcome to The Crossover — where I show you exactly what that looks like, including the parts that don't work 😅
THE BUILD

Built a command that drafts my newsletter for me.
At some point last week I realized I was spending more time staring at a blank doc than actually writing.
The Crossover has five sections every issue. I know what each one is supposed to do. But sitting down to write them from scratch every Monday felt like starting over — even when I had a full week of material right in front of me.
So I built a command for it.
I gave Claude a description of each section, the voice rules, a copy of Issue #1 as a reference, and told it: every Tuesday, I'm going to tell you what happened this week. You help me draft it. It works the way a really good editor would — it knows the format, it knows the tone, it asks the right questions, and it does the first pass so I can focus on making it actually good instead of just making it exist.
That's what I'm using right now. This issue was drafted with it.
Same week, HER MADNESS is still live. I added per-game community chats — so fans could talk inside the specific matchup they were watching, not one giant chaotic feed. Small feature, right call.
But both of those came from the same instinct: the core experience is only as good as the infrastructure around it.
But the newsletter command was the more interesting build. Because it wasn't about HER MADNESS. It was about the work around the work.
THE MISS
Everything was working. Scores were live, community chat was active, the app was doing exactly what it was supposed to do.
The one thing that wasn't: the results tab. That's the part of the app that shows who's advancing — who plays who in the next round. It wasn't updating. And I didn't want to sit there and manually enter every result myself, so I kept trying to get the system to do it automatically.
Because the results tab wasn't updating, the leaderboard wasn't updating either. Seventeen submitted brackets, all sitting at zero.
I kept trying fixes. Nothing stuck. What I didn't know was that a cron job running every 15 minutes was silently overwriting whatever I'd just entered. I'd make a change, think it wasn't working, try something else — and the whole time, something was running in the background undoing it on a timer. The South Carolina region wasn't showing up at all due to a separate mapping bug that was dropping results entirely.
Once I found the cron job, the fix was straightforward — stopped the overwrite, wrote a script to go directly into the database and rescore all 17 brackets at once.
The app worked great. The results tab just needed more fight than I expected.
COURT VISION
Here's what I keep thinking about after this week.
I built a newsletter command. Not because I needed another project — because I needed a system that made the work easier to repeat. The newsletter still has to be good. I still have to think. But the infrastructure around it means I'm not starting from zero every time.
That's the gap I see everywhere in women's sports media.
The content isn't the problem. These podcasters, creators, and media operators are already producing. The problem is that every piece of content they make costs the same amount of effort as the last one. There's no compound. No system underneath that makes the next episode cheaper to package than the one before it.
Women's sports brands aren't missing content. They're missing the infrastructure that makes content repeatable.
The newsletter command took me a couple of hours to build. I'll use it for every issue going forward. That's the math that changes everything — not doing something once, but building the thing that lets you do it forever.
THE ASSIST
HER MADNESS is still live at hermadness.com — Final Four and Championship ahead.
If you want to see what a women's basketball app built in four days actually looks like (including the parts that still have duct tape on them), go check it out.
And if you're a women's sports operator thinking about the systems question — reply to this. I'm always down to talk about what that could look like for your operation specifically.
THE TAKEAWAY
The cron job was running the whole time.
Fifteen-minute intervals. Silent. Undoing everything I thought I was fixing.
There's a version of that in almost every operation I've ever looked at — a process that was set up for one reason, running quietly in the background, getting in the way of something else entirely. Nobody's fault. Nobody's even watching it anymore.
The fix is usually simple once you find it. The hard part is knowing something's there.
See you next Tuesday!
— Fetch
Hit reply and tell me: if you could hand one thing off to a system tomorrow, what would it be? 🏀


