// in this post
You can't learn to give hard feedback by reading about it. You learn by getting it wrong somewhere safe.
The problem
Feedback training is almost always passive. People watch a model, agree it makes sense, then freeze the moment a real conversation gets uncomfortable. The gap is practice, not theory.
What it is
A short, branching scenario where you play the manager. You choose how to open, how to respond, and how to handle it when the conversation turns, and you watch the consequences of each choice play out. It is built on the Situation, Behaviour, Impact model, so the practice maps onto something you can use the next day.
Who it's for
Managers and team leads who want to rehearse a difficult conversation before they have the real one. It also works as a live demo of what scenario-based learning can do when it is built properly.
How I made this
This is a small web app rather than a document, so it's a design-then-build job, doable with Claude Design and Claude Code in an afternoon.
1. Design it. Open Claude Design (claude.ai/design, in a browser or the Claude desktop app) and describe the conversation: where it branches, and what makes the other person open up or shut down. Refine until it feels right. You can skip this and describe it in words if you'd rather go straight to the build.
2. Build it. Hand the design to Claude Code (Anthropic's coding assistant, which you run from your terminal or the desktop app) with a prompt like:
Build me a single self-contained HTML file (HTML, CSS and JavaScript inline,
no backend, no dependencies) that runs a branching practice scenario for
[the skill you want people to rehearse].
- The user plays [the role] and works through [N] decisions.
- Model the other person's reaction with a hidden state variable that the
user's choices move up or down, so the conversation genuinely branches.
- Don't telegraph the right answer: keep the options neutral and only reveal
the verdict and reasoning after the user commits.
- End with a review of each decision, the strongest move, and why.
- Make it keyboard-accessible and usable on a phone.
3. What you get. One self-contained index.html: a small scenario engine driving a graph of decision points and a hidden rapport score, no backend, no database. It runs on the Situation, Behaviour, Impact model.
4. Put it online. I deployed it to Vercel (vercel.com, free at this size): connect a folder or a GitHub repo, or drag it in, and it's live on a URL in under a minute.
Start with the branching on paper. The engine is the easy part once the decision tree is right; the work is deciding what a good and a bad move actually look like at each step.