Why I Prototype Motion Before Polishing Layout
→
Static layouts can look perfect and still refuse to move. By prototyping motion early, spacing, hierarchy and components evolve around how the interface actually behaves.
What I Write Down During a Youth Baseball Game
→
During youth baseball games, I let the app track the score and use my notebook for the human data: faces, failed drills, invisible players, and one actionable line per kid.
A Month of Ignoring Daily Body-Fat Numbers
→
I hid the body-fat tile on my smart scale for 30 days and watched only a 7-day rolling weight average. The results were calmer mornings and steadier habits, not worse progress.
Fluent emptiness and the missing Tuesday morning
→
A draft about my Withings scale sounded polished and personal, but it was fluent emptiness. Here is how I now spot that pattern and push writing back to real detail.
The boring training week I can actually repeat
→
My training week is aggressively boring: a fixed 20-minute kettlebell session, rec softball as a social anchor, wildcard days that can be nothing, and recovery as the actual plan.
The Hour I Lost to a Plausible AI Debugging Answer
→
A confident AI diagnosis of a React Native hydration issue sent me refactoring the wrong layer for 45 minutes. The real bug was a string "null" in the API.
The frontend code I deliberately keep boring
→
One feature taught me that a neat React state machine was less valuable than three plain useState hooks, and it changed how I choose boring frontend code.
The metric I stopped letting ruin my morning
→
For months my HRV score decided if I was allowed to feel competent that day. A 90-day experiment changed it from a verdict into one quiet input among many.
What My Automated Archive Exposed About My Writing
→
Reading a batch of AI-written posts in my Ghost archive made the patterns obvious: recycled transitions, invented habits, generic intros, fake closure, and why even a few real notes change the result.
When smooth animations make a fast site feel slow
→
A site can be technically fast and still feel slow if your animations sit between intent and feedback. These are the ones I shortened, simplified, or removed after watching real users.
Where Cursor Stops and My Judgment Begins
→
Cursor is very good at filling in the boring middle. Recent client work showed exactly where that stops, and where experience still has to say no.