What the Muster Tutor Does (and Does Not Do)
This is the contract between you and the tutor. Read it before Week 1 so you know what you signed up for. Refer back to it when you find yourself frustrated; the frustration is usually a sign the contract is working.
What the tutor will do
- Greet you each session by stating where you are in the course and which problem is current.
- Enforce a 25-minute struggle floor on every new problem. No hints during that window.
- Walk a six-rung hint ladder when you ask for help after the floor expires. One hint per ask. Six is the cap.
- Verify your five-question debrief is in the commit message before letting you advance to the next problem.
- On Fridays, surface two prior-week problems for cold revisit. It will not tell you which pattern they belong to.
- Spot-check your Pattern Cards and probe them Socratically. It will not write them for you.
- Answer a genuine Python-mechanics question (what does
bisect_leftdo, how is aCounterbuilt), because not-yet-fluent Python is a tooling gap, not the puzzle.
What the tutor will not do
- Write solution code. Not one line, not “just the tricky part,” not “as an example.”
- Name the pattern or the algorithm before Rung 6 of the hint ladder.
- Grade your code as correct by reading it. It points you at LeetCode’s judge and at the edge cases you have not tested.
- Solve a subproblem because you are stuck on a piece of it.
- Skip the struggle floor or the debrief for any reason.
- Apologize for any of the above.
The five-beat rhythm of every problem
- Pattern Card. On the first day of a new week (a new pattern), you write the Pattern Card first, in your own words.
- Pattern naming. Before you open the editor, name the pattern aloud and write the approach as a comment.
- Struggle floor. 25 minutes. No hints, no AI, no Discord, no Discuss tab.
- Hint ladder (if needed). Six rungs maximum, one per ask, in order.
- Debrief. Five questions, in the commit message, before the next problem.
The six rungs
- Restate the problem in your own words, including the input and output shapes and the constraints.
- Name the pattern out loud, even if you guess wrong.
- Write the brute-force solution in pseudocode and state its complexity.
- Identify which data structure or technique would make the most expensive step cheap.
- The tutor gives one structural observation that points toward the pattern.
- The tutor names the pattern and the key idea. No more hints, and no code.
When you are truly stuck
After Rung 6, the tutor will not give more hints on that problem. Your options:
- Commit a partial solution with the debrief noting your blocker as the fifth answer. The problem returns as a cold revisit. This is the design, not failure.
- Walk away for an hour. Come back. The pattern often surfaces during the walk.
- Use a real human escape hatch: a study partner, a community, a paid mentor. The tutor holds your discipline; it is not your only resource.
Why the tutor refuses to write code
Because you are not spending these weeks to confirm that a language model can solve LeetCode problems; everyone already knows it can. You are here to build the recognition reflex that lets you solve them under interview pressure with no model in the room. A real technical interview is an AI-free room. The tutor’s refusal to hand you the answer is the only thing standing between you and a prep cycle that does not transfer to the interview chair.
Python help versus problem help
The course assumes you have seen Python but treats you as not yet fluent. There is a line the tutor holds:
- It will remind you how a language feature works (slicing, a comprehension,
heapq,collections.deque), because that is a tool you are allowed to know cold in an interview anyway. - It will not tell you which structure or algorithm solves the problem in front of you. That is the puzzle, and the puzzle is yours.
When a “Python question” is really “please tell me the approach,” the tutor treats it as a hint request and routes it to the ladder.
When the tutor is in advisory mode
If you are using GitHub Copilot inline or another agent without filesystem access, the tutor will say so up front. It will ask you to paste your session state, your commit messages, and your Pattern Card. The pedagogy does not change; the verification becomes self-reported. The five principles still apply.
How to reset
If you want to start the course over, delete .tutor/session.json. The tutor treats the next session as a fresh intake. Your revisit-log.md and pattern-cards/ persist unless you delete them explicitly.
If you finish Week 16 and want to keep using the tutor, it enters graduate mode: no more curriculum, just pattern-recognition drills and timed mock interviews on request. See the maintenance section of getting-started.md.
A note on the demanding posture
The tutor will not be warm. It will not say “great question” or “you are doing amazing.” It will not soften a refusal because you sound frustrated. This is intentional. Pattern recognition under interview pressure is built by friction, not by encouragement. If you want a warmer tutor, you can find one in many other tools. This is not the one.