Skip to main content
Blog

Product

Why we built the workout player twice

The first version tracked sets. The second one coaches a session. What building for real sessions taught us in between.

The first version of a workout player can be summed up in one sentence: show the exercises and let someone record the sets. That is a reasonable starting point. It is not the same as helping someone complete a session.

Tracking is not coaching

In a real session, an athlete is deciding what to do next while tired, distracted, and often holding a phone with one hand. They need the current movement, the target, the last useful piece of context, and a fast way to record what happened.

The interface has to reduce decisions without pretending the session is predictable.

The second version starts with the session

That meant treating a workout as a flow rather than a list:

  • make the next action immediately visible;
  • keep cues and targets close to the set they describe;
  • let the athlete record the result without losing their place;
  • preserve enough history to make the next decision meaningful;
  • handle intervals, supersets, and rest as first-class parts of the workout.

Each detail sounds small. Together, they determine whether the player feels like a clipboard or a coach in the room.

A workout that works should become a coaching asset

Clients do not stay with a coach because a spreadsheet has more rows. They stay because the coach has a way of seeing the problem, choosing the next step, and adapting it when the athlete’s life changes.

That knowledge is built through repetition. A coach who helps one athlete run their first 5 km, first half marathon, first HYROX, or first competition learns what preparation held up, what needed changing, and where the athlete lost confidence. When that structure works, it should not vanish into an old chat thread or need to be rebuilt from a blank page for the next person.

Reuse does not mean giving every athlete the same prescription. It means preserving the useful structure: the session sequence, the cues, the progressions, and the decisions that made it work. The coach still changes the load, volume, pace, exercise choice, and schedule for the person in front of them.

In Diby, a coach can build a workout once, keep it in the library, place it inside a program, and assign it to the clients for whom it fits. Each client then completes their own session in the player, with their own results and context attached to it.

That creates a better feedback loop. A coach can see how a method performs across real people, improve the version in the library, and reuse the stronger version when it is appropriate. The work becomes more consistent without becoming less personal.

Design for the moment after the set

The most important screen state is not the empty workout. It is the moment after an effort, when the athlete is breathing hard and deciding whether to repeat, adjust, or move on. A good player makes that moment calm. It shows what was planned, what happened, and what is next.

That also gives coaches better information. A logged set is more useful when it sits inside the context of the session: the intended target, the effort, the adjustment, and the reason.

That is the idea behind Diby’s live workout player. It keeps the current exercise, set target, elapsed time, and the athlete’s recorded result close together, so the phone supports the session instead of interrupting it.

Build, observe, rebuild

We rebuilt the player because the first version taught us what a data-entry surface can do, while real sessions showed us what athletes actually need. Product work gets better when we treat usage as evidence and are willing to change the shape of the tool.

The second player is not finished because software is never finished. It is better because it starts from the whole coaching moment, not only the record it leaves behind.