TSTodd Sullivanintoddsullivan.hashnode.dev·May 11 · 3 min readBuilding Personalised On-Device ML for Women's Health: No Cloud, No Population AveragesMost health AI is built on population data. Your symptoms are averaged against thousands of other people, and you get a generalised prediction that fits nobody perfectly. I took a different approach with Menopause Intelligence — an iOS app I've been ...00
TSTodd Sullivanintoddsullivan.hashnode.dev·May 11 · 3 min readThe Fastlane gym Export Options Trap (and Why Your Provisioning Profile Is Being Silently Ignored)Spent a few hours last week debugging a CI failure that had no right to be as subtle as it was. The build archived fine, but exportArchive kept dying with: error: exportArchive: requires a provisioning profile with the App Groups feature. The frustra...00
TSTodd Sullivanintoddsullivan.hashnode.dev·May 8 · 3 min readClaude as a CI Co-pilot: Debugging Apple Signing Hell So You Don't Have ToThis week I spent a few hours debugging a fastlane CI pipeline that was failing on every single run with Apple provisioning errors. I paired with Claude the entire time. Here's what that actually looks like — not the polished "AI helped me code!" ver...00
TSTodd Sullivanintoddsullivan.hashnode.dev·May 6 · 3 min readBuilding an Offline-First Livestock Counter with YOLOv8 and CoreMLI built a livestock counting app for smallholders. No internet required, no subscription, no server. You take a photo of your chickens, sheep, or cattle, and it counts them — entirely on-device. Here's how it actually works. The Problem Smallholders ...00
TSTodd Sullivanintoddsullivan.hashnode.dev·May 4 · 3 min readWhen Your Training Data Pipeline Has Three Different Ideas About the Same ThingIf you're building ML pipelines that consume data from multiple API endpoints, you've probably hit this: the same thing — a product, a user, a record — arrives in three subtly different shapes depending on which path it took to get to you. We hit thi...00