Variables & Data

Variables & Data Structures

1
2
3
4
5
6

Understanding how computers store, modify, and track changing information using named variables, data types, lists, and complex data structures across programming projects.

Level 1

Scores & Counters

Understand that computers use named containers to remember and update changing values, such as game scores or counters.

Learning objective

Students will understand that a variable is a named storage box in computer memory that holds values that can change during program execution.

Let's Go!

Step media

Learn

A variable is like a labelled box in computer memory. You give the box a name (like "score" or "lives") and put a value inside. Whenever something happens in your game, the computer opens the box, reads the number, or puts a new number inside. In computing, digital games and programs rely on memory containers to keep track of changing information. As you explore the interactive Block Coding Simulator below, focus on how to create and names a variable in block code to store a game score or counter.

Interactive Simulator Sandbox
Block Coding Studio:Step 1 โ€ข Bronze Tier
๐Ÿงฉ
Step 1 โ€ข Bronze (Level 1): Drag & Snap - Block Shapes & Grammar

Recognise block categories and shapes. Add a motion block to the empty workspace to initiate your program.

In Progress
๐Ÿ“œScript Stack0 blocks
๐ŸงฉScript Workspace is Empty

Select blocks from the palette on the left to build your program stack.

Target: Assemble the required blocks and run the script.
๐ŸŒฒ
AST StructureEmpty StackStack must initiate with an Event Hat block.
โšก
Execution FlowSequentialChecks linear vs iterative control branches.
๐Ÿ”„
Loop SafetySafeZero infinite loop hanging detected.
๐Ÿงฌ
Clone Lifecycle0 ActiveClean garbage collection via delete-clone.
Block Tree Structure & GrammarValid Grammar

Assemble blocks in the Studio to inspect the syntax tree.

Runtime Trace Log & Performance60 FPS
StepBlock InstructionSprite (X, Y)VariablesStatus
No script execution traces yet. Click ๐Ÿšฉ Go to record runtime data.

Apply Simulator Skills โ€ข Try it yourself

Create a Score Variable

๐Ÿ”„Direct Simulator Transfer: Step 1 Tasks 1, 2 & 3

Now that you've practiced the virtual mechanics in the simulator above, apply those exact skills in your real computer environment:

๐ŸŒŸ Student Project GuideSuccess Criteria & WAGOLL (What A Good One Looks Like)โ–พ

๐ŸŽฏ Task Success Criteria (Rubric)

Foundation

Can identify a box or container holding a value like a score token.

Developing

Explains that a variable holds a specific piece of information that can change.

Secure (Goal)

Creates and names a variable in block code to store a game score or counter.

Mastery

Explains how computer memory stores named variables and retrieves them by name.

๐Ÿ‘€ What A Good One Looks Like (WAGOLL)

๐Ÿ“
Save to Your Website Portfolio:

When you finish creating your project in your software, copy the share link or take a screenshot and publish it onto your student portfolio website!

Reflect

๐ŸŽฏ

Self-Assessment & Reflection

Why is it important to give variables clear, descriptive names like "player_score" instead of just "x"?

๐ŸŸขSecure Level

Creates and names a variable in block code to store a game score or counter.

Learning check

Learning Check

What is a variable in programming?

Select the best answer:

Answer correctly to unlock the next level.

Great job! A variable is a named memory container for dynamic data.Remember: variables are named containers used to hold changing values in computer memory.
Teacher setup, curriculum links and progress descriptors

Spark support

Routine: See-Think-Wonder

Teacher notes: Facilitate the See-Think-Wonder routine for 2โ€“3 minutes. Encourage students to connect the prompt to Form (Digital games and programs rely on memory containers to keep track of changing information.).

Achievement pathway

  • Foundation: Can identify a box or container holding a value like a score token.
  • Developing: Explains that a variable holds a specific piece of information that can change.
  • Secure: Creates and names a variable in block code to store a game score or counter.
  • Mastering: Explains how computer memory stores named variables and retrieves them by name.

Curriculum links

Curriculum strand: Algorithms and Programming

Outcome: VARD.01.B.1.1 โ€” Understand that computers use named containers to remember and update changing values, such as game scores or counters.

PYP: Form ยท Digital games and programs rely on memory containers to keep track of changing information.

Learner profile: Inquirer

Competency tags

  • Variables
  • Memory
  • Score Counter
  • Unplugged

Gate support

Accessibility alternative: Students may verbally explain or point to the correct answer for "What is a variable in programming?" with a teacher or teaching assistant.

Teacher override: allow

Back to top

Locked level

Level 2: Modifying Values

Complete the previous learning check to unlock this next level.

Level 2

Modifying Values

Program variable updates using mathematical operations (+1, -1) to track dynamic game scores and timer countdowns.

Learning objective

Students will program scripts to increase, decrease, and modify variable values dynamically in response to game events.

Let's Go!

Step media

Learn

To update a variable, we use math blocks. "Change score by 1" adds 1 to whatever is currently in the box. "Change lives by -1" subtracts 1. We can also set a timer variable to decrease every 1 second inside a repeat loop. In computing, interactive programs update stored values in response to user actions and game events. As you explore the interactive Python Console Simulator below, focus on how to program automatic variable increments for score tracking and countdown timers.

Interactive Simulator Sandbox
Python Curriculum:Step 2 โ€ข Bronze Tier
๐Ÿ
Step 1 โ€ข Bronze (Level 1): Code Typing - The Print Statement

Type print("Hello World!") in the code editor and click โ–ถ Run Code to execute your first Python statement.

In Progress
๐Ÿmain.pyClean
1
Snippets:
Target: Type print("Hello World!") and run your script.
Interactive Python REPL (v3.12.2)
Python 3.12.2 (tags/v3.12.2:5acc80f, Feb 6 2024, 01:22:40) [MSC v.1938 64 bit (AMD64)]
Type "help", "copyright", "credits" or "license" for more information.
>>> Ready to execute scripts.
๐ŸŒฒ
AST Root NodeModuleAbstract Syntax Tree representation.
๐Ÿท๏ธ
Symbol Scope0 IdentifiersGlobal variable memory allocations.
๐Ÿ›ก๏ธ
Linter & PEP 8CleanZero syntax or indentation warnings.
โšก
Complexity & LoopsO(1)Bounded iteration & recursion safety.
Python Abstract Syntax Tree (AST)Valid AST

Type Python code in the IDE to view real-time AST node tree parsing.

Runtime Variable Symbol TableStack Memory
IdentifierTypeValueScope
No active variables in memory. Assign variables (e.g. score = 100) to inspect.

Apply Simulator Skills โ€ข Try it yourself

Build a Score & Timer System

๐Ÿ”„Direct Simulator Transfer: Step 2 Tasks 4, 5 & 6

Now that you've practiced the virtual mechanics in the simulator above, apply those exact skills in your real computer environment:

๐ŸŒŸ Student Project GuideSuccess Criteria & WAGOLL (What A Good One Looks Like)โ–พ

๐ŸŽฏ Task Success Criteria (Rubric)

Foundation

Can manually change the value inside a variable block.

Developing

Uses a "change variable by 1" block when a sprite is clicked.

Secure (Goal)

Programs automatic variable increments for score tracking and countdown timers.

Mastery

Combines multiple variables (score, lives, level) that interact based on game rules.

๐Ÿ‘€ What A Good One Looks Like (WAGOLL)

๐Ÿ“
Save to Your Website Portfolio:

When you finish creating your project in your software, copy the share link or take a screenshot and publish it onto your student portfolio website!

Reflect

๐ŸŽฏ

Self-Assessment & Reflection

How did you prevent the score from increasing continuously while touching a target?

๐ŸŸขSecure Level

Programs automatic variable increments for score tracking and countdown timers.

Learning check

Learning Check

If score = 5, what is score after running "change score by 3"?

Select the best answer:

Answer correctly to unlock the next level.

Correct! 5 + 3 = 8.Changing a variable by 3 adds 3 to its existing value of 5.
Teacher setup, curriculum links and progress descriptors

Spark support

Routine: Think-Pair-Share

Teacher notes: Facilitate the Think-Pair-Share routine for 2โ€“3 minutes. Encourage students to connect the prompt to Function (Interactive programs update stored values in response to user actions and game events.).

Achievement pathway

  • Foundation: Can manually change the value inside a variable block.
  • Developing: Uses a "change variable by 1" block when a sprite is clicked.
  • Secure: Programs automatic variable increments for score tracking and countdown timers.
  • Mastering: Combines multiple variables (score, lives, level) that interact based on game rules.

Curriculum links

Curriculum strand: Algorithms and Programming

Outcome: VARD.02.B.1.2 โ€” Program variable updates using mathematical operations (+1, -1) to track dynamic game scores and timer countdowns.

PYP: Function ยท Interactive programs update stored values in response to user actions and game events.

Learner profile: Communicator

Competency tags

  • Variable Increment
  • Timers
  • Math Operations
  • Block Coding

Gate support

Accessibility alternative: Students may verbally explain or point to the correct answer for "If score = 5, what is score after running "change score by 3"?" with a teacher or teaching assistant.

Teacher override: allow

Back to top

Locked level

Level 3: Strings & Booleans

Complete the previous learning check to unlock this next level.

Level 3

Strings & Booleans

Distinguish between different data types (integers, floats, text strings, and true/false Booleans) and apply them in block code.

Learning objective

Students will identify and convert between core computer data types: integers, decimals (floats), text strings, and Boolean true/false values.

Let's Go!

Step media

Learn

Computers store different kinds of data: Integers are whole numbers (0, 5, -12). Floats are decimal numbers (3.5, 99.9). Strings are text inside quotes ("Alex", "Winner!"). Booleans are simple logical flags that are either True or False. In computing, computers categorize information into specific data types to process numbers, text, and logical decisions correctly. As you explore the interactive Spreadsheet Simulator below, focus on how to select appropriate data types for variables (e.g. integer for score, string for player name, Boolean for game_over).

Interactive Simulator Sandbox
๐Ÿ“Š
Spreadsheet StudioStep 3 โ€ข Bronze Tier
|
A1fx
ABC
1ItemAmount
2Apples5
3Bananas3
4Carrots2
5Total
Challenge: Click cell B5 to inspect how the AutoSum formula adds up column B!

Apply Simulator Skills โ€ข Try it yourself

Data Type Sorting Challenge

๐Ÿ”„Direct Simulator Transfer: Step 3 Tasks 7, 8 & 9

Now that you've practiced the virtual mechanics in the simulator above, apply those exact skills in your real computer environment:

๐ŸŒŸ Student Project GuideSuccess Criteria & WAGOLL (What A Good One Looks Like)โ–พ

๐ŸŽฏ Task Success Criteria (Rubric)

Foundation

Recognizes the difference between a number (10) and text ("Hello").

Developing

Identifies true/false values as Booleans used in conditional blocks.

Secure (Goal)

Selects appropriate data types for variables (e.g. integer for score, string for player name, Boolean for game_over).

Mastery

Explains why adding two text strings ("5"+"5"="55") differs from adding two numbers (5+5=10).

๐Ÿ‘€ What A Good One Looks Like (WAGOLL)

๐Ÿ“
Save to Your Website Portfolio:

When you finish creating your project in your software, copy the share link or take a screenshot and publish it onto your student portfolio website!

Reflect

๐ŸŽฏ

Self-Assessment & Reflection

Why would a game developer use a Boolean variable like "is_unlocked" instead of a number?

๐ŸŸขSecure Level

Selects appropriate data types for variables (e.g. integer for score, string for player name, Boolean for game_over).

Learning check

Learning Check

Which data type represents a True or False value?

Select the best answer:

Answer correctly to unlock the next level.

Spot on! Booleans store True or False values.Booleans are logical flags that can only be True or False.
Teacher setup, curriculum links and progress descriptors

Spark support

Routine: Sort & Classify

Teacher notes: Facilitate the Sort & Classify routine for 2โ€“3 minutes. Encourage students to connect the prompt to Change (Computers categorize information into specific data types to process numbers, text, and logical decisions correctly.).

Achievement pathway

  • Foundation: Recognizes the difference between a number (10) and text ("Hello").
  • Developing: Identifies true/false values as Booleans used in conditional blocks.
  • Secure: Selects appropriate data types for variables (e.g. integer for score, string for player name, Boolean for game_over).
  • Mastering: Explains why adding two text strings ("5"+"5"="55") differs from adding two numbers (5+5=10).

Curriculum links

Curriculum strand: Algorithms and Programming

Outcome: VARD.03.B.1.3 โ€” Distinguish between different data types (integers, floats, text strings, and true/false Booleans) and apply them in block code.

PYP: Change ยท Computers categorize information into specific data types to process numbers, text, and logical decisions correctly.

Learner profile: Thinker

Competency tags

  • Integers
  • Floats
  • Strings
  • Booleans
  • Data Types

Gate support

Accessibility alternative: Students may verbally explain or point to the correct answer for "Which data type represents a True or False value?" with a teacher or teaching assistant.

Teacher override: allow

Back to top

Locked level

Level 4: User Responses

Complete the previous learning check to unlock this next level.

Level 4

User Responses

Store user responses from interactive prompts into variables and join text strings dynamically to personalize program outputs.

Learning objective

Students will capture user responses using input prompts, store inputs in variables, and join strings to generate personalized messages.

Let's Go!

Step media

Learn

When you use an "ask [What is your name?] and wait" block, the computer stores the user's answer in a temporary variable called `answer`. We immediately copy `answer` into a custom variable like `player_name`, then use "join" blocks to build personalized phrases like "Hello " + `player_name` + "!"

Interactive Simulator Sandbox
Block Coding Studio:Step 4 โ€ข Bronze Tier
๐Ÿงฉ
Step 1 โ€ข Bronze (Level 1): Drag & Snap - Block Shapes & Grammar

Recognise block categories and shapes. Add a motion block to the empty workspace to initiate your program.

In Progress
๐Ÿ“œScript Stack0 blocks
๐ŸงฉScript Workspace is Empty

Select blocks from the palette on the left to build your program stack.

Target: Assemble the required blocks and run the script.
๐ŸŒฒ
AST StructureEmpty StackStack must initiate with an Event Hat block.
โšก
Execution FlowSequentialChecks linear vs iterative control branches.
๐Ÿ”„
Loop SafetySafeZero infinite loop hanging detected.
๐Ÿงฌ
Clone Lifecycle0 ActiveClean garbage collection via delete-clone.
Block Tree Structure & GrammarValid Grammar

Assemble blocks in the Studio to inspect the syntax tree.

Runtime Trace Log & Performance60 FPS
StepBlock InstructionSprite (X, Y)VariablesStatus
No script execution traces yet. Click ๐Ÿšฉ Go to record runtime data.

Apply Simulator Skills โ€ข Try it yourself

Build an Interactive Chatbot

๐Ÿ”„Direct Simulator Transfer: Step 4 Tasks 10, 11 & 12

Now that you've practiced the virtual mechanics in the simulator above, apply those exact skills in your real computer environment:

๐ŸŒŸ Student Project GuideSuccess Criteria & WAGOLL (What A Good One Looks Like)โ–พ

๐ŸŽฏ Task Success Criteria (Rubric)

Foundation

Uses an ask block to get user input.

Developing

Stores the answer reporter block into a named variable.

Secure (Goal)

Uses string joining (join/concatenation) blocks to combine user input with custom text (e.g., "Welcome " + name).

Mastery

Validates user input variables before proceeding with program execution.

๐Ÿ‘€ What A Good One Looks Like (WAGOLL)

๐Ÿ“
Save to Your Website Portfolio:

When you finish creating your project in your software, copy the share link or take a screenshot and publish it onto your student portfolio website!

Reflect

๐ŸŽฏ

Self-Assessment & Reflection

How does storing user inputs in variables make software feel more personal and interactive?

๐ŸŸขSecure Level

Uses string joining (join/concatenation) blocks to combine user input with custom text (e.g., "Welcome " + name).

Learning check

Learning Check

What block operation combines two text strings together?

Select the best answer:

Answer correctly to unlock the next level.

Correct! Joining (concatenation) connects text strings together.String joining / concatenation connects multiple text strings into one sentence.
Teacher setup, curriculum links and progress descriptors

Spark support

Routine: See-Think-Wonder

Teacher notes: Facilitate the See-Think-Wonder routine for 2โ€“3 minutes. Encourage students to connect the prompt to Connection (Interactive systems capture user input to create customized, adaptive digital experiences.).

Achievement pathway

  • Foundation: Uses an ask block to get user input.
  • Developing: Stores the answer reporter block into a named variable.
  • Secure: Uses string joining (join/concatenation) blocks to combine user input with custom text (e.g., "Welcome " + name).
  • Mastering: Validates user input variables before proceeding with program execution.

Curriculum links

Curriculum strand: Algorithms and Programming

Outcome: VARD.04.B.1.4 โ€” Store user responses from interactive prompts into variables and join text strings dynamically to personalize program outputs.

PYP: Connection ยท Interactive systems capture user input to create customized, adaptive digital experiences.

Learner profile: Principled

Competency tags

  • User Input
  • String Joining
  • Concatenation
  • Personalized Output

Gate support

Accessibility alternative: Students may verbally explain or point to the correct answer for "What block operation combines two text strings together?" with a teacher or teaching assistant.

Teacher override: allow

Back to top

Locked level

Level 5: Managing Lists

Complete the previous learning check to unlock this next level.

Level 5

Managing Lists

Create, populate, and manipulate ordered lists (arrays) to store multiple items, access elements by index, and iterate through collections.

Learning objective

Students will create and manipulate ordered list variables (arrays) by adding, deleting, inserting, and accessing items by numerical index.

Let's Go!

Step media

Learn

A list (or array) is a single container that holds multiple items in order. Each item has an index number starting at 1 (or 0 in text code). You can add items to the end, insert items at a specific index, delete items, or search if a list contains a specific value.

Interactive Simulator Sandbox
Physical Computing:Step 5 โ€ข Bronze Tier
๐Ÿค–
Step 1 โ€ข Bronze (Level 1): Hardware Recognition & Architecture

Identify the physical hardware parts of the microcontroller: LED matrix, processor, edge pins, and buttons.

In Progress
๐Ÿ“ก RF
0
1
2
3V
GND
๐Ÿ”ŠBuzzer:Silent
โš™๏ธActuator:Centered (90ยฐ)
๐Ÿ“กRadio Packet:Ch: 1 (Idle)
Target: Click the LEDs to draw an icon or trigger hardware inputs.
โšก
GPIO Logic Voltage3.3 V LogicEdge pin logic level reference.
ใ€ฐ๏ธ
PWM Duty Cycle50.0% (1.5ms)Servo Pulse Width Modulation.
๐Ÿ›ก๏ธ
Circuit SafetySafe / NormalZero short circuits between 3V and GND.
๐Ÿ“ป
RF 2.4GHz BandConnectedBroadcast packet telemetry stream.
Sensor Raw ADC & I2C Telemetry10-Bit ADC
Sensor InputBus TypeRaw DigitalConverted Unit
โ˜€๏ธ Photocell (Light)Internal Matrix12850% Lux
๐ŸŒก๏ธ Thermistor (Temp)I2C Subsystem49024ยฐC
๐Ÿ“ณ Accelerometer (X,Y,Z)LSM303AGR I2C(0, 0, 1024)1.0g Flat
๐Ÿ”Œ GPIO Pin 0Edge Connector00.0V (Low)
Oscilloscope Signal Waveform50 Hz PWM
CH1: GPIO Pin 0 (PWM Servo) | 20ms/div | 3.3V pk-pk

Apply Simulator Skills โ€ข Try it yourself

Build an Inventory System

๐Ÿ”„Direct Simulator Transfer: Step 5 Tasks 13, 14 & 15

Now that you've practiced the virtual mechanics in the simulator above, apply those exact skills in your real computer environment:

๐ŸŒŸ Student Project GuideSuccess Criteria & WAGOLL (What A Good One Looks Like)โ–พ

๐ŸŽฏ Task Success Criteria (Rubric)

Foundation

Creates a list variable and adds items manually.

Developing

Uses code blocks to append and delete items from a list.

Secure (Goal)

Retrieves specific list items using index numbers (e.g. item 1 of inventory).

Mastery

Iterates through an entire list using a repeat loop and index counter to process every item.

๐Ÿ‘€ What A Good One Looks Like (WAGOLL)

๐Ÿ“
Save to Your Website Portfolio:

When you finish creating your project in your software, copy the share link or take a screenshot and publish it onto your student portfolio website!

Reflect

๐ŸŽฏ

Self-Assessment & Reflection

What happens if you try to access item 5 in a list that only has 3 items?

๐ŸŸขSecure Level

Retrieves specific list items using index numbers (e.g. item 1 of inventory).

Learning check

Learning Check

In a list ["Apple", "Banana", "Cherry"], what item is at index 2?

Select the best answer:

Answer correctly to unlock the next level.

Awesome! Item 2 is "Banana".Counting from index 1: 1=Apple, 2=Banana, 3=Cherry.
Teacher setup, curriculum links and progress descriptors

Spark support

Routine: Connect-Extend-Challenge

Teacher notes: Facilitate the Connect-Extend-Challenge routine for 2โ€“3 minutes. Encourage students to connect the prompt to Perspective (Organizing multiple pieces of related data into ordered lists enables efficient automated searching and processing.).

Achievement pathway

  • Foundation: Creates a list variable and adds items manually.
  • Developing: Uses code blocks to append and delete items from a list.
  • Secure: Retrieves specific list items using index numbers (e.g. item 1 of inventory).
  • Mastering: Iterates through an entire list using a repeat loop and index counter to process every item.

Curriculum links

Curriculum strand: Algorithms and Programming

Outcome: VARD.05.B.1.5 โ€” Create, populate, and manipulate ordered lists (arrays) to store multiple items, access elements by index, and iterate through collections.

PYP: Perspective ยท Organizing multiple pieces of related data into ordered lists enables efficient automated searching and processing.

Learner profile: Knowledgeable

Competency tags

  • Lists
  • Arrays
  • Indexing
  • Inventory
  • Data Processing

Gate support

Accessibility alternative: Students may verbally explain or point to the correct answer for "In a list ["Apple", "Banana", "Cherry"], what item is at index 2?" with a teacher or teaching assistant.

Teacher override: allow

Back to top

Locked level

Level 6: Lists & Dictionaries

Complete the previous learning check to unlock this next level.

Level 6

Lists & Dictionaries

Design complex data structures (key-value dictionaries, 2D arrays) and implement list operations (sorting, searching, appending) in text code.

Learning objective

Students will write text code (Python) to define lists and key-value dictionaries, access nested data structures, and implement linear searching operations.

Let's Go!

Step media

Learn

In text languages like Python, we use lists `[val1, val2]` for ordered sequences and dictionaries `{"key": "value"}` for named attributes. A dictionary allows you to look up values by name (e.g., `user["email"]`) rather than an index number. In computing, structuring complex data into key-value pairs and 2D matrices allows software systems to model real-world data effectively. As you explore the interactive Social Privacy Simulator below, focus on how to define Python dictionaries with key-value pairs `player = {"name": "Alex", "score": 100}`.

Interactive Simulator Sandbox

Apply Simulator Skills โ€ข Try it yourself

Build a Python High-Score Database

๐Ÿ”„Direct Simulator Transfer: Step 6 Tasks 16, 17 & 18

Now that you've practiced the virtual mechanics in the simulator above, apply those exact skills in your real computer environment:

๐ŸŒŸ Student Project GuideSuccess Criteria & WAGOLL (What A Good One Looks Like)โ–พ

๐ŸŽฏ Task Success Criteria (Rubric)

Foundation

Declares a Python list using square brackets `items = ["a", "b"]`.

Developing

Uses list methods like `.append()`, `.remove()`, and `len()`.

Secure (Goal)

Defines Python dictionaries with key-value pairs `player = {"name": "Alex", "score": 100}`.

Mastery

Iterates through nested data structures (list of dictionaries) to search and filter complex datasets.

๐Ÿ‘€ What A Good One Looks Like (WAGOLL)

๐Ÿ“
Save to Your Website Portfolio:

When you finish creating your project in your software, copy the share link or take a screenshot and publish it onto your student portfolio website!

Reflect

๐ŸŽฏ

Self-Assessment & Reflection

When would you choose a dictionary over a list to store data in a Python application?

๐ŸŸขSecure Level

Defines Python dictionaries with key-value pairs `player = {"name": "Alex", "score": 100}`.

Learning check

Learning Check

In Python, which syntax defines a dictionary key-value pair?

Select the best answer:

Answer correctly to complete this strand.

Perfect! Dictionaries use curly braces `{}` with `key: value` pairs.Dictionaries are defined using curly braces with key: value pairs like `{"name": "Alex"}`.
Teacher setup, curriculum links and progress descriptors

Spark support

Routine: Think-Pair-Share

Teacher notes: Facilitate the Think-Pair-Share routine for 2โ€“3 minutes. Encourage students to connect the prompt to Reflection (Structuring complex data into key-value pairs and 2D matrices allows software systems to model real-world data effectively.).

Achievement pathway

  • Foundation: Declares a Python list using square brackets `items = ["a", "b"]`.
  • Developing: Uses list methods like `.append()`, `.remove()`, and `len()`.
  • Secure: Defines Python dictionaries with key-value pairs `player = {"name": "Alex", "score": 100}`.
  • Mastering: Iterates through nested data structures (list of dictionaries) to search and filter complex datasets.

Curriculum links

Curriculum strand: Algorithms and Programming

Outcome: VARD.06.B.1.6 โ€” Design complex data structures (key-value dictionaries, 2D arrays) and implement list operations (sorting, searching, appending) in text code.

PYP: Reflection ยท Structuring complex data into key-value pairs and 2D matrices allows software systems to model real-world data effectively.

Learner profile: Reflective

Competency tags

  • Python Lists
  • Dictionaries
  • 2D Arrays
  • Data Structures
  • Searching

Gate support

Accessibility alternative: Students may verbally explain or point to the correct answer for "In Python, which syntax defines a dictionary key-value pair?" with a teacher or teaching assistant.

Teacher override: allow

๐ŸŽ’ Students Home โ†’

Install App for Classroom

One-click fullscreen learning for Chromebooks, iPads & PCs

๐Ÿ–ฅ๏ธ
Distraction-FreeFullscreen window without browser tabs or search clutter.
โšก
1-Tap LaunchPin directly to the Chromebook shelf, iPad dock, or Windows taskbar.
๐Ÿ“ถ
Classroom SpeedInstant cached loads for lessons and simulators even on school Wi-Fi.
๐Ÿ”’
Safe & Ad-Free100% free, private, and no app store logins or passwords needed.
  1. 1
    Click the Install button

    In your browser, look at the right end of the top web address bar for the ๐Ÿ’ป Install or โค“ icon.

  2. 2
    Confirm "Install"

    A popup will ask if you want to install "Ed Tech Hub". Click Install.

  3. 3
    Pin to your Shelf

    Right-click (or two-finger tap) the app icon in your Chromebook bottom shelf and select "Pin"!