Feb 2026 - Present
Tiny Thoughts
ABA Clinical Data Collection Platform
22,940+
discrete trials recorded in 9 weeks
The Problem
The agency was paying three thousand dollars a month for Rethink BA — an enterprise platform built for large clinics, not a small agency where therapists work in living rooms and basements. Trial recording was buried under menus. Mastery tracking lived in spreadsheets. The software was getting in the way of the children.
They needed something built for how they actually work: a therapist, a tablet, a child, and nothing between them but one tap.
The Solution
I built the replacement in seventy-one days. The core insight came from watching therapists work: they’re holding a child’s attention with one hand and tapping a screen with the other. Every interaction must be fast, forgiving, and reachable by a thumb. So I designed 140-pixel touch targets and a recording flow that a therapist can operate while a child is climbing on their lap.
The mastery engine is the centerpiece — it watches the data and tells the therapist when a child is ready to advance. Configurable criteria across three program types: how many sessions, what accuracy threshold, at which prompt level. When a child meets mastery, the system recommends a phase change. When a child regresses, it catches that too.
Clinical parameters cascade through three layers — organization defaults, template overrides, per-child customizations — so a supervising clinician can set policy once and still fine-tune individual cases.
Production Metrics
37
Active Users
22,940+
Trials Recorded
79
Children Managed
129
Mastery Events
537x
Trial Growth (9 weeks)
86K
Lines of Code
877
Commits in 71 Days
$3K/mo
Enterprise Cost Replaced
Architecture Decisions
Tech Stack
What I Learned
Domain complexity is where the real engineering happens. The mastery algorithm went through four iterations before it matched how clinicians actually think about progress. I spent more time in meetings with therapists than writing code — and that was the right ratio.
Property-based testing caught edge cases I never would have imagined — partial sessions, conflicting config cascades, boundary prompt levels. The domain kernel has zero known bugs. I trust it more than most things I’ve built.
When clinical decisions depend on your data, ‘good enough’ is not a concept that applies. Every trial, every mastery event, every phase change must be auditable and correct. Children’s progress is measured against what this system records.