Practice Lesson 1 of 3

Start Small

Overview

Skill acquisition with Claude Code is most effective when task complexity is deliberately constrained during the initial learning phase. This lesson identifies task categories suitable for beginners and establishes a systematic task execution procedure.

Rationale for Constrained Scope

Complex tasks introduce multiple variables simultaneously. When output is incorrect, the root cause — prompt quality, model interpretation, or task complexity — cannot be isolated. Small tasks provide:

  • Short feedback loops enabling rapid iteration
  • Bounded risk of wasted effort
  • Higher iteration frequency, accelerating skill development

Recommended Initial Task Categories

Bug Fixes

Bugs with clear reproduction steps and isolated scope are optimal starting points:

> There's a bug where clicking "Save" twice creates duplicate entries.
> The handler is in src/handlers/save.ts. Fix it.

Function Addition

Functions with well-defined inputs and outputs minimize ambiguity:

> Add a function to utils/format.ts that converts dates
> to "2 days ago" style relative time.

Targeted Refactoring

Function extraction, variable renaming, and logic simplification within a single file:

> The validateUser function in auth.ts is 80 lines.
> Break it into smaller functions.

Selection criteria: Suitable initial tasks are isolated (affecting few files), have verifiable success criteria, and can be validated immediately.

Task Execution Procedure

  1. Define the goal explicitly — Specify the expected state upon completion
  2. Provide file references — Direct the model to relevant files rather than requiring search
  3. Review changes before acceptance — Examine diffs to confirm correctness and understand the implementation
  4. Verify immediately — Execute the code and confirm the fix against the success criteria

Anti-pattern: Accepting changes without comprehension. If the implementation cannot be explained, future debugging and maintenance become significantly more difficult.

Key Takeaways

  • Constrained scope enables root cause isolation and faster learning
  • Bug fixes and small functions are optimal initial task categories
  • All changes require comprehension before acceptance
  • Immediate verification confirms correctness and builds confidence