duo-perceived-progress

Installation
SKILL.md

Perceived Progress

Users do not abandon a product because the work got hard. They abandon it because the work stopped visibly counting. Perceived progress is a separate design surface from actual progress, and it has its own failure modes — a number too coarse to move, a promise too optimistic to keep, a unit too long to finish, a valuable action that looks like going backwards.

Four decisions make up most of it. How granular the number is, how long the unit of work is, what you promise about the timeline, and what you say at the boundary between units. A fifth question arrives later, when a user plateaus because they reached good-enough and the feedback that drove them disappeared.

This skill does not cover the streak or any consecutive-day counter — a chain breaks and a measure moves, and they fail for different reasons. That is [[../duo-streak-mechanics/SKILL]]. It also does not cover diagnosing which users are motivated and why, which is [[../duo-learner-motivation/SKILL]].

The number

  • [[references/rate-of-change-beats-absolute-position]] — motivation tracks the delta, not the position; ship a granular scalar with a visible next increment next to the coarse tier, not instead of it.
  • [[references/a-portable-number-in-can-do-terms]] — one scalar anchored to an external standard and written as what the holder can now do, exportable to somewhere it has social value; plus what to say when it keeps rising through a flat stretch.

The promise

  • [[references/publish-the-honest-timeline-and-a-ladder]] — an inflated timeline becomes a deadline you miss and the user blames themselves for; publish the real one with a ladder, and stop defining success as the top of it.
  • [[references/milestones-in-weeks-not-months]] — a goal nobody can score converts every real gain into evidence of falling short; set the next target weeks out and specific enough to observe daily.

The unit

Installs
7
GitHub Stars
5
First Seen
Sep 22, 2026