# Michigan 3A: 3A-AP-23

## CodeHS Lessons

Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.

 Standard 1.7 Commenting Your Code 1.7 Commenting Your Code 1.8 Super Karel 1.8 Super Karel 1.9 For Loops 1.9 For Loops 1.10 If Statements 1.10 If Statements 1.11 If/Else Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.12 While Loops in Karel 1.13 Control Structures Example 1.13 Control Structures Example 1.14 More Karel Examples and Testing 1.14 More Karel Examples and Testing 1.15 How to Indent Your Code 1.15 How to Indent Your Code 2.1 Challenge Problems 2.1 Challenge Problems 3.1 Hello World 3.1 Hello World 3.2 Variables 3.2 Variables 3.3 User Input 3.3 User Input 3.4 Basic Math in JavaScript 3.4 Basic Math in JavaScript 3.5 Using Graphics in JavaScript 3.5 Using Graphics in JavaScript 5.1 Booleans 5.1 Booleans 5.2 Logical Operators 5.2 Logical Operators 5.3 Comparison Operators 5.3 Comparison Operators 5.4 If Statements 5.4 If Statements 5.5 For Loops in JavaScript 5.5 For Loops in JavaScript 5.6 General For Loops 5.6 General For Loops 5.7 For Loop Practice 5.7 For Loop Practice 5.8 Random Numbers 5.8 Random Numbers 5.9 While Loops 5.9 While Loops 5.10 Loop and a Half 5.10 Loop and a Half 7.1 Functions and Parameters 1 7.1 Functions and Parameters 1 7.2 Functions and Parameters 2 7.2 Functions and Parameters 2 7.3 Functions and Parameters 3 7.3 Functions and Parameters 3 7.4 Functions and Return Values 1 7.4 Functions and Return Values 1 7.5 Functions and Return Values 2 7.5 Functions and Return Values 2 7.6 Local Variables and Scope 7.6 Local Variables and Scope 8.1 Functions Challenges 8.1 Functions Challenges 9.1 Timers 9.1 Timers 9.2 Random Circles 9.2 Random Circles 9.3 Random Ghosts 9.3 Random Ghosts 9.4 Bouncing Ball 9.4 Bouncing Ball 9.5 Mouse Events: Mouse Clicked 9.5 Mouse Events: Mouse Clicked 9.6 Mouse Events: Mouse Moved 9.6 Mouse Events: Mouse Moved 9.7 Drawing Lines 9.7 Drawing Lines 9.8 Key Events 9.8 Key Events 9.9 Crazy Ball Game 9.9 Crazy Ball Game 11.1 Breakout 11.1 Breakout 25.1 Intro to Lists/Arrays 25.2 Indexing Into an Array 25.3 Adding/Removing From an Array 25.4 Array Length and Looping Through Arrays 25.5 Iterating Over an Array 25.6 Finding an Element in a List 25.7 Removing an Element From an Array 25.8 Intro to Objects/Maps 25.9 Basics of Objects 25.10 Iterating Over an Object 25.11 When Do I Use an Object? 25.12 Intro to Sets 25.13 Intro to Grids 25.14 Looping Over a Grid 25.15 Grid Example: Get a Row 25.16 Data Structures Challenges 27.1 Game Design: Helicopter 15.1 Extra Karel Practice 16.1 Extra Karel Puzzles 26.1 Tic Tac Toe 24.1 Visualizing Music 21.1 Evolution Simulation 20.1 Conway's Game of Life 20.2 Connect Four 19.1 Fun Snake 19.2 Fun Graphics Challenges 18.1 Prime Numbers 17.1 Functions and Parameters Practice 25.1 Intro to Lists/Arrays 25.2 Indexing Into an Array 25.3 Adding/Removing From an Array 25.4 Array Length and Looping Through Arrays 25.5 Iterating Over an Array 25.6 Finding an Element in a List 25.7 Removing an Element From an Array 25.8 Intro to Objects/Maps 25.9 Basics of Objects 25.10 Iterating Over an Object 25.11 When Do I Use an Object? 25.12 Intro to Sets 25.13 Intro to Grids 25.14 Looping Over a Grid 25.15 Grid Example: Get a Row 25.16 Data Structures Challenges 27.1 Game Design: Helicopter 15.1 Extra Karel Practice 16.1 Extra Karel Puzzles 26.1 Tic Tac Toe 24.1 Visualizing Music 21.1 Evolution Simulation 20.1 Conway's Game of Life 20.2 Connect Four 19.1 Fun Snake 19.2 Fun Graphics Challenges 18.1 Prime Numbers 17.1 Functions and Parameters Practice
 Standard 1.7 Commenting Your Code 1.8 Super Karel 1.9 For Loops 1.10 If Statements and Conditionals 1.11 If/Else Statements 1.12 While Loops 1.13 How to Indent Your Code 1.14 Control Structures Example 1.15 More Karel Examples and Testing 2.1 Challenge Problems 3.1 Hello World 3.2 Variables 3.3 User Input 3.4 Basic Math 3.6 Random Numbers 6.1 Booleans 6.2 If/Else Statements 6.3 Logical Operators 6.4 Comparison Operators 6.6 While Loops 6.7 The Break Statement 6.9 For Loops 9.1 Functions Challenges 10.1 Timers 10.2 Stopping Timers 10.3 Collisions 10.4 Mouse Click Events 10.5 More Mouse Events 10.6 Key Events 12.1 Breakout 16.1 Extra Karel Practice 16.2 Extra Karel Puzzles 17.1 Functions and Parameters Practice 18.1 Prime Numbers 19.1 Fun Snake 19.2 Fun Graphics Challenges 19.3 Animation Practice 19.4 Crazy Ball Game 23.1 Conway's Game of Life 23.2 Connect Four 21.1 Visualizing Music 22.1 Intro to Lists/Arrays 22.2 Indexing Into an Array 22.3 Adding/Removing From an Array 22.4 Array Length and Looping Through Arrays 22.5 Iterating Over an Array 22.6 Finding an Element in a List 22.7 Removing an Element From an Array 22.8 Intro to Objects/Maps 22.9 Basics of Objects 22.10 Iterating Over an Object 22.11 When Do I Use an Object? 22.12 Intro to Sets 22.13 Intro to Grids 22.14 Looping Over a Grid 22.15 Grid Example: Get a Row 22.16 Data Structures Challenges 24.1 Tic Tac Toe 25.1 Game Design: Helicopter 27.1 Intro to Arrays 27.2 Adding & Removing from an Array 27.3 Iterating Through an Array
 Standard 2.6 Comments 2.6 Comments 2.13 Parameters 2.13 Parameters 3.6 Comments 3.6 Comments 6.2 Functions and Parameters 6.2 Functions and Parameters 6.4 Functions and Return Values 6.4 Functions and Return Values 7.1 Indexing 7.1 Indexing 7.2 Slicing 7.2 Slicing 7.3 Immutability 7.3 Immutability 7.4 Strings and For Loops 7.4 Strings and For Loops 7.5 The in Keyword 7.5 The in Keyword 7.6 String Methods 7.6 String Methods 8.1 Tuples 8.1 Tuples 8.2 Lists 8.2 Lists 8.3 For Loops and Lists 8.3 For Loops and Lists 8.4 List Methods 8.4 List Methods 9.1 2d Lists 9.1 2d Lists 9.2 List Comprehensions 9.2 List Comprehensions 9.3 Packing and Unpacking 9.3 Packing and Unpacking 9.4 Dictionaries 9.4 Dictionaries 9.5 Equivalence vs. Identity 9.5 Equivalence vs. Identity 12.1 Classes and Objects 12.1 Classes and Objects 12.2 Methods 12.2 Methods 12.3 Built-In Methods 12.3 Built-In Methods 12.4 Operator Overloading 12.4 Operator Overloading 12.5 Class Variables vs. Instance Variables 12.5 Class Variables vs. Instance Variables 12.6 Inheritance 12.6 Inheritance 12.7 Hidden Attributes 12.7 Hidden Attributes 12.8 Namespaces 12.8 Namespaces 12.9 Modules 12.9 Modules 16.1 Project: Who Said It? 16.1 Project: Who Said It? 23.7 Commenting Your Code
 Standard 1.8 Commenting Your Code 2.1 Practice PT: Pair-Programming Paint! 6.1 Project: Tell a Story 9.1 Practice PT: Steganography 10.1 Practice PT: Create an Image Filter! 16.1 Create Performance Task
 Standard 1.7 Commenting Your Code 2.1 Practice PT: Pair-Programming Paint! 6.1 Practice PT: Tell a Story 9.1 Practice PT: Steganography 10.1 Practice PT: Create an Image Filter! 16.1 Create Performance Task 33.1 Indexing 33.2 Slicing 33.3 Immutability 33.4 Strings and For Loops 33.5 The in Keyword 33.6 String Methods 27.1 Classes and Objects 27.2 Methods 27.3 Built-In Methods 27.4 Operator Overloading 27.5 Class Variables vs. Instance Variables 27.6 Inheritance 27.7 Hidden Attributes 27.8 Namespaces 27.9 Modules 29.1 Project: Who Said It? 33.1 Indexing 33.2 Slicing 33.3 Immutability 33.4 Strings and For Loops 33.5 The in Keyword 33.6 String Methods 27.1 Classes and Objects 27.2 Methods 27.3 Built-In Methods 27.4 Operator Overloading 27.5 Class Variables vs. Instance Variables 27.6 Inheritance 27.7 Hidden Attributes 27.8 Namespaces 27.9 Modules 29.1 Project: Who Said It?
 Standard 1.8 Commenting Your Code 2.1 Practice PT: Pair-Programming Paint! 6.1 Project: Tell a Story 12.1 Practice PT: Create an Image Filter! 19.1 Create Performance Task 31.1 Practice PT: Steganography
 Standard 1.7 Commenting Your Code 1.7 Commenting Your Code 1.8 Super Karel 1.8 Super Karel 1.9 For Loops 1.9 For Loops 1.10 If Statements 1.10 If Statements 1.11 If/Else Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.12 While Loops in Karel 1.13 Control Structures Example 1.13 Control Structures Example 1.14 More Karel Examples and Testing 1.14 More Karel Examples and Testing 1.15 How to Indent Your Code 1.15 How to Indent Your Code 5.1 Project: Your First Website 5.1 Project: Your First Website 11.1 Extra Karel Practice 11.1 Extra Karel Practice 12.1 Extra Karel Puzzles 12.1 Extra Karel Puzzles 13.6 Comments 13.6 Comments 13.13 Parameters 13.13 Parameters
 Standard 4.1 Homepage: Your First Website 7.1 What is Bootstrap? 7.2 Getting Started with Bootstrap 7.3 The Bootstrap Grid System 7.4 Bootstrap Components 7.6 Navigation Bars 7.7 Drop Down Menus 7.8 Using Bootstrap Examples 7.9 Bootstrap Challenges 8.1 Bootstrap Project 10.1 Final Web Design Project 13.1 Design Research Project
 Standard 7.3 Creating Your Site 7.4 Providing Feedback 9.1 Hello World 9.1 Hello World 9.2 Variables 9.2 Variables 9.19 Intro to Lists/Arrays 9.19 Intro to Lists/Arrays 9.20 Indexing Into an Array 9.20 Indexing Into an Array 9.3 User Input 9.3 User Input 9.4 Basic Math in JavaScript 9.4 Basic Math in JavaScript 9.21 Adding/Removing From an Array 9.21 Adding/Removing From an Array 9.5 Booleans 9.5 Booleans 9.6 Logical Operators 9.6 Logical Operators 9.7 Comparison Operators 9.7 Comparison Operators 9.8 If Statements 9.8 If Statements 9.22 Array Length and Looping Through Arrays 9.22 Array Length and Looping Through Arrays 9.11 Random Numbers 9.11 Random Numbers 9.12 While Loops 9.12 While Loops 9.13 Loop and a Half 9.13 Loop and a Half 9.14 Functions and Parameters 1 9.14 Functions and Parameters 1 9.16 Functions and Return Values 1 9.16 Functions and Return Values 1 9.18 Local Variables and Scope 9.18 Local Variables and Scope 9.9 For Loops in JavaScript 9.9 For Loops in JavaScript 9.15 Functions and Parameters 2 9.15 Functions and Parameters 2 9.10 For Loop Practice 9.10 For Loop Practice 9.17 Functions and Return Values 2 9.17 Functions and Return Values 2
 Standard 19.15 Your First Website 19.15 Your First Website 21.1 Challenge Problems 21.1 Challenge Problems 22.1 Booleans 22.1 Booleans 22.2 Logical Operators 22.2 Logical Operators 22.3 Comparison Operators 22.3 Comparison Operators 22.4 If Statements 22.4 If Statements 22.8 Random Numbers 22.8 Random Numbers 22.9 While Loops 22.9 While Loops 22.10 Loop and a Half 22.10 Loop and a Half 22.5 For Loops in JavaScript 22.5 For Loops in JavaScript 22.6 General For Loops 22.6 General For Loops 22.7 For Loop Practice 22.7 For Loop Practice
 Standard 3.1 Comentarios 4.3 ParÃ¡metros
 Standard 1.14 Project: Your First Website 1.14 Project: Your First Website 2.7 Commenting Your Code 2.7 Commenting Your Code 2.8 Super Karel 2.8 Super Karel 2.9 For Loops 2.9 For Loops 2.10 If Statements 2.10 If Statements 2.11 If/Else Statements 2.11 If/Else Statements 2.12 While Loops in Karel 2.12 While Loops in Karel 2.13 Control Structures Example 2.13 Control Structures Example 2.14 More Karel Examples and Testing 2.14 More Karel Examples and Testing 2.15 How to Indent Your Code 2.15 How to Indent Your Code 3.6 Comments 3.6 Comments 3.13 Parameters 3.13 Parameters 4.1 Extra Karel Practice 4.1 Extra Karel Practice 5.1 Extra Karel Puzzles 5.1 Extra Karel Puzzles
 Standard 1.14 Project: Your First Website 1.14 Project: Your First Website 2.7 Commenting Your Code 2.7 Commenting Your Code 2.8 Super Karel 2.8 Super Karel 2.9 For Loops 2.9 For Loops 2.10 If Statements 2.10 If Statements 2.11 If/Else Statements 2.11 If/Else Statements 2.12 While Loops in Karel 2.12 While Loops in Karel 2.13 Control Structures Example 2.13 Control Structures Example 2.14 More Karel Examples and Testing 2.14 More Karel Examples and Testing 2.15 How to Indent Your Code 2.15 How to Indent Your Code 3.1 Hello World 3.1 Hello World 3.2 Variables 3.2 Variables 3.3 User Input 3.3 User Input 3.4 Basic Math in JavaScript 3.4 Basic Math in JavaScript 3.5 Using Graphics in JavaScript 3.5 Using Graphics in JavaScript 4.1 Extra Karel Practice 4.1 Extra Karel Practice 5.1 Extra Karel Puzzles 5.1 Extra Karel Puzzles 6.6 Comments 6.6 Comments 6.13 Parameters 6.13 Parameters
 Standard 7.15 Functions and Parameters 7.15 Functions and Parameters 7.17 Functions and Return Values 7.17 Functions and Return Values
 Standard 6.1 Tuples 6.1 Tuples 6.2 Lists 6.2 Lists 6.3 For Loops and Lists 6.3 For Loops and Lists 6.4 List Methods 6.4 List Methods 6.5 2d Lists 6.5 2d Lists 6.6 Dictionaries 6.6 Dictionaries
 Standard 1.7 Commenting Your Code 1.7 Commenting Your Code 1.8 Super Karel 1.8 Super Karel 1.9 For Loops 1.9 For Loops 1.10 If Statements 1.10 If Statements 1.11 If/Else Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.12 While Loops in Karel 1.13 Control Structures Example 1.13 Control Structures Example 1.14 More Karel Examples and Testing 1.14 More Karel Examples and Testing 1.15 How to Indent Your Code 1.15 How to Indent Your Code
 Standard 7.1 Writing BlackJack 7.1 Writing BlackJack 8.1 Mad Libs 8.1 Mad Libs
 Standard 1.6 Comments 1.6 Comments 1.13 Parameters 1.13 Parameters 2.6 Comments 2.6 Comments 6.2 Functions and Parameters 6.2 Functions and Parameters 6.4 Functions and Return Values 6.4 Functions and Return Values 8.1 Indexing 8.1 Indexing 8.2 Slicing 8.2 Slicing 8.3 Immutability 8.3 Immutability 8.4 Strings and For Loops 8.4 Strings and For Loops 8.5 The in Keyword 8.5 The in Keyword 8.6 String Methods 8.6 String Methods 9.1 Tuples 9.1 Tuples 9.2 Lists 9.2 Lists 9.3 For Loops and Lists 9.3 For Loops and Lists 9.4 List Methods 9.4 List Methods 10.1 2d Lists 10.1 2d Lists 10.2 List Comprehensions 10.2 List Comprehensions 10.3 Packing and Unpacking 10.3 Packing and Unpacking 10.4 Dictionaries 10.4 Dictionaries 10.5 Equivalence vs. Identity 10.5 Equivalence vs. Identity 12.4 Final Project 14.1 Classes and Objects 14.1 Classes and Objects 14.2 Methods 14.2 Methods 14.3 Built-In Methods 14.3 Built-In Methods 14.4 Operator Overloading 14.4 Operator Overloading 14.5 Class Variables vs. Instance Variables 14.5 Class Variables vs. Instance Variables 14.6 Inheritance 14.6 Inheritance 14.7 Hidden Attributes 14.7 Hidden Attributes 14.8 Namespaces 14.8 Namespaces 14.9 Modules 14.9 Modules
 Standard 1.7 Commenting Your Code 1.7 Commenting Your Code 1.8 Super Karel 1.8 Super Karel 1.9 For Loops 1.9 For Loops 1.10 If Statements 1.10 If Statements 1.11 If/Else Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.12 While Loops in Karel 1.13 Control Structures Example 1.13 Control Structures Example 1.14 More Karel Examples and Testing 1.14 More Karel Examples and Testing 1.15 How to Indent Your Code 1.15 How to Indent Your Code 2.1 Challenge Problems 2.1 Challenge Problems 3.1 Hello World 3.1 Hello World 3.2 Variables 3.2 Variables 3.3 User Input 3.3 User Input 3.4 Basic Math in JavaScript 3.4 Basic Math in JavaScript 3.5 Using Graphics in JavaScript 3.5 Using Graphics in JavaScript 6.1 Booleans 6.1 Booleans 6.2 Logical Operators 6.2 Logical Operators 6.3 Comparison Operators 6.3 Comparison Operators 6.4 If Statements 6.4 If Statements 6.5 For Loops in JavaScript 6.5 For Loops in JavaScript 6.6 General For Loops 6.6 General For Loops 6.7 For Loop Practice 6.7 For Loop Practice 6.8 Random Numbers 6.8 Random Numbers 6.9 While Loops 6.9 While Loops 6.10 Loop and a Half 6.10 Loop and a Half 8.1 Functions and Parameters 1 8.1 Functions and Parameters 1 8.2 Functions and Parameters 2 8.2 Functions and Parameters 2 8.3 Functions and Parameters 3 8.3 Functions and Parameters 3 8.4 Functions and Return Values 1 8.4 Functions and Return Values 1 8.5 Functions and Return Values 2 8.5 Functions and Return Values 2 8.6 Local Variables and Scope 8.6 Local Variables and Scope 9.1 Functions Challenges 9.1 Functions Challenges 11.1 Timers 11.1 Timers 11.2 Random Circles 11.2 Random Circles 11.3 Random Ghosts 11.3 Random Ghosts 11.4 Bouncing Ball 11.4 Bouncing Ball 11.5 Mouse Events: Mouse Clicked 11.5 Mouse Events: Mouse Clicked 11.6 Mouse Events: Mouse Moved 11.6 Mouse Events: Mouse Moved 11.7 Drawing Lines 11.7 Drawing Lines 11.8 Key Events 11.8 Key Events 11.9 Crazy Ball Game 11.9 Crazy Ball Game 13.1 Breakout 13.1 Breakout 14.4 Final Project 18.1 Extra Karel Practice 18.1 Extra Karel Practice 19.1 Extra Karel Puzzles 19.1 Extra Karel Puzzles 20.1 Functions and Parameters Practice 20.1 Functions and Parameters Practice 21.1 Tic Tac Toe 21.1 Tic Tac Toe 22.1 Game Design: Helicopter 22.1 Game Design: Helicopter
 Standard 3.1 Comments 3.1 Comments 4.3 Parameters 4.3 Parameters 9.4 Final Project
 Standard 10.4 Final Project
 Standard 3.4 Final Project
 Standard 3.4 Final Project
 Standard 2.7 Commenting Your Code 2.7 Commenting Your Code 2.9 Super Karel 2.9 Super Karel 2.10 For Loops 2.10 For Loops 2.11 If Statements 2.11 If Statements 2.12 If/Else Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.13 While Loops in Karel 2.14 Control Structures Example 2.14 Control Structures Example 2.15 More Karel Examples and Testing 2.15 More Karel Examples and Testing 2.16 How to Indent Your Code 2.16 How to Indent Your Code 3.2 Challenge Problems 3.2 Challenge Problems 5.1 Hello World 5.1 Hello World 5.2 Variables 5.2 Variables 5.3 User Input 5.3 User Input 5.4 Basic Math in JavaScript 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 5.5 Using Graphics in JavaScript 7.1 Booleans 7.1 Booleans 7.2 Logical Operators 7.2 Logical Operators 7.3 Comparison Operators 7.3 Comparison Operators 7.4 If Statements 7.4 If Statements 7.5 For Loops in JavaScript 7.5 For Loops in JavaScript 7.6 General For Loops 7.6 General For Loops 7.7 For Loop Practice 7.7 For Loop Practice 7.9 While Loops 7.9 While Loops 7.10 Loop and a Half 7.10 Loop and a Half 9.1 Functions and Parameters 1 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2 9.5 Functions and Return Values 2 9.6 Timers 9.6 Timers 9.7 Random Circles 9.7 Random Circles 9.8 Random Ghosts 9.8 Random Ghosts 9.9 Bouncing Ball 9.9 Bouncing Ball 9.10 Mouse Events: Mouse Clicked 9.10 Mouse Events: Mouse Clicked 9.11 Intro to Lists/Arrays 9.11 Intro to Lists/Arrays 9.12 Adding/Removing From an Array 9.12 Adding/Removing From an Array 9.13 Array Length and Looping Through Arrays 9.13 Array Length and Looping Through Arrays 9.14 Iterating Over an Array 9.14 Iterating Over an Array 15.1 Mouse Events: Mouse Moved 15.1 Mouse Events: Mouse Moved 15.2 Drawing Lines 15.2 Drawing Lines 15.3 Key Events 15.3 Key Events 15.4 Crazy Ball Game 15.4 Crazy Ball Game 16.1 Indexing Into an Array 16.1 Indexing Into an Array 16.2 Finding an Element in a List 16.2 Finding an Element in a List 16.3 Removing an Element From an Array 16.3 Removing an Element From an Array 17.1 Intro to Objects/Maps 17.1 Intro to Objects/Maps 17.2 Basics of Objects 17.2 Basics of Objects 17.3 Iterating Over an Object 17.3 Iterating Over an Object 17.4 When Do I Use an Object? 17.4 When Do I Use an Object? 17.5 Intro to Sets 17.5 Intro to Sets 17.6 Intro to Grids 17.6 Intro to Grids 17.7 Looping Over a Grid 17.7 Looping Over a Grid 17.8 Grid Example: Get a Row 17.8 Grid Example: Get a Row 17.9 Data Structures Challenges 17.9 Data Structures Challenges 12.1 Extra Karel Practice 12.1 Extra Karel Practice 13.1 Extra Karel Puzzles 13.1 Extra Karel Puzzles 14.1 Functions and Parameters Practice 14.1 Functions and Parameters Practice
 Standard 1.6 Comments 1.6 Comments 1.13 Parameters 1.13 Parameters 11.7 Commenting Your Code 11.7 Commenting Your Code 11.8 Super Karel 11.8 Super Karel 11.9 For Loops 11.9 For Loops 11.10 If Statements 11.10 If Statements 11.11 If/Else Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.12 While Loops in Karel 11.13 Control Structures Example 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.14 More Karel Examples and Testing 11.15 How to Indent Your Code 11.15 How to Indent Your Code 12.1 Extra Karel Puzzles 12.1 Extra Karel Puzzles 15.4 Final Project
 Standard 7.1 Pokemon Simulation 7.1 Pokemon Simulation 9.1 Java Outside of CodeHS 9.1 Java Outside of CodeHS 8.1 Mad Libs 8.1 Mad Libs
 Standard 2.7 Commenting Your Code 2.7 Commenting Your Code 2.9 Super Karel 2.9 Super Karel 2.10 For Loops 2.10 For Loops 2.11 If Statements 2.11 If Statements 2.12 If/Else Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.13 While Loops in Karel 2.14 Control Structures Example 2.14 Control Structures Example 2.15 More Karel Examples and Testing 2.15 More Karel Examples and Testing 2.16 How to Indent Your Code 2.16 How to Indent Your Code 3.2 Challenge Problems 3.2 Challenge Problems 5.1 Hello World 5.1 Hello World 5.2 Variables 5.2 Variables 5.3 User Input 5.3 User Input 5.4 Basic Math in JavaScript 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 5.5 Using Graphics in JavaScript 7.1 Booleans 7.1 Booleans 7.2 Logical Operators 7.2 Logical Operators 7.3 Comparison Operators 7.3 Comparison Operators 7.4 If Statements 7.4 If Statements 7.5 For Loops in JavaScript 7.5 For Loops in JavaScript 7.6 General For Loops 7.6 General For Loops 7.7 For Loop Practice 7.7 For Loop Practice 7.8 Random Numbers 7.8 Random Numbers 7.9 While Loops 7.9 While Loops 7.10 Loop and a Half 7.10 Loop and a Half 9.1 Functions and Parameters 1 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2 9.5 Functions and Return Values 2 9.6 Timers 9.6 Timers 9.7 Random Circles 9.7 Random Circles 9.8 Random Ghosts 9.8 Random Ghosts 9.9 Bouncing Ball 9.9 Bouncing Ball 9.10 Mouse Events: Mouse Clicked 9.10 Mouse Events: Mouse Clicked 9.11 Intro to Lists/Arrays 9.11 Intro to Lists/Arrays 9.12 Adding/Removing From an Array 9.12 Adding/Removing From an Array 9.13 Array Length and Looping Through Arrays 9.13 Array Length and Looping Through Arrays 9.14 Iterating Over an Array 9.14 Iterating Over an Array 12.1 Extra Karel Practice 12.1 Extra Karel Practice 13.1 Extra Karel Puzzles 13.1 Extra Karel Puzzles 14.1 Functions and Parameters Practice 14.1 Functions and Parameters Practice 15.1 Mouse Events: Mouse Moved 15.1 Mouse Events: Mouse Moved 15.2 Drawing Lines 15.2 Drawing Lines 15.3 Key Events 15.3 Key Events 15.4 Crazy Ball Game 15.4 Crazy Ball Game 16.1 Indexing Into an Array 16.1 Indexing Into an Array 16.2 Finding an Element in a List 16.2 Finding an Element in a List 16.3 Removing an Element From an Array 16.3 Removing an Element From an Array 17.1 Intro to Objects/Maps 17.1 Intro to Objects/Maps 17.2 Basics of Objects 17.2 Basics of Objects 17.3 Iterating Over an Object 17.3 Iterating Over an Object 17.4 When Do I Use an Object? 17.4 When Do I Use an Object? 17.5 Intro to Sets 17.5 Intro to Sets 17.6 Intro to Grids 17.6 Intro to Grids 17.7 Looping Over a Grid 17.7 Looping Over a Grid 17.8 Grid Example: Get a Row 17.8 Grid Example: Get a Row 17.9 Data Structures Challenges 17.9 Data Structures Challenges
 Standard 2.7 Commenting Your Code 2.7 Commenting Your Code 2.9 Super Karel 2.9 Super Karel 2.10 For Loops 2.10 For Loops 2.11 If Statements 2.11 If Statements 2.12 If/Else Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.13 While Loops in Karel 2.14 Control Structures Example 2.14 Control Structures Example 2.15 More Karel Examples and Testing 2.15 More Karel Examples and Testing 2.16 How to Indent Your Code 2.16 How to Indent Your Code 3.2 Challenge Problems 3.2 Challenge Problems 6.2 Hello World 6.2 Hello World 6.3 Variables 6.3 Variables 6.4 User Input 6.4 User Input 6.5 Basic Math in JavaScript 6.5 Basic Math in JavaScript 6.6 Using Graphics in JavaScript 6.6 Using Graphics in JavaScript 8.1 Booleans 8.1 Booleans 8.2 Logical Operators 8.2 Logical Operators 8.3 Comparison Operators 8.3 Comparison Operators 8.4 If Statements 8.4 If Statements 8.5 For Loops in JavaScript 8.5 For Loops in JavaScript 8.6 General For Loops 8.6 General For Loops 8.7 For Loop Practice 8.7 For Loop Practice 8.8 Random Numbers 8.8 Random Numbers 8.9 While Loops 8.9 While Loops 8.10 Loop and a Half 8.10 Loop and a Half 10.1 Functions and Parameters 1 10.1 Functions and Parameters 1 10.2 Functions and Parameters 2 10.2 Functions and Parameters 2 10.3 Functions and Parameters 3 10.3 Functions and Parameters 3 10.4 Functions and Return Values 1 10.4 Functions and Return Values 1 10.5 Functions and Return Values 2 10.5 Functions and Return Values 2 10.7 Timers 10.7 Timers 10.8 Random Circles 10.8 Random Circles 10.9 Random Ghosts 10.9 Random Ghosts 10.10 Bouncing Ball 10.10 Bouncing Ball 10.11 Mouse Events: Mouse Clicked 10.11 Mouse Events: Mouse Clicked 10.12 Intro to Lists/Arrays 10.12 Intro to Lists/Arrays 10.13 Adding/Removing From an Array 10.13 Adding/Removing From an Array 10.14 Array Length and Looping Through Arrays 10.14 Array Length and Looping Through Arrays 10.15 Iterating Over an Array 10.15 Iterating Over an Array 15.1 Extra Karel Practice 15.1 Extra Karel Practice 16.1 Extra Karel Puzzles 16.1 Extra Karel Puzzles 17.1 Functions and Parameters Practice 17.1 Functions and Parameters Practice 18.1 Mouse Events: Mouse Moved 18.1 Mouse Events: Mouse Moved 18.2 Drawing Lines 18.2 Drawing Lines 18.3 Key Events 18.3 Key Events 18.4 Crazy Ball Game 18.4 Crazy Ball Game 13.1 Indexing Into an Array 13.1 Indexing Into an Array 13.2 Finding an Element in a List 13.2 Finding an Element in a List 13.3 Removing an Element From an Array 13.3 Removing an Element From an Array 14.1 Intro to Objects/Maps 14.1 Intro to Objects/Maps 14.2 Basics of Objects 14.2 Basics of Objects 14.3 Iterating Over an Object 14.3 Iterating Over an Object 14.4 When Do I Use an Object? 14.4 When Do I Use an Object? 14.5 Intro to Sets 14.5 Intro to Sets 14.6 Intro to Grids 14.6 Intro to Grids 14.7 Looping Over a Grid 14.7 Looping Over a Grid 14.8 Grid Example: Get a Row 14.8 Grid Example: Get a Row 14.9 Data Structures Challenges 14.9 Data Structures Challenges
 Standard 2.6 Comments 2.6 Comments 2.14 Parameters 2.14 Parameters 5.6 Comments 5.6 Comments 8.2 Functions and Parameters 8.2 Functions and Parameters 8.4 Functions and Return Values 8.4 Functions and Return Values 9.1 Indexing 9.1 Indexing 9.2 Slicing 9.2 Slicing 9.3 Immutability 9.3 Immutability 9.4 Strings and For Loops 9.4 Strings and For Loops 9.5 The in Keyword 9.5 The in Keyword 9.6 String Methods 9.6 String Methods 10.1 Tuples 10.1 Tuples 10.2 Lists 10.2 Lists 10.3 For Loops and Lists 10.3 For Loops and Lists 10.4 List Methods 10.4 List Methods 11.1 2d Lists 11.1 2d Lists 11.2 List Comprehensions 11.2 List Comprehensions 11.3 Packing and Unpacking 11.3 Packing and Unpacking 11.4 Dictionaries 11.4 Dictionaries 11.5 Equivalence vs. Identity 11.5 Equivalence vs. Identity 18.1 Project: Who Said It? 18.1 Project: Who Said It?
 Standard 3.7 Commenting Your Code 3.7 Commenting Your Code 3.9 Super Karel 3.9 Super Karel 3.10 For Loops 3.10 For Loops 3.11 If Statements 3.11 If Statements 3.12 If/Else Statements 3.12 If/Else Statements 3.13 While Loops in Karel 3.13 While Loops in Karel 3.14 Control Structures Example 3.14 Control Structures Example 3.15 More Karel Examples and Testing 3.15 More Karel Examples and Testing 3.16 How to Indent Your Code 3.16 How to Indent Your Code 4.2 Challenge Problems 4.2 Challenge Problems 6.1 Hello World 6.1 Hello World 6.2 Variables 6.2 Variables 6.3 User Input 6.3 User Input 6.4 Basic Math in JavaScript 6.4 Basic Math in JavaScript 6.5 Using Graphics in JavaScript 6.5 Using Graphics in JavaScript 8.1 Booleans 8.1 Booleans 8.2 Logical Operators 8.2 Logical Operators 8.3 Comparison Operators 8.3 Comparison Operators 8.4 If Statements 8.4 If Statements 8.5 For Loops in JavaScript 8.5 For Loops in JavaScript 8.6 General For Loops 8.6 General For Loops 8.7 For Loop Practice 8.7 For Loop Practice 8.8 Random Numbers 8.8 Random Numbers 8.9 While Loops 8.9 While Loops 8.10 Loop and a Half 8.10 Loop and a Half 10.1 Functions and Parameters 1 10.1 Functions and Parameters 1 10.2 Functions and Parameters 2 10.2 Functions and Parameters 2 10.3 Functions and Parameters 3 10.3 Functions and Parameters 3 10.4 Functions and Return Values 1 10.4 Functions and Return Values 1 10.5 Functions and Return Values 2 10.5 Functions and Return Values 2 10.6 Timers 10.6 Timers 10.7 Random Circles 10.7 Random Circles 10.8 Random Ghosts 10.8 Random Ghosts 10.9 Bouncing Ball 10.9 Bouncing Ball 10.10 Mouse Events: Mouse Clicked 10.10 Mouse Events: Mouse Clicked 10.11 Intro to Lists/Arrays 10.11 Intro to Lists/Arrays 10.12 Adding/Removing From an Array 10.12 Adding/Removing From an Array 10.13 Array Length and Looping Through Arrays 10.13 Array Length and Looping Through Arrays 10.14 Iterating Over an Array 10.14 Iterating Over an Array 13.1 Extra Karel Practice 13.1 Extra Karel Practice 14.1 Extra Karel Puzzles 14.1 Extra Karel Puzzles 15.1 Functions and Parameters Practice 15.1 Functions and Parameters Practice 16.1 Mouse Events: Mouse Moved 16.1 Mouse Events: Mouse Moved 16.2 Drawing Lines 16.2 Drawing Lines 16.3 Key Events 16.3 Key Events 16.4 Crazy Ball Game 16.4 Crazy Ball Game 17.1 Indexing Into an Array 17.1 Indexing Into an Array 17.2 Finding an Element in a List 17.2 Finding an Element in a List 17.3 Removing an Element From an Array 17.3 Removing an Element From an Array 18.1 Intro to Objects/Maps 18.1 Intro to Objects/Maps 18.2 Basics of Objects 18.2 Basics of Objects 18.3 Iterating Over an Object 18.3 Iterating Over an Object 18.4 When Do I Use an Object? 18.4 When Do I Use an Object? 18.5 Intro to Sets 18.5 Intro to Sets 18.6 Intro to Grids 18.6 Intro to Grids 18.7 Looping Over a Grid 18.7 Looping Over a Grid 18.8 Grid Example: Get a Row 18.8 Grid Example: Get a Row 18.9 Data Structures Challenges 18.9 Data Structures Challenges
 Standard 2.7 Commenting Your Code 2.7 Commenting Your Code 2.9 Super Karel 2.9 Super Karel 2.10 For Loops 2.10 For Loops 2.11 If Statements 2.11 If Statements 2.12 If/Else Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.13 While Loops in Karel 2.14 Control Structures Example 2.14 Control Structures Example 2.15 More Karel Examples and Testing 2.15 More Karel Examples and Testing 2.16 How to Indent Your Code 2.16 How to Indent Your Code 3.2 Challenge Problems 3.2 Challenge Problems 5.1 Hello World 5.1 Hello World 5.2 Variables 5.2 Variables 5.3 User Input 5.3 User Input 5.4 Basic Math in JavaScript 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 5.5 Using Graphics in JavaScript 7.1 Booleans 7.1 Booleans 7.2 Logical Operators 7.2 Logical Operators 7.3 Comparison Operators 7.3 Comparison Operators 7.4 If Statements 7.4 If Statements 7.5 For Loops in JavaScript 7.5 For Loops in JavaScript 7.6 General For Loops 7.6 General For Loops 7.7 For Loop Practice 7.7 For Loop Practice 7.9 While Loops 7.9 While Loops 7.10 Loop and a Half 7.10 Loop and a Half 9.1 Functions and Parameters 1 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2 9.5 Functions and Return Values 2 9.6 Timers 9.6 Timers 9.7 Random Circles 9.7 Random Circles 9.8 Random Ghosts 9.8 Random Ghosts 9.9 Bouncing Ball 9.9 Bouncing Ball 9.10 Mouse Events: Mouse Clicked 9.10 Mouse Events: Mouse Clicked 9.11 Intro to Lists/Arrays 9.11 Intro to Lists/Arrays 9.12 Adding/Removing From an Array 9.12 Adding/Removing From an Array 9.13 Array Length and Looping Through Arrays 9.13 Array Length and Looping Through Arrays 9.14 Iterating Over an Array 9.14 Iterating Over an Array 15.1 Mouse Events: Mouse Moved 15.1 Mouse Events: Mouse Moved 15.2 Drawing Lines 15.2 Drawing Lines 15.3 Key Events 15.3 Key Events 15.4 Crazy Ball Game 15.4 Crazy Ball Game 16.1 Indexing Into an Array 16.1 Indexing Into an Array 16.2 Finding an Element in a List 16.2 Finding an Element in a List 16.3 Removing an Element From an Array 16.3 Removing an Element From an Array 17.1 Intro to Objects/Maps 17.1 Intro to Objects/Maps 17.2 Basics of Objects 17.2 Basics of Objects 17.3 Iterating Over an Object 17.3 Iterating Over an Object 17.4 When Do I Use an Object? 17.4 When Do I Use an Object? 17.5 Intro to Sets 17.5 Intro to Sets 17.6 Intro to Grids 17.6 Intro to Grids 17.7 Looping Over a Grid 17.7 Looping Over a Grid 17.8 Grid Example: Get a Row 17.8 Grid Example: Get a Row 17.9 Data Structures Challenges 17.9 Data Structures Challenges 12.1 Extra Karel Practice 12.1 Extra Karel Practice 13.1 Extra Karel Puzzles 13.1 Extra Karel Puzzles 14.1 Functions and Parameters Practice 14.1 Functions and Parameters Practice
 Standard 1.6 Comments 1.6 Comments 1.13 Parameters 1.13 Parameters 11.7 Commenting Your Code 11.7 Commenting Your Code 11.8 Super Karel 11.8 Super Karel 11.9 For Loops 11.9 For Loops 11.10 If Statements 11.10 If Statements 11.11 If/Else Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.12 While Loops in Karel 11.13 Control Structures Example 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.14 More Karel Examples and Testing 11.15 How to Indent Your Code 11.15 How to Indent Your Code 12.1 Extra Karel Puzzles 12.1 Extra Karel Puzzles 15.4 Final Project
 Standard 2.7 Commenting Your Code 2.7 Commenting Your Code 2.9 Super Karel 2.9 Super Karel 2.10 For Loops 2.10 For Loops 2.11 If Statements 2.11 If Statements 2.12 If/Else Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.13 While Loops in Karel 2.14 Control Structures Example 2.14 Control Structures Example 2.15 More Karel Examples and Testing 2.15 More Karel Examples and Testing 2.16 How to Indent Your Code 2.16 How to Indent Your Code 3.2 Challenge Problems 3.2 Challenge Problems 5.1 Hello World 5.1 Hello World 5.2 Variables 5.2 Variables 5.3 User Input 5.3 User Input 5.4 Basic Math in JavaScript 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 5.5 Using Graphics in JavaScript 7.1 Booleans 7.1 Booleans 7.2 Logical Operators 7.2 Logical Operators 7.3 Comparison Operators 7.3 Comparison Operators 7.4 If Statements 7.4 If Statements 7.5 For Loops in JavaScript 7.5 For Loops in JavaScript 7.6 General For Loops 7.6 General For Loops 7.7 For Loop Practice 7.7 For Loop Practice 7.9 While Loops 7.9 While Loops 7.10 Loop and a Half 7.10 Loop and a Half 9.1 Functions and Parameters 1 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2 9.5 Functions and Return Values 2 9.6 Timers 9.6 Timers 9.7 Random Circles 9.7 Random Circles 9.8 Random Ghosts 9.8 Random Ghosts 9.9 Bouncing Ball 9.9 Bouncing Ball 9.10 Mouse Events: Mouse Clicked 9.10 Mouse Events: Mouse Clicked 9.11 Intro to Lists/Arrays 9.11 Intro to Lists/Arrays 9.12 Adding/Removing From an Array 9.12 Adding/Removing From an Array 9.13 Array Length and Looping Through Arrays 9.13 Array Length and Looping Through Arrays 9.14 Iterating Over an Array 9.14 Iterating Over an Array 15.1 Mouse Events: Mouse Moved 15.1 Mouse Events: Mouse Moved 15.2 Drawing Lines 15.2 Drawing Lines 15.3 Key Events 15.3 Key Events 15.4 Crazy Ball Game 15.4 Crazy Ball Game 16.1 Indexing Into an Array 16.1 Indexing Into an Array 16.2 Finding an Element in a List 16.2 Finding an Element in a List 16.3 Removing an Element From an Array 16.3 Removing an Element From an Array 17.1 Intro to Objects/Maps 17.1 Intro to Objects/Maps 17.2 Basics of Objects 17.2 Basics of Objects 17.3 Iterating Over an Object 17.3 Iterating Over an Object 17.4 When Do I Use an Object? 17.4 When Do I Use an Object? 17.5 Intro to Sets 17.5 Intro to Sets 17.6 Intro to Grids 17.6 Intro to Grids 17.7 Looping Over a Grid 17.7 Looping Over a Grid 17.8 Grid Example: Get a Row 17.8 Grid Example: Get a Row 17.9 Data Structures Challenges 17.9 Data Structures Challenges 12.1 Extra Karel Practice 12.1 Extra Karel Practice 13.1 Extra Karel Puzzles 13.1 Extra Karel Puzzles 14.1 Functions and Parameters Practice 14.1 Functions and Parameters Practice
 Standard 1.6 Comments 1.6 Comments 1.13 Parameters 1.13 Parameters 11.7 Commenting Your Code 11.7 Commenting Your Code 11.8 Super Karel 11.8 Super Karel 11.9 For Loops 11.9 For Loops 11.10 If Statements 11.10 If Statements 11.11 If/Else Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.12 While Loops in Karel 11.13 Control Structures Example 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.14 More Karel Examples and Testing 11.15 How to Indent Your Code 11.15 How to Indent Your Code 12.1 Extra Karel Puzzles 12.1 Extra Karel Puzzles 15.4 Final Project
 Standard 2.7 Commenting Your Code 2.7 Commenting Your Code 2.9 Super Karel 2.9 Super Karel 2.10 For Loops 2.10 For Loops 2.11 If Statements 2.11 If Statements 2.12 If/Else Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.13 While Loops in Karel 2.14 Control Structures Example 2.14 Control Structures Example 2.15 More Karel Examples and Testing 2.15 More Karel Examples and Testing 2.16 How to Indent Your Code 2.16 How to Indent Your Code 3.2 Challenge Problems 3.2 Challenge Problems 6.1 Hello World 6.1 Hello World 6.2 Variables 6.2 Variables 6.3 User Input 6.3 User Input 6.4 Basic Math in JavaScript 6.4 Basic Math in JavaScript 6.5 Using Graphics in JavaScript 6.5 Using Graphics in JavaScript 9.1 Booleans 9.1 Booleans 9.2 Logical Operators 9.2 Logical Operators 9.3 Comparison Operators 9.3 Comparison Operators 9.4 If Statements 9.4 If Statements 9.5 For Loops in JavaScript 9.5 For Loops in JavaScript 9.6 General For Loops 9.6 General For Loops 9.7 For Loop Practice 9.7 For Loop Practice 9.8 Random Numbers 9.8 Random Numbers 9.9 While Loops 9.9 While Loops 9.10 Loop and a Half 9.10 Loop and a Half 11.1 Functions and Parameters 1 11.1 Functions and Parameters 1 11.2 Functions and Parameters 2 11.2 Functions and Parameters 2 11.3 Functions and Parameters 3 11.3 Functions and Parameters 3 11.4 Functions and Return Values 1 11.4 Functions and Return Values 1 11.5 Functions and Return Values 2 11.5 Functions and Return Values 2 11.6 Timers 11.6 Timers 11.7 Random Circles 11.7 Random Circles 11.8 Random Ghosts 11.8 Random Ghosts 11.9 Bouncing Ball 11.9 Bouncing Ball 11.10 Mouse Events: Mouse Clicked 11.10 Mouse Events: Mouse Clicked 11.11 Intro to Lists/Arrays 11.11 Intro to Lists/Arrays 11.12 Adding/Removing From an Array 11.12 Adding/Removing From an Array 11.13 Array Length and Looping Through Arrays 11.13 Array Length and Looping Through Arrays 11.14 Iterating Over an Array 11.14 Iterating Over an Array 14.1 Extra Karel Practice 14.1 Extra Karel Practice 15.1 Extra Karel Puzzles 15.1 Extra Karel Puzzles 16.1 Functions and Parameters Practice 16.1 Functions and Parameters Practice 17.1 Mouse Events: Mouse Moved 17.1 Mouse Events: Mouse Moved 17.2 Drawing Lines 17.2 Drawing Lines 17.3 Key Events 17.3 Key Events 17.4 Crazy Ball Game 17.4 Crazy Ball Game 18.1 Indexing Into an Array 18.1 Indexing Into an Array 18.2 Finding an Element in a List 18.2 Finding an Element in a List 18.3 Removing an Element From an Array 18.3 Removing an Element From an Array 19.1 Intro to Objects/Maps 19.1 Intro to Objects/Maps 19.2 Basics of Objects 19.2 Basics of Objects 19.3 Iterating Over an Object 19.3 Iterating Over an Object 19.4 When Do I Use an Object? 19.4 When Do I Use an Object? 19.5 Intro to Sets 19.5 Intro to Sets 19.6 Intro to Grids 19.6 Intro to Grids 19.7 Looping Over a Grid 19.7 Looping Over a Grid 19.8 Grid Example: Get a Row 19.8 Grid Example: Get a Row 19.9 Data Structures Challenges 19.9 Data Structures Challenges
 Standard 3.6 Comments 3.6 Comments 3.13 Parameters 3.13 Parameters 4.1 Practice PT: Pair-Programming Paint! 4.1 Practice PT: Pair-Programming Paint!
 Standard 2.7 Commenting Your Code 2.7 Commenting Your Code 2.9 Super Karel 2.9 Super Karel 2.10 For Loops 2.10 For Loops 2.11 If Statements 2.11 If Statements 2.12 If/Else Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.13 While Loops in Karel 2.14 Control Structures Example 2.14 Control Structures Example 2.15 More Karel Examples and Testing 2.15 More Karel Examples and Testing 2.16 How to Indent Your Code 2.16 How to Indent Your Code 3.2 Challenge Problems 3.2 Challenge Problems 4.2 Hello World 4.2 Hello World 4.3 Variables 4.3 Variables 4.4 User Input 4.4 User Input 4.5 Basic Math in JavaScript 4.5 Basic Math in JavaScript 4.6 Using Graphics in JavaScript 4.6 Using Graphics in JavaScript 8.14 Project: Your First Website 8.14 Project: Your First Website 11.1 Extra Karel Practice 11.1 Extra Karel Practice 12.1 Extra Karel Puzzles 12.1 Extra Karel Puzzles 13.1 Booleans 13.1 Booleans 13.2 Logical Operators 13.2 Logical Operators 13.3 Comparison Operators 13.3 Comparison Operators 13.4 If Statements 13.4 If Statements 13.8 Random Numbers 13.8 Random Numbers 13.9 While Loops 13.9 While Loops 13.10 Loop and a Half 13.10 Loop and a Half 13.5 For Loops in JavaScript 13.5 For Loops in JavaScript 13.6 General For Loops 13.6 General For Loops 13.7 For Loop Practice 13.7 For Loop Practice
 Standard 1.7 Commenting Your Code 2.1 Practice PT: Pair-Programming Paint! 6.1 Project: Tell a Story 9.1 Practice PT: Steganography 10.1 Practice PT: Create an Image Filter!
 Standard 2.7 Commenting Your Code 2.7 Commenting Your Code 2.9 Super Karel 2.9 Super Karel 2.10 For Loops 2.10 For Loops 2.11 If Statements 2.11 If Statements 2.12 If/Else Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.13 While Loops in Karel 2.14 Control Structures Example 2.14 Control Structures Example 2.15 More Karel Examples and Testing 2.15 More Karel Examples and Testing 2.16 How to Indent Your Code 2.16 How to Indent Your Code 3.2 Challenge Problems 3.2 Challenge Problems 5.1 Hello World 5.1 Hello World 5.2 Variables 5.2 Variables 5.3 User Input 5.3 User Input 5.4 Basic Math in JavaScript 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 5.5 Using Graphics in JavaScript 9.14 Project: Your First Website 9.14 Project: Your First Website 14.1 Booleans 14.1 Booleans 14.2 Logical Operators 14.2 Logical Operators 14.3 Comparison Operators 14.3 Comparison Operators 14.4 If Statements 14.4 If Statements 14.8 Random Numbers 14.8 Random Numbers 14.9 While Loops 14.9 While Loops 14.10 Loop and a Half 14.10 Loop and a Half 14.5 For Loops in JavaScript 14.5 For Loops in JavaScript 14.6 General For Loops 14.6 General For Loops 14.7 For Loop Practice 14.7 For Loop Practice 17.11 Intro to Lists/Arrays 17.11 Intro to Lists/Arrays 17.6 Timers 17.6 Timers 17.12 Adding/Removing From an Array 17.12 Adding/Removing From an Array 17.8 Random Ghosts 17.8 Random Ghosts 17.9 Bouncing Ball 17.9 Bouncing Ball 17.13 Array Length and Looping Through Arrays 17.13 Array Length and Looping Through Arrays 17.10 Mouse Events: Mouse Clicked 17.10 Mouse Events: Mouse Clicked 17.14 Iterating Over an Array 17.14 Iterating Over an Array 17.1 Functions and Parameters 1 17.1 Functions and Parameters 1 17.4 Functions and Return Values 1 17.4 Functions and Return Values 1 17.7 Random Circles 17.7 Random Circles 17.2 Functions and Parameters 2 17.2 Functions and Parameters 2 17.3 Functions and Parameters 3 17.3 Functions and Parameters 3 17.5 Functions and Return Values 2 17.5 Functions and Return Values 2 12.1 Extra Karel Practice 12.1 Extra Karel Practice 13.1 Extra Karel Puzzles 13.1 Extra Karel Puzzles 18.1 Functions and Parameters Practice 18.1 Functions and Parameters Practice 16.1 Mouse Events: Mouse Moved 16.1 Mouse Events: Mouse Moved 16.2 Drawing Lines 16.2 Drawing Lines 16.3 Key Events 16.3 Key Events 16.4 Crazy Ball Game 16.4 Crazy Ball Game 19.1 Indexing Into an Array 19.1 Indexing Into an Array 19.2 Finding an Element in a List 19.2 Finding an Element in a List 19.3 Removing an Element From an Array 19.3 Removing an Element From an Array 20.1 Intro to Objects/Maps 20.1 Intro to Objects/Maps 20.2 Basics of Objects 20.2 Basics of Objects 20.3 Iterating Over an Object 20.3 Iterating Over an Object 20.4 When Do I Use an Object? 20.4 When Do I Use an Object? 20.5 Intro to Sets 20.5 Intro to Sets 20.6 Intro to Grids 20.6 Intro to Grids 20.7 Looping Over a Grid 20.7 Looping Over a Grid 20.8 Grid Example: Get a Row 20.8 Grid Example: Get a Row 20.9 Data Structures Challenges 20.9 Data Structures Challenges
 Standard 3.7 Comments 3.7 Comments 6.2 Functions and Parameters 6.2 Functions and Parameters 6.4 Functions and Return Values 6.4 Functions and Return Values 8.1 Indexing 8.1 Indexing 8.2 Slicing 8.2 Slicing 8.3 Immutability 8.3 Immutability 8.4 Strings and For Loops 8.4 Strings and For Loops 8.5 The in Keyword 8.5 The in Keyword 8.6 String Methods 8.6 String Methods 9.1 Tuples 9.1 Tuples 9.2 Lists 9.2 Lists 9.3 For Loops and Lists 9.3 For Loops and Lists 9.4 List Methods 9.4 List Methods 9.5 2d Lists 9.5 2d Lists 18.6 Comments 18.6 Comments 18.13 Parameters 18.13 Parameters 12.1 List Comprehensions 12.1 List Comprehensions 12.2 Packing and Unpacking 12.2 Packing and Unpacking 12.3 Dictionaries 12.3 Dictionaries 12.4 Equivalence vs. Identity 12.4 Equivalence vs. Identity 15.1 Classes and Objects 15.1 Classes and Objects 15.2 Methods 15.2 Methods 15.3 Built-In Methods 15.3 Built-In Methods 15.4 Operator Overloading 15.4 Operator Overloading 15.5 Class Variables vs. Instance Variables 15.5 Class Variables vs. Instance Variables 15.6 Inheritance 15.6 Inheritance 15.7 Hidden Attributes 15.7 Hidden Attributes 15.8 Namespaces 15.8 Namespaces 15.9 Modules 15.9 Modules 17.1 Project: Who Said It? 17.1 Project: Who Said It?
 Standard 4.2 Homepage: Your First Website 4.2 Homepage: Your First Website 10.1 Providing Feedback
 Standard 2.7 Commenting Your Code 2.7 Commenting Your Code 2.9 Super Karel 2.9 Super Karel 2.10 For Loops 2.10 For Loops 2.11 If Statements 2.11 If Statements 2.12 If/Else Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.13 While Loops in Karel 2.14 Control Structures Example 2.14 Control Structures Example 2.15 More Karel Examples and Testing 2.15 More Karel Examples and Testing 2.16 How to Indent Your Code 2.16 How to Indent Your Code 3.2 Challenge Problems 3.2 Challenge Problems 5.1 Hello World 5.1 Hello World 5.2 Variables 5.2 Variables 5.3 User Input 5.3 User Input 5.4 Basic Math in JavaScript 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 5.5 Using Graphics in JavaScript 7.1 Booleans 7.1 Booleans 7.2 Logical Operators 7.2 Logical Operators 7.3 Comparison Operators 7.3 Comparison Operators 7.4 If Statements 7.4 If Statements 7.5 For Loops in JavaScript 7.5 For Loops in JavaScript 7.6 General For Loops 7.6 General For Loops 7.7 For Loop Practice 7.7 For Loop Practice 7.9 While Loops 7.9 While Loops 7.10 Loop and a Half 7.10 Loop and a Half 9.1 Functions and Parameters 1 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2 9.5 Functions and Return Values 2 9.6 Timers 9.6 Timers 9.7 Random Circles 9.7 Random Circles 9.8 Random Ghosts 9.8 Random Ghosts 9.9 Bouncing Ball 9.9 Bouncing Ball 9.10 Mouse Events: Mouse Clicked 9.10 Mouse Events: Mouse Clicked 9.11 Intro to Lists/Arrays 9.11 Intro to Lists/Arrays 9.12 Adding/Removing From an Array 9.12 Adding/Removing From an Array 9.13 Array Length and Looping Through Arrays 9.13 Array Length and Looping Through Arrays 9.14 Iterating Over an Array 9.14 Iterating Over an Array 15.1 Mouse Events: Mouse Moved 15.1 Mouse Events: Mouse Moved 15.2 Drawing Lines 15.2 Drawing Lines 15.3 Key Events 15.3 Key Events 15.4 Crazy Ball Game 15.4 Crazy Ball Game 16.1 Indexing Into an Array 16.1 Indexing Into an Array 16.2 Finding an Element in a List 16.2 Finding an Element in a List 16.3 Removing an Element From an Array 16.3 Removing an Element From an Array 17.1 Intro to Objects/Maps 17.1 Intro to Objects/Maps 17.2 Basics of Objects 17.2 Basics of Objects 17.3 Iterating Over an Object 17.3 Iterating Over an Object 17.4 When Do I Use an Object? 17.4 When Do I Use an Object? 17.5 Intro to Sets 17.5 Intro to Sets 17.6 Intro to Grids 17.6 Intro to Grids 17.7 Looping Over a Grid 17.7 Looping Over a Grid 17.8 Grid Example: Get a Row 17.8 Grid Example: Get a Row 17.9 Data Structures Challenges 17.9 Data Structures Challenges 12.1 Extra Karel Practice 12.1 Extra Karel Practice 13.1 Extra Karel Puzzles 13.1 Extra Karel Puzzles 14.1 Functions and Parameters Practice 14.1 Functions and Parameters Practice
 Standard 1.6 Comments 1.6 Comments 1.13 Parameters 1.13 Parameters 6.7 Commenting Your Code 6.7 Commenting Your Code 6.8 Super Karel 6.8 Super Karel 6.9 For Loops 6.9 For Loops 6.10 If Statements 6.10 If Statements 6.11 If/Else Statements 6.11 If/Else Statements 6.12 While Loops in Karel 6.12 While Loops in Karel 6.13 Control Structures Example 6.13 Control Structures Example 6.14 More Karel Examples and Testing 6.14 More Karel Examples and Testing 6.15 How to Indent Your Code 6.15 How to Indent Your Code 7.1 Extra Karel Puzzles 7.1 Extra Karel Puzzles 10.4 Final Project
 Standard 1.7 Commenting Your Code 1.8 Super Karel 1.9 For Loops 1.10 If Statements and Conditionals 1.11 If/Else Statements 1.12 While Loops 1.13 How to Indent Your Code 1.14 Control Structures Example 1.15 More Karel Examples and Testing 2.1 Hello World 2.2 Variables 2.3 User Input 2.4 Basic Math 2.6 Random Numbers 4.1 Booleans 4.2 If/Else Statements 4.3 Logical Operators 4.4 Comparison Operators 4.6 While Loops 4.7 The Break Statement 4.9 For Loops 6.1 Timers 6.2 Stopping Timers 6.3 Collisions 6.4 Mouse Click Events 6.5 More Mouse Events 6.6 Key Events 18.1 Challenge Problems 25.1 Functions Challenges 27.1 Breakout 19.1 Extra Karel Practice 19.2 Extra Karel Puzzles 24.1 Functions and Parameters Practice 20.1 Prime Numbers 21.1 Fun Snake 21.2 Fun Graphics Challenges 30.1 Conway's Game of Life 30.2 Connect Four 28.1 Visualizing Music 29.1 Intro to Lists/Arrays 29.2 Indexing Into an Array 29.3 Adding/Removing From an Array 29.4 Array Length and Looping Through Arrays 29.5 Iterating Over an Array 29.6 Finding an Element in a List 29.7 Removing an Element From an Array 29.8 Intro to Objects/Maps 29.9 Basics of Objects 29.10 Iterating Over an Object 29.11 When Do I Use an Object? 29.12 Intro to Sets 29.13 Intro to Grids 29.14 Looping Over a Grid 29.15 Grid Example: Get a Row 29.16 Data Structures Challenges 31.1 Tic Tac Toe 32.1 Game Design: Helicopter 21.3 Animation Practice 21.4 Crazy Ball Game
 Standard 1.7 Commenting Your Code 1.7 Commenting Your Code 1.8 Super Karel 1.8 Super Karel 1.9 For Loops 1.9 For Loops 1.10 If Statements 1.10 If Statements 1.11 If/Else Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.12 While Loops in Karel 1.13 Control Structures Example 1.13 Control Structures Example 1.14 More Karel Examples and Testing 1.14 More Karel Examples and Testing 1.15 How to Indent Your Code 1.15 How to Indent Your Code 2.1 Challenge Problems 2.1 Challenge Problems 8.2 Hello World 8.2 Hello World 8.3 Variables 8.3 Variables 8.4 User Input 8.4 User Input 8.5 Basic Math in JavaScript 8.5 Basic Math in JavaScript 8.6 Using Graphics in JavaScript 8.6 Using Graphics in JavaScript 10.1 Booleans 10.1 Booleans 10.2 Logical Operators 10.2 Logical Operators 10.3 Comparison Operators 10.3 Comparison Operators 10.4 If Statements 10.4 If Statements 10.5 For Loops in JavaScript 10.5 For Loops in JavaScript 10.6 General For Loops 10.6 General For Loops 10.7 For Loop Practice 10.7 For Loop Practice 10.8 Random Numbers 10.8 Random Numbers 10.9 While Loops 10.9 While Loops 10.10 Loop and a Half 10.10 Loop and a Half 12.1 Functions and Parameters 1