claude-code-ultimate-guide/examples/commands/quiz.md
Florian BRUNIAUX 7fd4048d5e feat: add learning guide & website badge
- Add "Visit Website" badge to README.md (prominent, top position)
- Add learning-with-ai.md guide for junior developers (~900 lines)
  - UVAL Protocol, dependency patterns, 30-day progression plan
- Add 3 learning templates (55 total):
  - examples/claude-md/learning-mode.md
  - examples/commands/quiz.md
  - examples/hooks/bash/learning-capture.sh
- Fix template count: 52 → 55 (was incorrectly showing 56)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 18:42:34 +01:00

144 lines
3.6 KiB
Markdown

# Quiz Me
Test understanding of recently written or accepted code.
## Usage
```
/quiz # Quiz on last code worked with
/quiz error handling # Focus on specific aspect
/quiz --hard # More challenging questions
```
## Instructions
1. Identify the last code I worked with (wrote, edited, or accepted from AI)
2. Generate 3-5 questions that test understanding at different levels:
- **Recall**: What does this code do?
- **Understanding**: Why was this approach chosen?
- **Application**: What would happen if X changed?
- **Analysis**: What are the trade-offs of this approach?
- **Synthesis**: How would you extend this?
3. Present questions one at a time
4. Wait for my answer before revealing the correct response
5. Provide explanations with each answer, not just "correct/incorrect"
## Question Types
### Level 1: Recall
- "What does the function X return?"
- "What parameters does Y accept?"
- "What happens when Z is called?"
### Level 2: Understanding
- "Why do we use X instead of Y here?"
- "What problem does this pattern solve?"
- "Why is this line necessary?"
### Level 3: Application
- "What would happen if we removed line X?"
- "How would you add feature Y to this code?"
- "What would break if input Z was provided?"
### Level 4: Analysis
- "What are the performance implications of this approach?"
- "What edge cases might cause issues?"
- "How does this compare to alternative X?"
### Level 5: Synthesis
- "How would you refactor this for better testability?"
- "What would need to change to support X?"
- "Design an extension that adds Y"
## Focus Areas
When focus is specified (e.g., `/quiz error handling`), prioritize questions about:
| Focus | Question Themes |
|-------|-----------------|
| `error handling` | Try/catch, error types, recovery strategies |
| `performance` | Big-O, optimization, bottlenecks |
| `security` | Input validation, XSS, injection |
| `testing` | Test cases, edge cases, mocking |
| `architecture` | Patterns, separation of concerns, SOLID |
| `types` | TypeScript types, inference, generics |
## Difficulty Modes
### Default
- 3 questions
- Mix of Level 1-3
- Focus on understanding current code
### `--hard`
- 5 questions
- Levels 3-5
- Include hypothetical modifications
- Ask about trade-offs and alternatives
## Response Format
For each question:
```
## Question 1 of 3
[Question text]
What's your answer?
---
(After user responds)
### Feedback
[Whether correct and why]
**Key insight**: [The concept this tests]
**Related concept**: [Something to explore further]
Ready for the next question?
```
## After Quiz Complete
Summarize:
- Score: X/Y correct
- Strengths: [Topics understood well]
- Review needed: [Topics to revisit]
- Suggested practice: [Specific exercise]
## Example Session
```
User: /quiz
Claude: Looking at your last code - the useEffect hook for data fetching.
## Question 1 of 3
In your useEffect, you have an empty dependency array [].
What does this mean for when the effect runs?
User: It runs only once when the component mounts
Claude: ### Feedback
Correct! An empty dependency array means the effect runs only on mount
(and cleanup on unmount).
**Key insight**: The dependency array controls WHEN effects re-run.
**Related concept**: What happens with no array vs. [someValue]?
Ready for Question 2?
```
## Tips for Users
1. **Be honest** — Wrong answers are learning opportunities
2. **Explain your reasoning** — Helps identify gaps even in correct answers
3. **Ask follow-ups** — If feedback is unclear, dig deeper
4. **Track weak areas** — Note topics that need more practice
$ARGUMENTS