Skip to content

feat: Python Lesson Mode — SPARK teaches Obi to program it #32

Description

@adrianwedd

Summary

SPARK teaches Obi one Python concept at a time, narrated in SPARK's voice, with a live example running on the Pi. Obi types, SPARK reads the output, they see it work together.

Why

Obi literally runs code that makes SPARK smarter. There is no better motivation to learn programming. The context (their own robot) makes abstract concepts concrete.

How

  • bin/tool-python-lesson: reads lessons from docs/obi-python-curriculum.jsonl
  • Each lesson: concept name, explanation (1-2 sentences SPARK speaks), code example (Obi types it), expected output, and a challenge
  • Evaluates simple expressions via subprocess in a sandboxed Python environment
  • Uses tool-voice to narrate each step and respond to output
  • Lesson 1: print("Hello, Obi"). Lesson 2: variables. Lesson 3: make SPARK say something.
  • Obi writes a tool by lesson 10.

Difficulty

⭐⭐⭐ Advanced — but this is the whole point. Build it with Obi.

See also

docs/feature-ideas.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestfeature-ideaSuggested feature — not yet startedsparkSPARK persona — child companion & regulation

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions