Files
rust-tutor/EXERCISES.md
2026-01-12 07:23:31 +00:00

77 lines
2.0 KiB
Markdown

# Exercise Templates & Tracking
## Quick Start New Chat Protocol
```bash
# 1. Start new chat
/model opusplan
# 2. Copy/paste CLAUDE.md contents
# 3. Say:
"Continuing Rust learning. Read CLAUDE.md, then check CURRENT_STATE.md and provide Exercise [X] from Milestone [Y]"
```
## Exercise Template (for Claude)
```markdown
## Exercise: [Name]
**Concepts practiced:** [Specific Rust concepts]
**Objective:** [What to build]
**Requirements:**
- [Specific feature 1]
- [Specific feature 2]
**Success criteria:** [How to verify it works]
**Stretch goal:** [Optional extension]
**Expected time:** [30-60min / 1-2hrs]
```
## Milestone 4: Chapter 7 (Modules) - CURRENT TARGET
### Exercise 1: Multi-Module Note-Taking CLI ⏳
**File:** `exercises/07-01-notes-cli/`
**Status:** Not started
**Concepts:** Module organization, pub/private boundaries
**Estimated time:** 1-2 hours
### Exercise 2: Calculator Plugin System ⏳
**File:** `exercises/07-02-calc-plugins/`
**Status:** Not started
**Concepts:** Selective imports, pub visibility
**Estimated time:** 1-2 hours
### Exercise 3: Wallet Module Structure ⏳
**File:** `exercises/07-03-wallet-modules/`
**Status:** Not started
**Concepts:** Real-world module organization (crypto domain)
**Estimated time:** 1-2 hours
**Crate:** ed25519_dalek
## Exercise Completion Process
### During Exercise
1. Create branch: `git checkout -b exercise/[milestone]-[number]-[name]`
2. Work in `exercises/[chapter]-[number]-[name]/` directory
3. Commit frequently with descriptive messages
4. Include `REFLECTION.md` with learning notes
### After Exercise
1. Code review in separate chat
2. Iterate based on feedback
3. Update CURRENT_STATE.md
4. Update PROGRESS.md
5. Merge to main when complete
6. Tag if milestone complete: `git tag v[milestone]-complete`
## Directory Structure
```
exercises/
├── 07-01-notes-cli/
│ ├── src/
│ ├── Cargo.toml
│ ├── README.md
│ └── REFLECTION.md
├── 07-02-calc-plugins/
│ └── ...
└── 07-03-wallet-modules/
└── ...
```