The Daily
A note a day on APIs and the realities of shipping web applications. Stuff I've actually learned across 25 years of doing the work.
Twilio Voice: Building an IVR That Doesn't Make Callers Hate You
Twilio Voice gives you enough rope to build a great phone IVR — or a nightmare. Here's what I've learned from building real ones for clients.
Most phone IVRs are bad on purpose — designed to exhaust callers into giving up. Twilio Voice gives you the tools to build something that actually helps people. The question is whether you'll use them well or just automate the same bad patterns everyone else ships. I've built Twilio Voice IVRs for a handful of clients…
Read the daily →Resend Is What Transactional Email Should Have Always Been
I've sent email through a lot of APIs. Resend is the first one that didn't make me feel like I was wrestling with legacy enterprise software.
I've wired up transactional email through SendGrid, Mailgun, Postmark, SES, and a few others I've tried to forget. They all work, technically. But every one of them has that same energy — like the API was designed by a committee in 2012 and then wrapped in a React dashboard someone built during a hackathon. Resend…
Read the daily →Whisper Transcription: API vs Self-Hosted vs Groq
I benchmarked three ways to run Whisper in production. The latency gap between them is bigger than I expected, and it changes which one you should reach for.
I spent a few days last month wiring up audio transcription for a client — a telehealth platform that records short patient intake calls and needs the transcript available before the provider walks into the room. That constraint turned a simple "call the Whisper API" task into a real benchmark exercise. The numbers…
Read the daily →Claude Prompt Caching: When It Pays and When It Doesn't
Anthropic's prompt caching sounds like free money. It mostly is — but the billing model has a trap that'll catch you if you're not paying attention.
Prompt caching in the Anthropic Claude API looked, at first glance, like a pure win. Cheaper reads, faster responses, same output quality. Then I looked at the write pricing and had to recalculate a few assumptions. It still pays for itself in the right situations — but "the right situations" is doing a lot of work in…
Read the daily →SendGrid Domain Auth: What Actually Gets You to the Inbox
SendGrid's domain authentication isn't just a checkbox — get it wrong and your transactional email quietly rots in spam. Here's what I've learned the hard way.
The first time a client called me to say their password reset emails weren't arriving, I assumed it was a SendGrid outage. It wasn't. The emails were sending fine — they were just landing in Gmail's spam folder for every single recipient. The domain authentication was half-done, SPF was misconfigured, and nobody had…
Read the daily →