← All writing

I built dTime after pressing "15 more minutes" for an entire afternoon.

A short story about self-imposed limits, browser workarounds, the toggle I kept pressing, and the moment the real problem became impossible to ignore.

Jin Park Co-founder · Seoul

The first version of dTime didn't start as a product. It started as a screenshot I took of my own browser at 4:42 PM on a Tuesday: the same site-blocker prompt I had clicked at 2:15 PM, 3:08 PM, and 3:51 PM, asking me — politely, professionally, for the fourth time — whether I'd like fifteen more minutes.

I said yes. I said yes every time.

What I'm telling you is not a willpower story. I had installed the blocker because I genuinely wanted to focus. I had read the meta-analyses, drained the Pomodoros, archived the apps, set the screen-time limits on my phone. None of it was working. Or rather: all of it was working exactly as designed, and the design was wrong.

The thing the blocker couldn't see

Here is what was happening on my screen between 2:15 and 4:42. I'd opened YouTube to watch a 12-minute talk on React Server Components. The talk was good. The autoplay queued a follow-up that was also good. The follow-up queued a third that was related-but-tangential, and a fourth that was a casual recap of a JavaScript framework I don't use, and a fifth that was a vlogger I don't watch but who had a thumbnail I couldn't say no to.

To my blocker, all five of these were youtube.com. The first one was a research session. The fifth one was a loop. The blocker treated them identically because it only knew one thing about a tab: the domain.

Most focus tools are exquisite at solving the problem of "how much." They cannot tell you the problem you actually have, which is "why."

So I tried a different tool. Then another. Then another. The trackers told me I'd been on YouTube for 47 minutes; correct, but useless — they couldn't separate the talk from the drift. The blockers refused to acknowledge that the first 12 minutes had been legitimately useful. The timer apps assumed I knew, in advance, which work would and would not need YouTube to support it. None of them, I realized, were actually about focus. They were about restraint. Those are not the same thing.

The note that became a product

That weekend I wrote a note to myself in a plaintext file. I still have it. It said three things:

  1. The same domain is not the same activity.A YouTube tab opened from a Google search for "React hooks" is a different event than a YouTube tab opened from the homepage feed. A real tool would know that.
  2. Time on site is the lagging indicator.By the time my blocker fires, I've been drifting for 40 minutes. The signal I want is the cluster forming — the third short visit, not the cumulative hour.
  3. Restraint without explanation breeds bargaining."15 more minutes" works because the blocker can't tell me what I'm actually losing. If it could say "this is your third short visit after a deep work block — your usual pattern leads to a 90-minute drift," I would believe it.

I sent the note to two friends who I knew had the same problem. One of them — Mina, who had been building design systems at a series of startups and had her own version of the 4:42 screenshot — said: okay, let's actually try it.

The first six weeks

The prototype was embarrassing. It was a Chrome extension that wrote events to a local file and printed a single sentence at the end of each hour: You were focused for 38 minutes. Three short visits to entertainment sites came after the deepest block. No charts. No goals. No streaks.

I shipped it to seven friends. Three of them ignored it. Two of them stopped reading the sentence after a week. Two of them read the sentence every hour, on the hour, for six weeks straight, and one of them — Suh, who writes — sent me a message that said something like: I don't think I need this to do anything else. I just needed someone to say it out loud.

That was the moment I knew the product would work. Not because the prototype was good, but because the unmet need was specific. There is a particular feeling, after a busy day, where you cannot account for how the time went. You have a vague sense that you did some work, and a sharper sense that you did some not-work. The thing that's missing is not more discipline. It's a credible story about where the hours went.

Why dTime is the way it is

So we made a tool that tells you the story. A few choices fell out of that:

  1. Context, not category.YouTube is learning when it follows an active search; it's drift when it follows a deep work block. The page-level signal matters more than the domain.
  2. Cluster, not cumulative.The 7-minute mark of your third short visit is the moment that predicts the 90-minute drift. We surface it then, not at minute 47.
  3. Coach, not cop.The tone of the suggestion matters as much as the timing. "Here's what usually happens next" outperforms "Stop." We have a whole internal style guide; we'll publish it.
  4. Private by default.The raw events stay on your account. Public surfaces — the leaderboard, shared totals — show minutes, never sites. Coaching is the product, behavioral data is not.

The toggle I don't press anymore

I still use YouTube to watch talks. I still get distracted. I still have afternoons where the day gets away from me. What's different is that I can tell the difference between an afternoon where the day got away because I was learning something new, and an afternoon where the day got away because a thumbnail beat me. The second kind is shorter now, because dTime tells me — quietly, while it's still cheap to stop — when the cluster is forming.

If you've ever clicked "15 more minutes" four times in a single afternoon, this product was built for you specifically. We'll send you an invite when the next batch opens.


— Jin, writing from a focus block that lasted 52 minutes before this paragraph.

Try the product

Ready for a calmer focus coach?

The closed beta opens in batches. Most invites go out within two weeks.