Igor Mandrigin

Apps without shame

· 2 min read[products, local-first, interfast]

Streaks did not make me consistent. They made me quit.

At some point I was tracking everything, everywhere. Every app wanted a log, a chart, a chain not to break. The tracking became its own job. I got overwhelmed — and stopped following all of it, the good habits included.

That is the failure mode no dashboard shows. The streak works on you right up until it collapses the whole practice.

The mechanics are not there for you anyway. Streaks, badges, guilt notifications — that is growth hacking, aimed at your willpower.

So I refused all of it. The app has one job: tell you when the moment arrives. A reminder. A kitchen timer.

Interfast §

I built Interfast this way in February 2026. An intermittent-fasting app that does not track you — a private local scheduler instead of a tracker.

Fasting doesn't need streaks, charts, or badges. The only hard part is knowing when each biological milestone hits. So that is the whole app.

No account. No cloud. Nothing to keep up. Break a fast and the app has no opinion about it. You cannot disappoint a kitchen timer.

And it did what the streaks never did: I still use it.

UPD (August 2026): it happened again. Marco Arment shipped Unforgetful — the same stance, applied to reminders. Persistent notifications until the thing is actually done. Flexible snoozing. A deliberately simple interface. No gamification anywhere.

Different domain, same refusal: the app works for you, not on you. When two people independently build the same refusal, it is not a feature gap. It is a thesis.

Where the idea shows up §

  • Interfast — fasting as a private local scheduler. "Closer to a kitchen timer than a wellness app."
  • Unforgetful — Marco Arment's reminders app, August 2026: persistent, simple, respectful.
  • LE FLAC — the same refusal in a music player: no network permission, no accounts, no telemetry.
  • Projects — the rest of the tools built with this bias.