Every job search has weeks that produce nothing visible. No replies, no interviews, no news at all, even though applications went out and the effort was real. In product terms, that is an empty state problem. The interface shows nothing, so the user reads the nothing as a verdict.

Building a peer community for people rebuilding after a layoff forced a different question: what should the product record during a week when employers say nothing?

The problem with streaks and counters

Most activity systems reward visible output: applications sent, days in a row, totals going up. That works until it does not. A daily streak breaks on a rest day and punishes the person for resting. A raw application counter rewards scatter, dozens of hurried applications to poor fits, and a CV rewritten daily in contradictory directions.

Silence from employers is also usually slower and less personal than it feels. Hiring pauses, panels reschedule, budgets wait for signatures, and a shortlist sits unread while the people who would read it deal with something urgent. The data the user sees (nothing arrived) is real. The conclusion the user draws (the search has stalled) often is not.

What was built instead

Three design choices came out of that:

1. A weekly log, not a daily streak. The basic unit is the week, and the log accepts maintenance as a first class entry: one polite follow up where a follow up was due, a review of which kinds of roles produced replies earlier, one small piece of evidence kept current such as a project note, a practised skill, or a contact renewed without an immediate ask. A quiet week with those entries in it is not empty in the record, even when the inbox is empty.

2. No empty state that argues with the user. Empty states were rewritten to describe the state, not judge it. A week with no employer news says exactly that, and then shows what was logged anyway. It never says nothing happened, because something usually did, just not the thing the user was waiting for.

3. Peer context next to personal progress. A quiet week feels different when it sits alongside other people's weeks: someone else landing an interview, someone else sharing a lead or a hard lesson about a process. That context is a reminder that silence is shared weather, not a personal forecast. In WUUUH, members record progress, setbacks, and the stretches of nothing happening in between, in the same feed.

What worked

Treating maintenance as loggable work changed the conversation. A week could be honestly described as quiet and still have a record, so the review at the end of the week became a planning exercise (aim the next applications where replies came from before) instead of a morale verdict.

The weekly grain helped too. Daily views made normal hiring delays look like failure. Weekly views matched how hiring actually moves, in batches and pauses, and gave follow ups a natural cadence instead of a daily temptation to chase.

What broke

The first version of the log still sorted entries by employer events, so a week with no replies sank to the bottom of the feed and looked inactive no matter what was logged. Sorting had to be by the member's own activity, not by outcomes the member does not control.

Prompts were the other failure. A cheerful nudge to "keep the momentum going" landed badly in a week when someone had heard nothing for a month. The prompts that survived testing were plain and specific: log a follow up, note a skill, record the week as it was. Encouragement that ignores the user's actual week reads as noise.

The lesson

If a product serves people through a process they do not control, its records should separate effort from outcome, and its empty states should never confuse the two. Employers going quiet is an outcome gap. A week with no record at all is a product gap, and that second one is fixable.

Builders: how do you design activity views for stretches where the honest entry is "nothing came back yet"? Curious how others handle empty states that are not really empty.