- Variables and Assignment in Text Codeages 14 to 15 · 8 questions
- Input, Output and Type Conversionages 14 to 15 · 8 questions
- Arithmetic in Code: Integer Division and Remainderages 14 to 15 · 20 questions
- Boolean Expressions and Comparison Operatorsages 14 to 15 · 8 questions
- Selection with if, elif and elseages 14 to 16 · 8 questions
- Count-Controlled Loopsages 14 to 16 · 8 questions
- Condition-Controlled Loopsages 15 to 16 · 8 questions
- Strings: Indexing, Slicing and Lengthages 15 to 16 · 8 questions
- Lists: Many Values Under One Nameages 15 to 16 · 8 questions
- Tracing a Program by Handages 15 to 16 · 8 questions
- Traversing a List to Build a Resultages 15 to 16 · 18 questions
- Defining a Function with Parametersages 15 to 16 · 8 questions
- Linear Searchages 15 to 16 · 8 questions
- Binary Search on Sorted Dataages 15 to 16 · 8 questions
- Return Values and Variable Scopeages 15 to 16 · 8 questions
- Decomposing a Problem into Subprogramsages 15 to 16 · 8 questions
- Dictionaries: Values Found by Keyages 16 to 17 · 8 questions
- Classes and Objects: Bundling Data with Behaviourages 16 to 18 · 8 questions
- Functions at Depth: Default and Keyword Argumentsages 16 to 17 · 8 questions
- Inheritance and Overriding Behaviourages 16 to 18 · 8 questions
- Designing with Objects: Deciding What Each Class Ownsages 16 to 18 · 8 questions
- Reading and Writing Files, Including CSVages 17 to 18 · 8 questions
- Exceptions: Raising, Catching and Recoveringages 17 to 18 · 8 questions
- Unit Tests: Deciding What Is Worth Testingages 17 to 18 · 8 questions
- Debugging as a Method: Reproduce, Isolate, Fixages 17 to 18 · 8 questions
- The Project Arc: Building a Program in Stagesages 17 to 18 · 8 questions