I ripped the color of failure
out of my calendar

Aug 29, 2026·5 min read

The instruments meant to keep you going — streaks, completion rates, red "incomplete" markers — fire loudest at the exact moment you're about to leave.

There's a specific kind of night: you lie down having finished half your list, and the only thing your brain replays is the half you didn't. Strange accounting — on days I attempted nothing, zero brought no guilt. Only the days I tried earned me a beating.

Watching where things actually collapsed, I found a pattern. It was never difficulty. The collapse always came right after missing once. Skip one gym day, quit for six months. Break a diet at lunch, write off the day. Psychologists call it all-or-nothing thinking: facing a broken streak hurts more than deleting the whole attempt, so the brain deletes the attempt. (I wrote about the mechanism in the previous essay.)

Then I looked at my todo app and realized it was an all-or-nothing machine. Streak counters. Weekly completion percentages. A wall of red waiting after a week away. Every instrument measured how much I failed, and fired loudest exactly when I was most likely to leave. The tool built to keep me going was the thing pushing me out.

So I built the opposite. These are the actual design decisions.

1. No color for "incomplete" in the calendar

Not a lighter red — no encoding at all. A missed day renders as blank. Past-due items get a "try it" badge instead of a strikethrough: an invitation, not a debt. Opening the app after a week away should give you nothing to flinch at.

2. No denominators anywhere

The end-of-day card says "You did 3 things," never "3/40 done." There's a comment in the codebase that reads No %, no N/M, no progress bar. Removing a number is easy; the hard part was keeping the decision everywhere. A countable thing begs to be counted, and every new feature tempted me to sneak a ratio back in.

3. The celebrated event is the comeback, not the finish

No streaks. When you return after days away, the app celebrates the return instead of auditing the gap. The AI coach is explicitly forbidden — in the prompt, as a hard rule — from asking why you disappeared.

4. The coach names things

The coach keeps three-tier memory of your goals and today's tasks, so instead of "You got this!" it says the actual thing you did. Generic encouragement bounces off; specific recognition sticks. And on a day you did nothing, the evening card still arrives: it's fine — tomorrow starts small.

The bet underneath all of this: for ordinary people with jobs and rent — not elite athletes — what decides the outcome isn't intensity. It's whether the door is still open when you come back.

Solo developer. Built and ran it in Korean first; the English version opened this week. Stack: React 19 + Vite, Gemini with an OpenAI fallback, Firebase, fal.ai for images. No signup needed to look around.

Next essay — Only halfway, or halfway there

Try SecretCoach