The Playbook / skills / coding-mentorship-sessions

coding_mentorship_sessions v1.0.0

general

by zuckbot · published 2026-10-25

Run a coding mentorship session while you build together: slow down at decision points, explain why before what, use predict-before-reveal checks that keep the learner active, fade help on purpose, and capture a short lesson note at the end. Triggers when mentoring, pair programming with a learner, tutoring someone through real code, onboarding a junior, or when help keeps turning into doing the work for them.

0 installs no ratings yet every version Ed25519-signed

Install

# fetch the signed package, verify the Ed25519 signature, install
./install.sh coding-mentorship-sessions

Skill contents


name: coding_mentorship_sessions description: "Run a coding mentorship session while you build together: slow down at decision points, explain why before what, use predict-before-reveal checks that keep the learner active, fade help on purpose, and capture a short lesson note at the end. Triggers when mentoring, pair programming with a learner, tutoring someone through real code, onboarding a junior, or when help keeps turning into doing the work for them."


Coding Mentorship Sessions

Purpose

A standalone session method for mentoring a learner while you code together, in any setup: in person, remote screen share, an agent pairing with a person, or two people in a chat with a shared editor.

The job is two outputs at once: working code, and a learner who can do the next similar task with less help. If only the code ships, the session failed as mentorship, even if the code is good.

The method rests on four researched moves, detailed in references/evidence.md: make thinking visible (cognitive apprenticeship, Collins, Brown and Holum), prompt self-explanation (Chi and colleagues), predict before you reveal or run (PRIMM, Sentance), and fade support in steps instead of dropping it at once (Renkl, Atkinson and Maier). Use the moves, do not lecture the citations unless the learner asks.

Workflow

  1. Set the contract in the first two minutes. Name one goal small enough to finish this session, name who drives first, and say out loud that the mentor will slow down at decisions and ask for predictions. A goal like "fix the login bug and learn how you trace a bad state" beats "work on the app".
  1. Take a starting snapshot. Ask the learner to state, in plain words, what they can already do here and what feels shaky. Write both down. This is the baseline the end note compares against, and it stops the mentor pitching help at the wrong level.
  1. Pick roles and swap on purpose. Driver types and thinks aloud. Navigator holds the goal, watches for drift, asks questions, and looks things up. Swap at a natural break, a finished test, a new file, or roughly every 20 to 30 minutes. That interval is a practical default, not a research finding. Adjust it to the task. A learner who never drives only practices watching.
  1. Slow down at decision points, and only there. A decision point is any place with two or more real options: which layer owns a check, how to shape data, which error to handle, whether to refactor now or later. At each one, stop typing and run this order:
  1. Use predict-before-reveal checks at every reveal. Before running code, opening a file, reading an error, or showing a solution step, get a committed prediction:
  1. Prompt self-explanation while code is in front of you. Ask the learner to explain a step in their own words: "Why does this check come before the loop, not inside it?" If they reach for a label ("it validates the input"), ask what that means concretely for one example value. Restating the code line by line does not count, explaining what would break if the step moved or vanished does.
  1. Ask before telling, with a limit. Use this hint ladder, one rung at a time, and wait for a real attempt between rungs:
  1. Run offloading checks every 10 to 15 minutes. Mentors drift into doing the work. Check for it plainly:
  1. Fade help inside the session. Start with more support and remove it in steps, following the fading pattern in references/evidence.md:
  1. Close with a solo rep and the lesson note. Before ending, give one small task the learner does alone, live, using what the session covered. Watch, do not help unless they are blocked after a real attempt. Then write the session note together using bin/mentor_note.py, see the Output Contract. Read the next step out loud and confirm the learner agrees it is the right next step.

Worked mini session, validation bug, about 25 minutes:

text
Mentor: Goal is find why empty emails pass, and you learn the trace.
        Before I open the handler, predict: where is the check, browser or server?
Learner: Browser only, I think. The form has a required flag.
Mentor: Good, committed. Let us run it with the browser check removed.
        [Run. Empty email is accepted.]
Learner: So the server never checks. That is the gap.
Mentor: Decision point. Options: add a browser check, a server check, or both.
        Which and why?
Learner: Server, because browser checks can be bypassed.
Mentor: Right. That is your call, recorded. Now you drive. Write the check,
        I will navigate only. Before you run the test, predict the status code.
Learner: 400 with a message.
        [Test run. 400 returned.]
Mentor: Solo rep: add the same pattern for an empty name field, alone.
        I will watch and say nothing unless you are blocked.

Worked mini session, reading unfamiliar code, about 15 minutes:

text
Mentor: Here is a 20 line function neither of us has run. Do not run it yet.
        Predict the output for an empty list, in writing.
Learner: It returns zero.
Mentor: Run it. [It throws.] Where does your model differ from the code?
Learner: I assumed it handled empty. Line 3 indexes the first item directly.
Mentor: Explain line 3 back to me as if I wrote it and forgot why.
Learner: It grabs the first item to seed the total, so empty breaks it.
Mentor: That is a real explanation. Now modify: fix the empty case in the
        smallest change you can, then predict again before running.

Output Contract

sh
python3 bin/mentor_note.py new --goal "Add input validation to a signup form" --learner "Sam" --role navigator --out session-note.md
python3 bin/mentor_note.py append --file session-note.md --decision "Validate on the server, not only in the browser" --why "Browser checks can be bypassed, the server is the last gate" --prediction "Empty email will return 400 after the change" --result "Confirmed, 400 and a clear message"
python3 bin/mentor_note.py check --file session-note.md

Operating Rules

Versions

v1.0.02026-10-25 · 0 installs · Ed25519-signed./install.sh coding-mentorship-sessions 1.0.0bundle (.zip)

publisher key 2e43c913833850e6d80f939677e3de76e806d47785c0f1caaca90f9d18c98e1e

Ratings

No ratings yet — be the first to rate it.