Curriculum

What Pythonoid teaches

14 topics and 201 exercises, from how code runs to writing clean code. The first 3 are free, start to finish — the rest unlock with a one-time $49.99 PRO purchase.

topics, in a set order
14
lessons across them
65
hands-on exercises
201
topics free, start to finish
3

Scope and sequence

The recommended order

Each topic assumes the one before it. Free topics never lock by sequence, so a confident child can jump ahead within them — PRO topics unlock together once purchased.

Every lesson inside a topic runs the same cycle

  1. 1Explain
  2. 2Ask
  3. 3Guided
  4. 4Practice

Lessons unlock in order within a topic. After three failed runs, the game offers the solution.

Topics 1–3 · Free, start to finish

Every lesson, no time limit, no card required. The very first level needs no account at all.

  1. Execution orderIn game: How the Dragon Follows Your CodeFree

    Topic 1: How Python Runs Your Code, for Kids

    A program runs one line at a time, in the order it was written, and does nothing you didn't actually tell it to do.

    Covers

    • Code runs one line at a time, top to bottom
    • Nothing happens unless it is actually written
    • A single line never repeats itself automatically
    • A change is only visible to lines that come after it

    4 lessons12 exercises

  2. print()In game: Making the Dragon SpeakFree

    Topic 2: Python print() for Kids

    print() is how a Python program says something out loud, and it is the first real Python a child writes here.

    Covers

    • Calling print() with text
    • Printing several values in one call
    • The sep argument — what goes between values
    • The end argument — what happens after the line

    5 lessons16 exercises

  3. VariablesIn game: What the Dragon RemembersFree

    Topic 3: Python Variables for Kids

    A variable is a name Python remembers a value by, so the same value can be used again without writing it out every time.

    Covers

    • Assigning a value to a name
    • Reading a variable back with print()
    • Updating a variable using its own value
    • Choosing clear variable names

    5 lessons18 exercises

Topics 4–14 · PRO

These 11 topics and the optional challenge track unlock together with one purchase. No subscription. They are listed in full so you can judge them before buying.

$49.99one-timeSee what PRO unlocks
  1. if / elif / elseIn game: The Dragon DecidesPRO

    Topic 4: Python if, elif and else for Kids

    An if statement lets a program do something only in certain situations, instead of doing the same thing every time.

    Covers

    • Comparison operators: >, <, >=, <=, ==, !=
    • True and False as real values
    • The if statement
    • elif for additional cases

    5 lessons16 exercises

  2. for + range()In game: The Dragon RepeatsPRO

    Topic 5: Python for Loops and range() for Kids

    A for loop runs the same instruction several times, so a child writes one line instead of twenty.

    Covers

    • The for loop
    • range(n) — counting from zero
    • Why range(n) never reaches n
    • Using the loop variable inside the loop

    5 lessons15 exercises

  3. while loopsIn game: The Dragon's VigilPRO

    Topic 6: Python while Loops, break and continue for Kids

    A while loop repeats for as long as something stays true, which makes it the right tool when you do not know in advance how many times to go round.

    Covers

    • The while loop
    • Conditions that change over time
    • Why a loop can run forever, and how to spot it
    • break — leaving a loop immediately

    5 lessons15 exercises

  4. ListsIn game: The Dragon's InventoryPRO

    Topic 7: Python Lists, Indexing and Slicing for Kids

    A list holds several values under one name, in order, so a program can work with a whole collection instead of one thing at a time.

    Covers

    • Creating a list
    • Indexing from zero
    • Slicing with [start:end]
    • append() — adding an item

    5 lessons16 exercises

  5. input()In game: Talking to the Dragon TamerPRO

    Topic 8: Python input() and Type Conversion for Kids

    input() is the one command that genuinely pauses a program and waits for the player to type something back.

    Covers

    • Asking a question with input()
    • input() always returns text, never a number
    • Converting text to a number with int()
    • The TypeError from forgetting to convert

    5 lessons15 exercises

  6. DictionariesIn game: The Dragon's Stat SheetPRO

    Topic 9: Python Dictionaries for Kids

    A dictionary is a stat sheet — a value looked up by its name, not by its position in a list.

    Covers

    • Creating a dictionary and looking up a value by key
    • The difference between key-based and position-based lookup
    • Updating a key's value
    • Adding a brand new key

    5 lessons15 exercises

  7. FunctionsIn game: The Dragon's AbilitiesPRO

    Topic 10: Python Functions, Parameters and return for Kids

    A function lets you name a piece of code once and run it again as many times as you like.

    Covers

    • Defining a function with def
    • Calling a function, and calling it more than once
    • Parameters that customise what a function does
    • return hands a value back — it does not display it

    5 lessons15 exercises

  8. Error messagesIn game: The Dragon's DiagnosisPRO

    Topic 11: Reading Python Error Messages, for Kids

    A Python error message already tells you what went wrong — this topic teaches how to actually read it.

    Covers

    • Reading a traceback's last line first
    • Recognising IndexError, KeyError, TypeError, ValueError, ZeroDivisionError by name
    • Syntax errors vs. runtime errors vs. logic errors
    • Why a logic error produces no error message at all

    4 lessons12 exercises

  9. AlgorithmsIn game: The Dragon's Battle PlansPRO

    Topic 12: Algorithmic Thinking in Python, for Kids

    The same handful of loop shapes shows up again and again in real programs — this topic gives them names.

    Covers

    • The max-tracking and min-tracking patterns
    • The counter pattern, and how it differs from an accumulator
    • Search-with-a-flag, and finding a value's position
    • Why binary search needs a sorted list, and roughly how much faster it is

    4 lessons12 exercises

  10. Data structuresIn game: The Dragon's RecordsPRO

    Topic 13: Choosing Python Data Structures, for Kids

    The same information can be stored several genuinely different ways — this topic is about choosing which one fits the question you'll actually ask.

    Covers

    • The same data as two parallel lists, a list of dicts, and a dict of lists
    • Looping over nested data, including a loop inside a loop
    • Updating a value that lives one level deep
    • Sets for removing duplicates and checking membership

    4 lessons12 exercises

  11. Clean codeIn game: The Dragon's CleanupPRO

    Topic 14: Writing Clean Python Code, for Kids

    A name never changes what code does — only whether a human reading it later can tell what it's for.

    Covers

    • Why a variable's name never affects what a program computes
    • Magic numbers, and the real inconsistency bug they cause
    • Named constants as the fix — one value, one place it's defined
    • Spotting exact duplication vs. structural duplication

    4 lessons12 exercises

Start at the beginning

The first level needs no account and takes about thirty seconds.

Play the first level free