Activity | Points | Item Type |
---|---|---|
Introduction to Programming | ||
1.1 Welcome to AP CSP | Lesson | |
1.1.1 Welcome to AP CSP | 1 | Video |
1.1.2 Why AP CSP? | 5 | Free Response |
1.2 Introduction to Programming With Karel | Lesson | |
1.2.1 Introduction to Programming With Karel | 1 | Video |
1.2.2 Quiz: Karel Commands | 1 | Check for Understanding |
1.2.3 Our First Karel Program | 1 | Example |
1.2.4 Your First Karel Program | 5 | Exercise |
1.2.5 Short Stack | 5 | Exercise |
1.2.6 Dancing Karel | 5 | Debugging |
1.3 More Basic Karel | Lesson | |
1.3.1 More Basic Karel | 1 | Video |
1.3.2 More Basic Karel Quiz | 4 | Check for Understanding |
1.3.3 Tennis Ball Square | 1 | Example |
1.3.4 Make a Tower | 5 | Exercise |
1.3.5 Pyramid of Karel | 5 | Exercise |
1.3.6 Go Through the Door | 5 | Debugging |
1.4 Karel Can't Turn Right | Lesson | |
1.4.1 Karel Can't Turn Right | 1 | Video |
1.4.2 Karel Can't Turn Right Quiz | 2 | Check for Understanding |
1.4.3 Tower and Turn Right | 1 | Example |
1.4.4 Fireman Karel | 5 | Exercise |
1.4.5 Slide Karel | 5 | Exercise |
1.4.6 Reflection: Teaching Karel New Commands | 5 | Free Response |
1.4.7 Right Turn Karel Badge | 1 | Badge |
1.5 Functions in Karel | Lesson | |
1.5.1 Functions in Karel | 1 | Video |
1.5.2 Functions in Karel Quiz | 1 | Check for Understanding |
1.5.3 Turn Around | 1 | Example |
1.5.4 Pancakes | 5 | Exercise |
1.5.5 Backflip | 5 | Exercise |
1.5.6 Digging Karel | 5 | Exercise |
1.5.7 Build a Shelter | 5 | Debugging |
1.6 The Start Function | Lesson | |
1.6.1 The Start Function | 1 | Video |
1.6.2 The Start Function Quiz | 2 | Check for Understanding |
1.6.3 Tower with Start Function | 1 | Example |
1.6.4 Pancakes with Start | 5 | Exercise |
1.6.5 Digging Karel with Start | 5 | Exercise |
1.7 Top Down Design and Decomposition in Karel | Lesson | |
1.7.1 Top Down Design and Decomposition in Karel | 1 | Video |
1.7.2 Top Down Design and Decomposition Quiz | 2 | Check for Understanding |
1.7.3 Hurdle Karel | 1 | Example |
1.7.4 The Two Towers | 5 | Exercise |
1.7.5 Make a 'Z' | 5 | Debugging |
1.7.6 Reflection: Top Down Design | 5 | Free Response |
1.8 Commenting Your Code | Lesson | |
1.8.1 Commenting Your Code | 1 | Video |
1.8.2 Commenting Your Code Quiz | 1 | Check for Understanding |
1.8.3 Hurdle Karel | 1 | Example |
1.8.4 The Two Towers + Comments | 5 | Exercise |
1.8.5 Reflection: Commenting | 5 | Free Response |
1.9 Abstraction | Lesson | |
1.9.1 Abstraction | 1 | Video |
1.9.2 Abstraction Quiz | 2 | Check for Understanding |
1.9.3 Abstracting Away buildTower | 1 | Example |
1.9.4 Abstracting Your Day | 5 | Free Response |
1.9.5 Reflection: Abstraction | 5 | Free Response |
1.9.6 Reflection: Abstraction in Karel | 5 | Free Response |
1.10 Super Karel | Lesson | |
1.10.1 Super Karel | 1 | Video |
1.10.2 Super Karel Quiz | 1 | Check for Understanding |
1.10.3 Hurdle Karel (with SuperKarel) | 1 | Example |
1.10.4 The Two Towers + SuperKarel | 5 | Exercise |
1.10.5 Super Karel Badge | 1 | Badge |
1.11 For Loops | Lesson | |
1.11.1 For Loops | 1 | Video |
1.11.2 For Loops Quiz | 1 | Check for Understanding |
1.11.3 Repeated Move | 1 | Example |
1.11.4 Put Down Tennis Balls | 1 | Example |
1.11.5 Take 'em All | 5 | Exercise |
1.11.6 Dizzy Karel | 5 | Exercise |
1.11.7 For Loop Square | 5 | Exercise |
1.11.8 Lots of Hurdles | 5 | Exercise |
1.12 If Statements | Lesson | |
1.12.1 If Statements | 1 | Video |
1.12.2 If Statements Quiz | 2 | Check for Understanding |
1.12.3 If Statements | 1 | Example |
1.12.4 Safe Take Ball | 1 | Example |
1.12.5 Is There a Ball? | 5 | Exercise |
1.12.6 Mindsets | 5 | Survey |
1.13 If/Else Statements | Lesson | |
1.13.1 If/Else Statements | 1 | Video |
1.13.2 If/Else Statements Quiz | 2 | Check for Understanding |
1.13.3 If/Else Statements | 1 | Example |
1.13.4 One Ball in Each Spot | 1 | Example |
1.13.5 Right Side Up | 5 | Exercise |
1.13.6 Conditional Karel Badge | 1 | Badge |
1.14 While Loops in Karel | Lesson | |
1.14.1 While Loops in Karel | 1 | Video |
1.14.2 While Loops in Karel Quiz | 2 | Check for Understanding |
1.14.3 Move to Wall | 1 | Example |
1.14.4 Follow The Yellow Ball Road | 5 | Exercise |
1.14.5 Lay Row of Tennis Balls | 5 | Exercise |
1.14.6 Big Tower | 5 | Exercise |
1.15 Control Structures Example | Lesson | |
1.15.1 Control Structures Example | 1 | Video |
1.15.2 Control Structures Example Quiz | 2 | Check for Understanding |
1.15.3 Cleanup Karel | 1 | Example |
1.15.4 Random Hurdles | 5 | Exercise |
1.16 Debugging Strategies | Lesson | |
1.16.1 Debugging Basics | 1 | Video |
1.16.2 Debugging Basics | 2 | Check for Understanding |
1.16.3 Debug: The Two Towers | 5 | Debugging |
1.16.4 Debug: Lots of Hurdles | 5 | Debugging |
1.16.5 Debugging From Error Messages | 1 | Video |
1.16.6 Debugging with Error Messages | 2 | Check for Understanding |
1.16.7 Debug: Big Tower | 5 | Debugging |
1.16.8 Debug: Random Hurdles | 5 | Debugging |
1.17 Karel Algorithms | Lesson | |
1.17.1 Karel Algorithms | 1 | Video |
1.17.2 Quiz: Which Control Structure? | 5 | Check for Understanding |
1.17.3 Algorithms Example: Move Stack | 1 | Video |
1.17.4 Move Tennis Ball Stack | 1 | Example |
1.17.5 Climbing Karel | 1 | Example |
1.17.6 Decorate the Fence | 5 | Exercise |
1.18 How to Indent Your Code | Lesson | |
1.18.1 How to Indent Your Code | 1 | Video |
1.18.2 How to Indent Your Code Quiz | 1 | Check for Understanding |
1.18.3 Dance and Clean Karel | 1 | Example |
1.18.4 Diagonal | 5 | Exercise |
1.18.5 Staircase | 5 | Exercise |
1.19 Ultra Karel | Lesson | |
1.19.1 Ultra Karel | 1 | Video |
1.19.2 Ultra Karel Quiz | 2 | Check for Understanding |
1.19.3 Red Frame | 1 | Example |
1.19.4 Slip 'n Slide | 1 | Example |
1.19.5 Invert Colors | 5 | Exercise |
1.19.6 Checkerboard Karel | 5 | Exercise |
1.19.7 Karel Exercises Badge | 1 | Badge |
1.20 Karel Challenges | Lesson | |
1.20.1 Fetch | 10 | Challenge |
1.20.2 Racing Karel | 10 | Challenge |
1.20.3 Tower Builder | 10 | Challenge |
1.20.4 Super Cleanup Karel | 10 | Challenge |
1.20.5 Double Tennis Balls | 10 | Challenge |
1.20.6 Karel Challenges Badge | 1 | Badge |
1.21 Introduction to Programming Quiz | Lesson | |
1.21.1 Introduction to Programming Quiz | 25 | Unit Quiz |
Practice PT: Pair-Programming Paint! | ||
2.1 Practice PT: Pair-Programming Paint! | Lesson | |
2.1.1 Pair-Programming | 1 | Video |
2.1.2 Pair-Programming | 2 | Check for Understanding |
2.1.3 Reflection: Pair-Programming | 5 | Free Response |
2.1.4 Setting Norms | 5 | Free Response |
2.1.5 Brainstorm and Discuss | 5 | Free Response |
2.1.6 Planning | 5 | Free Response |
2.1.7 Program Documentation | 5 | Free Response |
2.1.8 Pseudocode | 5 | Free Response |
2.1.9 Create your UltraKarel Image! | 10 | Challenge |
2.1.10 Reflection | 5 | Free Response |
2.1.11 Karel Practice PT Badge | 1 | Badge |
Programming with JavaScript | ||
3.1 What is Code | Lesson | |
3.1.1 What is Code? | 1 | Video |
3.1.2 What is Software | 1 | Connection |
3.1.3 Respond: What is Software | 5 | Free Response |
3.2 Uses of Programs | Lesson | |
3.2.1 Uses of Programs | 1 | Video |
3.2.2 Why Should You Learn to Program? | 1 | Connection |
3.2.3 Reflection: Learning to Program | 5 | Free Response |
3.2.4 Reflection: Programs in Your Life | 5 | Free Response |
3.2.5 Reflection: Future Programs | 5 | Free Response |
3.2.6 Task: Computing Innovations | 5 | Free Response |
3.3 Hello World | Lesson | |
3.3.1 Hello World | 1 | Video |
3.3.2 Hello World Quiz | 1 | Check for Understanding |
3.3.3 Hello World | 1 | Example |
3.3.4 Your Name and Hobby | 5 | Exercise |
3.4 Variables | Lesson | |
3.4.1 Variables | 1 | Video |
3.4.2 Variables Quiz | 1 | Check for Understanding |
3.4.3 Basic Variables | 1 | Example |
3.4.4 Apples and Oranges | 5 | Exercise |
3.4.5 AP Practice: Variables | 2 | AP Practice |
3.5 User Input | Lesson | |
3.5.1 User Input | 1 | Video |
3.5.2 User Input Quiz | 2 | Check for Understanding |
3.5.3 Basic User Input | 1 | Example |
3.5.4 Obi-Wan Says | 5 | Exercise |
3.5.5 AP Practice: User Input | 3 | AP Practice |
3.5.6 User Input Badge | 1 | Badge |
3.6 Basic Math in JavaScript | Lesson | |
3.6.1 Basic Math in JavaScript | 1 | Video |
3.6.2 Basic Math in JavaScript Quiz | 3 | Check for Understanding |
3.6.3 Order of Operations | 1 | Example |
3.6.4 Dollars to Pounds | 1 | Example |
3.6.5 Dividing Up Groups | 1 | Example |
3.6.6 Sporting Goods Shop | 5 | Exercise |
3.6.7 Running Speed | 5 | Exercise |
3.6.8 24 vs. "24" | 5 | Exercise |
3.6.9 AP Practice: Arithmetic Operators | 4 | AP Practice |
3.7 Using Graphics in JavaScript | Lesson | |
3.7.1 Graphics | 1 | Video |
3.7.2 JavaScript Graphics Quiz | 3 | Check for Understanding |
3.7.3 Graphics Hello World | 1 | Example |
3.7.4 Blue Circle | 1 | Example |
3.7.5 Red Rectangle | 1 | Example |
3.7.6 8 Ball | 1 | Example |
3.7.7 French Flag | 5 | Exercise |
3.7.8 Snowman | 5 | Exercise |
3.7.9 Graphics Badge | 1 | Badge |
3.8 Mouse Events: Mouse Clicked | Lesson | |
3.8.1 Mouse Events: Mouse Clicked | 1 | Video |
3.8.2 Mouse Events: Mouse Clicked Quiz | 2 | Check for Understanding |
3.8.3 Click For Circles | 1 | Example |
3.8.4 Click For Mickey | 1 | Example |
3.8.5 Click for Rectangles | 5 | Exercise |
3.9 Programming with JavaScript Quiz | Lesson | |
3.9.1 Programming with JavaScript Quiz | 25 | Unit Quiz |
3.9.2 Graphics Badge | 1 | Badge |
JavaScript Control Structures | ||
4.1 Booleans | Lesson | |
4.1.1 Booleans | 1 | Video |
4.1.2 Booleans Quiz | 1 | Check for Understanding |
4.1.3 First Boolean | 1 | Example |
4.1.4 Do You Have a Cat? | 5 | Exercise |
4.2 Logical Operators | Lesson | |
4.2.1 Logical Operators | 1 | Video |
4.2.2 Logical Operators Quiz | 3 | Check for Understanding |
4.2.3 Light Switch | 1 | Example |
4.2.4 President | 1 | Example |
4.2.5 Wasting Time | 1 | Example |
4.2.6 Can You Graduate? | 5 | Exercise |
4.2.7 School's Out | 5 | Exercise |
4.3 Comparison Operators | Lesson | |
4.3.1 Comparison Operators | 1 | Video |
4.3.2 Comparison Operators Quiz | 2 | Check for Understanding |
4.3.3 Voting Age | 1 | Example |
4.3.4 Grade Range | 1 | Example |
4.3.5 Rolling Dice | 5 | Exercise |
4.3.6 All Star | 5 | Exercise |
4.3.7 AP Practice: Comparison Operators | 4 | AP Practice |
4.4 If Statements | Lesson | |
4.4.1 If Statements | 1 | Video |
4.4.2 If Statements Quiz | 3 | Check for Understanding |
4.4.3 Negative Numbers | 1 | Example |
4.4.4 Great Names | 1 | Example |
4.4.5 Even and Odd | 1 | Example |
4.4.6 Secret Password | 1 | Example |
4.4.7 Teenagers | 5 | Exercise |
4.4.8 Input Validation and Conditionals | 5 | Video |
4.4.9 Conditional Pseudocode Activity | 7 | AP Practice |
4.4.10 Conditionals Badge | 1 | Badge |
4.5 Applying Conditionals - Password Validation | Lesson | |
4.5.1 Password Protection | 5 | Video |
4.5.2 Password Checker | 5 | Exercise |
4.5.3 How are passwords saved? | 5 | Connection |
4.5.4 Reflect: How are passwords saved? | 5 | Free Response |
4.5.5 Create a password | 5 | Exercise |
4.5.6 Ethics Moment: Impact of Code | 5 | Connection |
4.5.7 Reflection: Impact of Code | 5 | Free Response |
4.6 Key Events | Lesson | |
4.6.1 Key Events | 1 | Video |
4.6.2 Key Events Quiz | 1 | Check for Understanding |
4.6.3 Keyboard Square | 1 | Example |
4.6.4 Growing Circle | 5 | Exercise |
4.7 For Loops in JavaScript | Lesson | |
4.7.1 Basic For Loop | 1 | Video |
4.7.2 For Loops Quiz | 2 | Check for Understanding |
4.7.3 For Loop | 1 | Example |
4.7.4 Meme Text Generator | 5 | Exercise |
4.7.5 The Worm | 5 | Exercise |
4.7.6 Caterpillar | 5 | Exercise |
4.8 General For Loops | Lesson | |
4.8.1 General For Loop | 1 | Video |
4.8.2 General For Loop Quiz | 2 | Check for Understanding |
4.8.3 Countdown | 1 | Example |
4.8.4 Count By Twos | 1 | Example |
4.8.5 Count By Sevens | 5 | Exercise |
4.8.6 Powers of Two | 5 | Exercise |
4.8.7 Iterations | 5 | Video |
4.8.8 Iterative Pseudocode Activity - Part 1 | 9 | AP Practice |
4.9 For Loop Practice | Lesson | |
4.9.1 For Loop Examples | 1 | Video |
4.9.2 For Loop Examples Quiz | 3 | Check for Understanding |
4.9.3 For Loop Sum | 1 | Example |
4.9.4 Better Sum | 5 | Exercise |
4.9.5 Factorial | 5 | Exercise |
4.9.6 All Dice Values | 5 | Exercise |
4.9.7 Ethics Moment: Sampling Music | 5 | Connection |
4.9.8 Reflection: Sampling Music | 5 | Free Response |
4.10 Random Numbers | Lesson | |
4.10.1 Random Numbers | 1 | Video |
4.10.2 Random Numbers Quiz | 2 | Check for Understanding |
4.10.3 Rolling a Die | 1 | Example |
4.10.4 Flipping a Coin | 1 | Example |
4.10.5 Lots of Dice | 5 | Exercise |
4.10.6 Random Color Square | 5 | Exercise |
4.10.7 Mindsets | 5 | Survey |
4.11 While Loops | Lesson | |
4.11.1 While Loops | 1 | Video |
4.11.2 While Loops Quiz | 2 | Check for Understanding |
4.11.3 While Loop Countdown | 1 | Example |
4.11.4 Inventory | 5 | Exercise |
4.11.5 Fibonacci | 5 | Exercise |
4.11.6 Verify the Password Length | 5 | Exercise |
4.11.7 Iterative Pseudocode Activity - Part 2 | 10 | AP Practice |
4.12 Loop and a Half | Lesson | |
4.12.1 Loop and a Half | 1 | Video |
4.12.2 Loop and a Half Quiz | 3 | Check for Understanding |
4.12.3 Adding Up Numbers | 1 | Example |
4.12.4 Snake Eyes | 5 | Exercise |
4.12.5 Making a Stronger Password | 5 | Exercise |
4.12.6 Passwords with Letters and Numbers | 5 | Exercise |
4.12.7 Looper Badge | 1 | Badge |
4.13 Javascript Control Structures Quiz | Lesson | |
4.13.1 JavaScript Control Structures Quiz | 25 | Unit Quiz |
Functions and Parameters | ||
5.1 Functions and Parameters 1 | Lesson | |
5.1.1 Functions and Parameters 1 | 1 | Video |
5.1.2 Functions and Parameters Quiz 1 | 3 | Check for Understanding |
5.1.3 Double Number | 1 | Example |
5.1.4 Square | 5 | Exercise |
5.1.5 Triple | 5 | Exercise |
5.2 Functions and Parameters 2 | Lesson | |
5.2.1 Functions and Parameters 2 | 1 | Video |
5.2.2 Functions and Parameters Quiz 2 | 2 | Check for Understanding |
5.2.3 Sum Function | 1 | Example |
5.2.4 Area of Triangle | 5 | Exercise |
5.2.5 Height in Meters | 5 | Exercise |
5.3 Functions and Parameters 3 | Lesson | |
5.3.1 Functions and Parameters 3 | 1 | Video |
5.3.2 Functions and Parameters Quiz 3 | 2 | Check for Understanding |
5.3.3 Draw Circles | 1 | Example |
5.3.4 Horizontal Lines | 5 | Exercise |
5.3.5 Graphics Stop Light | 5 | Exercise |
5.3.6 Pool Table | 5 | Exercise |
5.3.7 Parameters Badge | 1 | Badge |
5.4 Functions and Return Values 1 | Lesson | |
5.4.1 Functions and Return Values 1 | 1 | Video |
5.4.2 Functions and Return Values Quiz | 2 | Check for Understanding |
5.4.3 Double Number | 1 | Example |
5.4.4 Square with Return Values | 5 | Exercise |
5.4.5 Quadruple with Return Values | 5 | Exercise |
5.5 Functions and Return Values 2 | Lesson | |
5.5.1 Functions and Return Values 2 | 1 | Video |
5.5.2 Functions and Return Values Quiz 2 | 2 | Check for Understanding |
5.5.3 Return Values | 1 | Example |
5.5.4 Is It Even? | 5 | Exercise |
5.5.5 Min | 5 | Exercise |
5.6 Local Variables and Scope | Lesson | |
5.6.1 Local Variables and Scope | 1 | Video |
5.6.2 Local Variables and Scope Quiz | 1 | Check for Understanding |
5.6.3 Return Values | 1 | Example |
5.6.4 Local Variables | 5 | Exercise |
5.7 JavaScript vs Karel | Lesson | |
5.7.1 JavaScript vs Karel | 1 | Video |
5.7.2 Making Karel's World | 1 | Example |
5.7.3 Making Karel Turn Left | 1 | Example |
5.7.4 Making Karel Turn Right | 5 | Exercise |
5.7.5 Making Karel Move | 5 | Exercise |
5.7.6 What is an API? | 1 | Connection |
5.7.7 Reflection: Is Karel an API? | 5 | Free Response |
5.7.8 JavaScript Exercises Badge | 1 | Badge |
5.8 Basic JavaScript and Graphics Challenges | Lesson | |
5.8.1 Ghosts | 10 | Challenge |
5.8.2 Guessing Game | 10 | Challenge |
5.8.3 Draw Something | 10 | Challenge |
5.8.4 JavaScript Challenges Badge | 1 | Badge |
5.9 Functions and Parameters Quiz | Lesson | |
5.9.1 Functions and Parameters Quiz | 25 | Unit Quiz |
Practice PT: Tell a Story | ||
6.1 Project: Tell a Story | Lesson | |
6.1.1 Tell a Story Demo | 1 | Demo |
6.1.2 Brainstorm and Discuss | 5 | Free Response |
6.1.3 Planning | 5 | Free Response |
6.1.4 Pseudocode | 5 | Free Response |
6.1.5 Tell a Story! | 10 | Challenge |
6.1.6 Reflection | 5 | Free Response |
Basic Data Structures | ||
7.1 Intro to Lists/Arrays | Lesson | |
7.1.1 Intro to Lists/Arrays | 1 | Video |
7.1.2 Intro to Lists/Arrays Quiz | 2 | Check for Understanding |
7.1.3 Making an Array | 1 | Example |
7.1.4 List of Places to Travel | 5 | Exercise |
7.1.5 List of Prime Numbers | 5 | Exercise |
7.2 Indexing Into an Array | Lesson | |
7.2.1 Indexing Into an Array | 1 | Video |
7.2.2 Indexing into an Array Quiz | 2 | Check for Understanding |
7.2.3 Array Indexing Practice | 1 | Example |
7.2.4 Top Movies | 5 | Exercise |
7.2.5 Indexing Badge | 1 | Badge |
7.3 Adding/Removing From an Array | Lesson | |
7.3.1 Adding/Removing From an Array | 1 | Video |
7.3.2 Adding/Removing from an Array Quiz | 3 | Check for Understanding |
7.3.3 Add/Remove From Array | 1 | Example |
7.3.4 Empty Array (Push/Pop) | 5 | Exercise |
7.3.5 Intro to Lists | 5 | Video |
7.3.6 List Introduction | 9 | Check for Understanding |
7.4 Array Length and Looping Through Arrays | Lesson | |
7.4.1 Array Length and Looping Through Arrays | 1 | Video |
7.4.2 Array Length and Looping Through Arrays Quiz | 2 | Check for Understanding |
7.4.3 Print Shopping List | 1 | Example |
7.4.4 Print First Five Items | 1 | Example |
7.4.5 Sum Array | 1 | Example |
7.4.6 Max Value in Array | 1 | Example |
7.4.7 Product of List | 5 | Exercise |
7.4.8 Print Flight Itinerary | 5 | Exercise |
7.4.9 Double List | 5 | Exercise |
7.4.10 Evens Only List | 5 | Exercise |
7.4.11 In a World Without Arrays! | 5 | Exercise |
7.4.12 Reflection: World Without Arrays! | 5 | Free Response |
7.4.13 Reverse List | 5 | Exercise |
7.5 Iterating Over an Array | Lesson | |
7.5.1 Examples: Iterating Over an Array | 1 | Video |
7.5.2 Iterating Over an Array Quiz | 2 | Check for Understanding |
7.5.3 Coin Flips | 1 | Example |
7.5.4 Many Crazy Balls | 1 | Example |
7.5.5 Coin Flip Fun: Number of Heads and Tails | 5 | Exercise |
7.5.6 Coin Flip Fun: Longest Streak of Heads | 5 | Exercise |
7.5.7 Changing Circles | 5 | Exercise |
7.5.8 Draw a Barcode | 5 | Exercise |
7.5.9 Traversing a List | 5 | Video |
7.5.10 Traversing a List | 11 | Check for Understanding |
7.5.11 Arrays Badge | 1 | Badge |
7.5.12 Mindsets | 5 | Survey |
7.6 Finding an Element in a List | Lesson | |
7.6.1 Finding an Element in a List | 1 | Video |
7.6.2 Finding an Element in a List Quiz | 3 | Check for Understanding |
7.6.3 Array indexOf | 1 | Example |
7.6.4 Who is in Line? | 5 | Exercise |
7.6.5 Algorithm Efficiency | 1 | Example |
7.7 Removing an Element From an Array | Lesson | |
7.7.1 Removing an Element From an Array | 1 | Video |
7.7.2 Removing an Element from an Array Quiz | 2 | Check for Understanding |
7.7.3 Splice and Remove | 1 | Example |
7.7.4 Remove From Line | 5 | Exercise |
7.7.5 AP Practice: List Procedures | 4 | AP Practice |
7.8 Applying Iteration: Usernames and Passwords | Lesson | |
7.8.1 Username and Password Creation | 5 | Video |
7.8.2 Usernames and Passwords: Pseudocode | 5 | Free Response |
7.8.3 Usernames and Passwords: JavaScript | 5 | Exercise |
7.8.4 Username and Password Verification | 10 | Challenge |
7.8.5 Ethics Moment: Facebook and AWS | 5 | Connection |
7.8.6 Reflection: Facebook and AWS | 5 | Free Response |
7.9 Simulation | Lesson | |
7.9.1 Simulation | 1 | Video |
7.9.2 Gravity Simulation | 1 | Example |
7.9.3 Conway's Game of Life | 1 | Example |
7.9.4 Simulating a Coin Flip | 5 | Exercise |
7.9.5 Wolf Sheep Predation Simulation | 1 | Connection |
7.9.6 Data Structures Exercises Badge | 1 | Badge |
7.10 Basic Data Structures Quiz | Lesson | |
7.10.1 Basic Data Structures Quiz | 25 | Unit Quiz |
Digital Information | ||
8.1 Intro to Digital Information | Lesson | |
8.1.1 What is Digital Information? | 1 | Video |
8.1.2 What is Digital Information Quiz | 2 | Check for Understanding |
8.1.3 Fast Food Menu | 1 | Example |
8.1.4 DNA | 1 | Example |
8.1.5 Reflection: Encodings Everywhere | 5 | Free Response |
8.2 Number Systems | Lesson | |
8.2.1 Number Systems | 1 | Video |
8.2.2 Number Base Tool | 1 | Notes |
8.2.3 Number Systems Quiz | 2 | Check for Understanding |
8.2.4 Decimal to Binary | 1 | Video |
8.2.5 Decimal to Binary Quiz | 1 | Check for Understanding |
8.2.6 Binary Game | 5 | Exercise |
8.2.7 Overflow Error | 5 | Exercise |
8.2.8 More Overflow Errors | 1 | Example |
8.3 Encoding Text with Binary | Lesson | |
8.3.1 Encoding Text with Binary | 1 | Video |
8.3.2 Encoding Text with Binary Quiz | 2 | Check for Understanding |
8.3.3 Morse Code | 1 | Example |
8.3.4 Decoding a Binary Message | 1 | Example |
8.3.5 2-bit Custom Encoding | 1 | Example |
8.3.6 Bits to ASCII | 1 | Example |
8.3.7 Hello Karel in Bits | 5 | Exercise |
8.3.8 Create your own Encoding | 5 | Exercise |
8.3.9 Text to Binary | 5 | Exercise |
8.3.10 Encoding Badge | 1 | Badge |
8.4 Pixel Images | Lesson | |
8.4.1 Pixel Images | 1 | Video |
8.4.2 Pixel Images Quiz | 1 | Check for Understanding |
8.4.3 Creating Pixel Images | 5 | Resource |
8.4.4 CodeHS Logo | 1 | Example |
8.4.5 Checkerboard | 5 | Exercise |
8.4.6 Ladder | 5 | Exercise |
8.4.7 Create an Image! | 5 | Exercise |
8.5 Hexadecimal | Lesson | |
8.5.1 Hexadecimal | 1 | Video |
8.5.2 Hexadecimal Quiz | 2 | Check for Understanding |
8.5.3 Hexadecimal to Decimal | 1 | Example |
8.5.4 Binary to Hex Game | 5 | Exercise |
8.6 Pixel Colors! | Lesson | |
8.6.1 Pixel Colors | 1 | Video |
8.6.2 Pixel Colors Quiz | 3 | Check for Understanding |
8.6.3 Colors in Bits | 1 | Example |
8.6.4 Colors in Text | 1 | Example |
8.6.5 Colors in RGB | 1 | Example |
8.6.6 Exploring RGB | 5 | Exercise |
8.6.7 Making Yellow | 5 | Exercise |
8.6.8 Rainbow | 5 | Exercise |
8.6.9 Create a Color Image! | 5 | Exercise |
8.7 Image Manipulation | Lesson | |
8.7.1 Manipulating Images | 1 | Video |
8.7.2 Manipulating Images Quiz | 1 | Check for Understanding |
8.7.3 Programming with WebImage | 1 | Video |
8.7.4 Programming with WebImage Quiz | 2 | Check for Understanding |
8.7.5 Black and White Filter | 1 | Example |
8.7.6 Brighten Filter | 1 | Example |
8.7.7 Saturation Filter | 1 | Example |
8.7.8 Pixel Picker | 1 | Example |
8.7.9 Invert Filter | 5 | Exercise |
8.7.10 Blue Filter | 5 | Exercise |
8.7.11 Darken Filter | 5 | Exercise |
8.7.12 Image Manipulation Badge | 1 | Badge |
8.8 Data Compression | Lesson | |
8.8.1 Data Compression | 1 | Video |
8.8.2 Data Compression Quiz | 2 | Check for Understanding |
8.8.3 Run Length Encoding | 1 | Video |
8.8.4 Run Length Encoding Quiz | 2 | Check for Understanding |
8.8.5 Run Length Encoding | 1 | Example |
8.8.6 Custom Image Compression | 1 | Example |
8.8.7 Respond: Custom Image Compression | 5 | Free Response |
8.9 Lossy Compression | Lesson | |
8.9.1 Lossy Compression | 1 | Video |
8.9.2 Lossy Compression Quiz | 1 | Check for Understanding |
8.9.3 Remove the Vowels | 1 | Example |
8.9.4 Decreasing Resolution | 5 | Exercise |
8.9.5 Analog to Digital | 1 | Connection |
8.9.6 Respond: Analog to Digital | 5 | Free Response |
8.10 Introduction to Steganography | Lesson | |
8.10.1 Introduction to Steganography | 5 | Connection |
8.10.2 What is steganography? | 5 | Connection |
8.10.3 Hide Text | 1 | Example |
8.10.4 Steganography | 5 | Video |
8.10.5 Creating a Secret Message | 5 | Free Response |
8.10.6 Data Hiding and Extraction | 1 | Connection |
8.10.7 Reflect: Data Hiding and Extraction | 5 | Free Response |
8.11 Ethics of Steganography | Lesson | |
8.11.1 Steganography - Part 2 | 5 | Video |
8.11.2 Government Surveillance and Reality Winner | 1 | Connection |
8.11.3 Government Surveillance and Reality Winner | 5 | Free Response |
8.11.4 Ethics Moment: Government Surveillance | 5 | Connection |
8.11.5 Reflection: Government Surveillance | 5 | Free Response |
8.12 Digital Information Quiz | Lesson | |
8.12.1 Digital Information Quiz | 15 | Unit Quiz |
8.12.2 Digital Information Badge | 1 | Badge |
Practice PT: Steganography - Color Channels | ||
9.1 Steganography Exploration | Lesson | |
9.1.1 Part 1: Loading images | 5 | Exercise |
9.1.2 Upload your own photos | 5 | Exercise |
9.1.3 Part 2: The encrypt function | 5 | Exercise |
9.1.4 Part 3: The decrypt function | 5 | Exercise |
Midterm | ||
10.1 Midterm | Lesson | |
10.1.1 Midterm Pt 1: Multiple Choice | 10 | Midterm |
Encryption | ||
11.1 Caesar Ciphers | Lesson | |
11.1.1 Introduction to Caesar Ciphers | 5 | Connection |
11.1.2 slides | 5 | Video |
11.1.3 A Caesar Cipher | 5 | Connection |
11.1.4 Encryption and Decryption | 5 | Free Response |
11.1.5 Decryption Practice | 4 | Check for Understanding |
11.1.6 Caesar Cipher Encryption | 5 | Exercise |
11.2 Decrypting and Breaking Caesar Ciphers | Lesson | |
11.2.1 Caesar Cipher Decryption | 5 | Exercise |
11.2.2 Break Caesar's Cipher! | 5 | Exercise |
11.2.3 Reflection: Caesar's Cipher | 5 | Free Response |
11.2.4 Ethics Moment: Apple v. Barr | 5 | Connection |
11.2.5 Reflection: Apple v. Barr | 5 | Free Response |
11.3 Vigenère Cipher | Lesson | |
11.3.1 Vigenère Cipher | 5 | Video |
11.3.2 One-Time Pad Cipher | 5 | Connection |
11.3.3 How a Vigenère Cipher Works | 5 | Connection |
11.3.4 Vigenère Scavenger Hunt | 5 | Free Response |
11.3.5 Vigenère Pseudocode | 5 | Free Response |
11.3.6 Write your own Vigenère Cipher | 5 | Exercise |
11.3.7 Reflection: Vigenère Cipher | 5 | Free Response |
11.3.8 Ethics Moment: Cryptography and the NSA | 5 | Connection |
11.3.9 Reflection: Cryptography and the NSA | 5 | Free Response |
11.4 Symmetric and Public Key Encryption | Lesson | |
11.4.1 Symmetric and Public Key Encryption | 5 | Video |
11.4.2 Diffie-Hellman Key Exchange | 5 | Connection |
11.4.3 Diffie-Hellman Key Exchange | 1 | Example |
11.4.4 Public Key Programming Exercise | 5 | Exercise |
11.4.5 RSA Encryption: Step 1 | 5 | Connection |
11.4.6 RSA Encryption: Step 2 | 5 | Connection |
11.4.7 RSA Encryption: Step 3 | 5 | Connection |
11.4.8 RSA Encryption: Step 4 | 5 | Connection |
11.4.9 RSA | 1 | Notes |
11.4.10 RSA Reflection | 5 | Free Response |
11.4.11 Ethics Moment: Ransomware | 5 | Connection |
11.4.12 Reflection: Ransomware | 5 | Free Response |
Practice PT: Create an Image Filter! | ||
12.1 Practice PT: Create an Image Filter! | Lesson | |
12.1.1 Practice PT: Create an Image Filter! | 10 | Challenge |
12.1.2 Reflection | 5 | Free Response |
The Internet | ||
13.1 Welcome to the Internet | Lesson | |
13.1.1 Welcome to the Internet | 1 | Video |
13.1.2 Welcome to the Internet Quiz | 1 | Check for Understanding |
13.1.3 Reflection: The Internet and You | 5 | Free Response |
13.2 Internet Hardware | Lesson | |
13.2.1 Devices and Networks | 1 | Video |
13.2.2 Hardware of the Internet | 1 | Video |
13.2.3 Internet Hardware Quiz | 3 | Check for Understanding |
13.2.4 The Internet is in the Ocean | 1 | Connection |
13.3 Internet Addresses | Lesson | |
13.3.1 Internet Addresses | 1 | Video |
13.3.2 Internet Addresses Quiz | 1 | Check for Understanding |
13.3.3 Free Response: The Need for Addresses | 5 | Free Response |
13.3.4 4-bit Addresses | 1 | Check for Understanding |
13.3.5 Free Response: IPv4 vs IPv6 | 5 | Free Response |
13.4 Viewing Websites | Lesson | |
13.4.1 Viewing Websites | 1 | Video |
13.4.2 Viewing Websites Quiz | 5 | Check for Understanding |
13.4.3 Free Response: Explaining a URL | 5 | Free Response |
13.5 DNS and Routing | Lesson | |
13.5.1 DNS | 1 | Video |
13.5.2 DNS Quiz | 2 | Check for Understanding |
13.5.3 How Does DNS Work? | 1 | Connection |
13.5.4 Respond: How Does DNS Work? | 5 | Free Response |
13.5.5 DNS Badge | 1 | Badge |
13.6 Routing | Lesson | |
13.6.1 Routing | 1 | Video |
13.6.2 Routing Quiz | 1 | Check for Understanding |
13.6.3 Free Response: Redundancy | 5 | Free Response |
13.6.4 Route Tracing | 5 | Traceroute |
13.7 Packets and Protocols | Lesson | |
13.7.1 Packets and Protocols | 1 | Video |
13.7.2 Packets and Protocols Quiz | 1 | Check for Understanding |
13.7.3 Passing Notes | 10 | Resource |
13.7.4 How the Internet Works | 1 | Connection |
13.7.5 The Story of the Internet | 5 | Free Response |
13.8 Sequential, Parallel & Distributed Computing | Lesson | |
13.8.1 Computer Processing Operations | 1 | Video |
13.8.2 Computer Processing Operations Quiz | 2 | Check for Understanding |
13.8.3 Sequential vs. Parallel Activity | 5 | Resource |
13.8.4 Free Response: Sequential vs. Parallel | 5 | Free Response |
13.9 The Impact of the Internet | Lesson | |
13.9.1 The Impact of the Internet | 1 | Video |
13.9.2 The Impact of the Internet Quiz | 2 | Check for Understanding |
13.9.3 Reflection: Internet Impact | 5 | Free Response |
13.9.4 Crucial Steps to Close the Digital Divide | 1 | Connection |
13.9.5 Reflection: Closing the Digital Divide | 5 | Free Response |
13.9.6 Pokemon Go: Unintended Effects | 1 | Connection |
13.9.7 Reflection: Unintended Effects | 5 | Free Response |
13.10 Creative Credit & Copyright | Lesson | |
13.10.1 Creative Credit and Copyright | 1 | Video |
13.10.2 Creative Credit and Copyright | 2 | Check for Understanding |
13.10.3 Cite! | 5 | Free Response |
13.10.4 Exploring Creative Commons | 1 | Connection |
13.10.5 Respond: Creative Commons | 5 | Free Response |
13.10.6 Task: Finding Images | 5 | Free Response |
13.10.7 Reflection: Why is Copyright Important? | 5 | Free Response |
13.11 The Internet Quiz | Lesson | |
13.11.1 The Internet Quiz | 15 | Unit Quiz |
13.11.2 The Internet Badge | 1 | Badge |
Cybersecurity | ||
14.1 Introduction to Cybersecurity | Lesson | |
14.1.1 Warm-Up | 5 | Notes |
14.1.2 Cybersecurity | 1 | Video |
14.1.3 Cybersecurity Quiz | 1 | Check for Understanding |
14.1.4 Gone Phishing | 5 | Video |
14.1.5 Deepfake Videos | 5 | Connection |
14.1.6 Keeping Secrets | 5 | Free Response |
14.1.7 Phishing Quiz | 5 | Connection |
14.1.8 How is Your Phishing IQ? | 5 | Connection |
14.1.9 Phishing Simulator | 1 | Example |
14.1.10 Reflection: Phishing Emails | 5 | Free Response |
14.1.11 Think-Pair-Share Activity | 5 | Free Response |
14.2 CIA Triad | Lesson | |
14.2.1 Warm-Up | 5 | Notes |
14.2.2 CIA Triad | 5 | Video |
14.2.3 Alice-Bob-Eve | 5 | Free Response |
14.2.4 PII | 5 | Free Response |
14.2.5 CIA Breach | 5 | Free Response |
14.2.6 Identity Theft | 5 | Free Response |
14.2.7 CIA and Phishing | 5 | Free Response |
14.2.8 Challenge: Create a Phishing Email | 5 | Free Response |
14.2.9 Challenge: Investigate Legalities | 5 | Free Response |
14.3 Identity Crisis | Lesson | |
14.3.1 Warm Up | 5 | Notes |
14.3.2 Identity Crisis | 5 | Video |
14.3.3 Sharing Passwords | 5 | Connection |
14.3.4 Reflect: Sharing Passwords | 5 | Free Response |
14.3.5 What is your password? | 5 | Connection |
14.3.6 Identity crisis activity | 5 | Free Response |
14.3.7 World's Biggest Data Breaches | 5 | Free Response |
14.3.8 Research: Types of Attacks | 5 | Free Response |
14.3.9 You Can Be Tracked! | 1 | Example |
14.4 Let Me In | Lesson | |
14.4.1 Warm Up | 5 | Notes |
14.4.2 Authenticate and Authorize | 5 | Video |
14.4.3 How do you protect your data? | 5 | Free Response |
14.4.4 Common Passwords | 5 | Free Response |
14.4.5 Password Strength | 1 | Connection |
14.4.6 Reflection: Password Strength | 5 | Free Response |
14.4.7 What Makes a Password Strong? | 5 | Video |
14.4.8 Multifactor Authentication | 1 | Example |
14.4.9 One Pager: Password Security | 5 | Exercise |
14.5 Introduction to Networking | Lesson | |
14.5.1 Warm Up | 5 | Notes |
14.5.2 Ethics Moment: Equifax Data Breach | 5 | Connection |
14.5.3 Reflection: Equifax Data Breach | 5 | Free Response |
14.5.4 Muddy City | 5 | Exercise |
14.5.5 Reflection: Muddy City | 5 | Free Response |
14.5.6 Rogue Access Points | 1 | Connection |
14.6 OSI model activity | Lesson | |
14.6.1 Introduction | 5 | Free Response |
14.6.2 Event 1: Truck Payload Change | 5 | Free Response |
14.6.3 Event 2: Truck Payload Change | 5 | Free Response |
14.6.4 Event 3: Route Change | 5 | Free Response |
14.6.5 Event 4: Envelopes Never Arrive | 5 | Free Response |
14.6.6 Event 5: Missing One Box | 5 | Free Response |
14.6.7 Event 6: Box Payload Change | 5 | Free Response |
14.6.8 Organizing the Events | 5 | Free Response |
14.6.9 Relating this to the Internet | 5 | Video |
14.7 Network Attacks | Lesson | |
14.7.1 Warm Up | 5 | Notes |
14.7.2 One Pager: Network Attacks | 5 | Exercise |
14.7.3 Reflection: Network Attacks | 5 | Free Response |
14.8 Basic Cybersecurity Risk Concepts | Lesson | |
14.8.1 Warm up | 5 | Notes |
14.8.2 Basic Cybersecurity Risk, Part 1 | 5 | Video |
14.8.3 Personal Data Threats | 5 | Free Response |
14.8.4 Basic Cybersecurity Risk, Part 2 | 5 | Video |
14.8.5 Risk and Consequences: Part 1 | 5 | Free Response |
14.8.6 Risk and Consequences: Part 2 | 5 | Free Response |
14.8.7 Digital Footprint | 5 | Free Response |
14.9 Cybersecurity Risk Model-Assessing Risk | Lesson | |
14.9.1 Warm up | 5 | Notes |
14.9.2 Assessing Risk, Part 1 | 5 | Video |
14.9.3 Think, Pair, Share: Assets | 5 | Notes |
14.9.4 Assessing Risk, Part 2 | 5 | Video |
14.9.5 Risk Scenario Assessment 1: Malware | 5 | Free Response |
14.9.6 Risk Scenario Assessment 2: Identity Theft | 5 | Free Response |
14.9.7 Risk Scenario Assessment 3: Ransomware | 5 | Free Response |
14.9.8 Risk Scenario Assessment 4: Email Compromise | 5 | Free Response |
14.9.9 Asset Identification Activity | 5 | Free Response |
14.10 Cybersecurity Risk Model-Vulnerabilities | Lesson | |
14.10.1 Warm up | 5 | Notes |
14.10.2 Vulnerabilities | 5 | Video |
14.10.3 National Vulnerability Database Activity | 5 | Check for Understanding |
14.10.4 Exploring Vulnerabilities | 5 | Free Response |
14.11 Cybersecurity Risk Model-Security Controls | Lesson | |
14.11.1 Warm up | 5 | Notes |
14.11.2 Internet of Things | 5 | Connection |
14.11.3 Security Controls | 5 | Video |
14.11.4 Defense in Depth | 5 | Free Response |
14.11.5 Ethics Moment: The Risk of AI | 5 | Connection |
14.11.6 Reflect: The Risk of AI | 5 | Free Response |
Practice PT: Cyber Ethics | ||
15.1 CyberEthics | Lesson | |
15.1.1 Presentation | 5 | Video |
15.1.2 Topics | 5 | Free Response |
15.1.3 Problem Summary | 5 | Free Response |
15.1.4 Pros and Cons | 5 | Free Response |
15.1.5 Your Solution | 5 | Free Response |
15.1.6 Writing an Introduction | 5 | Free Response |
15.1.7 Developing your position | 5 | Free Response |
15.1.8 Conclusion | 5 | Free Response |
15.1.9 Position Paper | 5 | Free Response |
Data | ||
16.1 Getting Started with Data | Lesson | |
16.1.1 Getting Started with Data | 1 | Video |
16.1.2 Getting Started with Data Quiz | 3 | Check for Understanding |
16.1.3 What Do We Do With Data? | 1 | Connection |
16.1.4 Reflection: Continuously Collecting Data | 5 | Free Response |
16.2 Visualizing and Interpreting Data | Lesson | |
16.2.1 Visualizing Data | 1 | Video |
16.2.2 Visualizing Data Quiz | 3 | Check for Understanding |
16.2.3 Exploring Data Visualizations | 1 | Notes |
16.2.4 US Recorded Music Revenue | 1 | Connection |
16.2.5 National Parks | 1 | Connection |
16.2.6 March Madness | 1 | Connection |
16.2.7 Captain Marvel | 1 | Connection |
16.2.8 Respond: Visualizations | 5 | Free Response |
16.2.9 Free Response: Choosing a Visualization | 5 | Free Response |
16.2.10 Visualizing & Interpreting Data Quiz | 3 | Check for Understanding |
16.3 Data Collection & Limitations | Lesson | |
16.3.1 Collecting Data | 1 | Video |
16.3.2 Collecting Data Quiz | 2 | Check for Understanding |
16.3.3 Reflection: Design a Survey | 5 | Free Response |
16.3.4 Reflection: Self-Driving Cars | 5 | Free Response |
16.3.5 Data Collection Quiz | 2 | Check for Understanding |
16.3.6 Data Limitations | 1 | Video |
16.3.7 Interpreting Data Quiz | 2 | Check for Understanding |
16.3.8 Line Graph | 1 | Example |
16.3.9 Bar Graph | 1 | Example |
16.3.10 Pie Chart | 1 | Example |
16.3.11 Reflection: Importance of Metadata | 5 | Free Response |
16.4 Unintentional Data Sharing | Lesson | |
16.4.1 Warm up | 5 | Notes |
16.4.2 Personal Data Vulnerabilities | 5 | Video |
16.4.3 Spokeo | 5 | Free Response |
16.4.4 Cyber Insecurity | 5 | Connection |
16.4.5 Who is this Person? | 5 | Free Response |
16.4.6 Who is this Person? - Car | 5 | Free Response |
16.4.7 Who is this Person? - Hobby | 5 | Free Response |
16.4.8 What can you learn from ... | 5 | Free Response |
16.4.9 Social Media Clean-up | 1 | Example |
16.5 Metadata and Data Collection | Lesson | |
16.5.1 Warm Up | 5 | Notes |
16.5.2 Understanding Metadata | 5 | Video |
16.5.3 Image Data Extraction | 5 | Free Response |
16.5.4 Information about your images | 5 | Free Response |
16.5.5 Security Vulnerability | 5 | Free Response |
16.5.6 Ethics Moment: Collection of Data | 5 | Connection |
16.5.7 Reflection: Collection of Data | 5 | Free Response |
16.5.8 Online Privacy | 5 | Connection |
16.6 Data Quiz | Lesson | |
16.6.1 Data Quiz | 12 | Unit Quiz |
Project: Present a Data-Driven Insight | ||
17.1 Present a Data-Driven Insight | Lesson | |
17.1.1 Topic Brainstorm | 5 | Free Response |
17.1.2 Gathering Resources | 5 | Free Response |
17.1.3 Make a Visualization | 25 | Presentation |
17.1.4 Written Responses | 5 | Free Response |
17.1.5 Share Your Findings | 5 | Free Response |
Project: The Impacts of Computing | ||
18.1 The Impacts of Computing | Lesson | |
18.1.1 Artifact Creation | 5 | Free Response |
18.1.2 Selecting Computing Innovations | 5 | Free Response |
18.1.3 Data as an Input and an Output | 5 | Free Response |
18.1.4 Data Privacy and Security | 5 | Free Response |
Create Performance Task | ||
19.1 Create Performance Task | Lesson | |
19.1.1 Create Performance Task | 10 | Challenge |
AP Exam Review | ||
20.1 Preparation | Lesson | |
20.1.1 AP Exam Reference Sheet | 1 | Resource |
20.1.2 Course Review | 1 | Notes |
20.2 Practice AP Exam | Lesson | |
20.2.1 Practice AP Exam | 70 | AP Practice |
Creative Development | ||
21.1 Intro to Design Thinking | Lesson | |
21.1.1 Intro to Design Thinking | 1 | Video |
21.1.2 Intro to Design Thinking | 1 | Check for Understanding |
21.1.3 User Interface Scavenger Hunt | 5 | Free Response |
21.1.4 Case Study: Helping Blind People See | 1 | Connection |
21.1.5 Case Study Responses | 5 | Free Response |
21.1.6 Tell a Story Demo | 1 | Demo |
21.1.7 Brainstorming Project Ideas | 5 | Free Response |
21.2 Prototype | Lesson | |
21.2.1 Prototype | 1 | Video |
21.2.2 Prototype Quiz | 1 | Check for Understanding |
21.2.3 Wizard of Oz Prototyping | 1 | Connection |
21.2.4 Example Wizard of Oz Paper Prototype | 1 | Connection |
21.2.5 Make Your Paper Prototypes! | 5 | Free Response |
21.3 Test | Lesson | |
21.3.1 Test | 1 | Video |
21.3.2 Testing Quiz | 1 | Check for Understanding |
21.3.3 Testing with Users | 1 | Connection |
21.3.4 Example: How to User Test | 1 | Connection |
21.3.5 How to User Test Responses | 5 | Free Response |
21.3.6 Example: How NOT to User Test | 1 | Connection |
21.3.7 How NOT to User Test Responses | 5 | Free Response |
21.3.8 How to Make Accessible Programs | 5 | Resource |
21.3.9 Test Prototype 1 | 5 | Free Response |
21.3.10 Test Prototype 2 | 5 | Free Response |
21.3.11 Improve Your Prototype | 5 | Free Response |
21.4 Project Prep and Development | Lesson | |
21.4.1 Online Collaboration Tools | 5 | Free Response |
21.4.2 Pseudocode | 5 | Free Response |
21.4.3 Write the Code! | 10 | Challenge |
21.4.4 Present your Project | 5 | Presentation |
21.4.5 Mindsets | 5 | Survey |
Final | ||
22.1 Final | Lesson | |
22.1.1 Final Pt 1: Multiple Choice | 21 | Final |
Extra Karel Practice | ||
23.1 Extra Karel Practice | Lesson | |
23.1.1 Functions Practice: K For Karel | 10 | Challenge |
23.1.2 Functions Practice: Christmas Karel | 10 | Challenge |
23.1.3 Functions Practice: X Marks the Spot | 10 | Challenge |
23.1.4 While Loop Practice: Blackout | 10 | Challenge |
23.1.5 While Loop Practice: Move To Top | 10 | Challenge |
23.1.6 Functions and While Loop Practice: Opposite Corner | 10 | Challenge |
23.1.7 While Loop Practice: Checkered Row | 10 | Challenge |
23.1.8 For Loop Practice: Tall Hurdles | 10 | Challenge |
23.1.9 Functions and While Loop Practice: Row and Back | 10 | Challenge |
23.1.10 Functions and For Loop Practice: Opposite Squares | 10 | Challenge |
23.1.11 Stairway To Heaven | 10 | Challenge |
23.1.12 Karel Practice Badge | 0 | Badge |
Extra Karel Puzzles | ||
24.1 Extra Karel Puzzles | Lesson | |
24.1.1 Midpoint Karel | 10 | Challenge |
24.1.2 Target Karel | 10 | Challenge |
24.1.3 The Winding Yellow Road | 10 | Challenge |
24.1.4 Super Random Hurdles | 10 | Challenge |
24.1.5 Copy | 10 | Challenge |
24.1.6 Multiply | 10 | Challenge |
24.1.7 Fibonacci Karel | 10 | Challenge |
24.1.8 Comparison Karel | 10 | Challenge |
24.1.9 Swap | 10 | Challenge |
24.1.10 Sorting Karel | 10 | Challenge |
24.1.11 Karel Puzzles Badge | 0 | Badge |
Karel Challenges | ||
25.1 Challenge Problems | Lesson | |
25.1.1 Fetch | 10 | Challenge |
25.1.2 Racing Karel | 10 | Challenge |
25.1.3 Tower Builder | 10 | Challenge |
25.1.4 Super Cleanup Karel | 10 | Challenge |
25.1.5 Double Tennis Balls | 10 | Challenge |
25.1.6 Karel Unit Test | 24 | Unit Quiz |
25.1.7 Karel Challenges Badge | 0 | Badge |
Web Development | ||
26.1 Introduction to HTML | Lesson | |
26.1.1 Introduction to HTML | 1 | Video |
26.1.2 Introduction to HTML Quiz | 1 | Check for Understanding |
26.1.3 Our First HTML Page | 1 | Example |
26.1.4 Say Hello! | 5 | Exercise |
26.2 Structure of an HTML Page | Lesson | |
26.2.1 Structure of an HTML Page | 1 | Video |
26.2.2 Structure of an HTML Page Quiz | 1 | Check for Understanding |
26.2.3 HTML Template | 1 | Example |
26.2.4 Hello World Page | 1 | Example |
26.2.5 The <title> Tag | 5 | Exercise |
26.2.6 Your First HTML Page | 5 | Exercise |
26.2.7 Structure Badge | 0 | Badge |
26.3 Formatting Text | Lesson | |
26.3.1 Formatting Text | 1 | Video |
26.3.2 Formatting Text Quiz | 1 | Check for Understanding |
26.3.3 Dictionary | 1 | Example |
26.3.4 That's Bold | 5 | Exercise |
26.3.5 Artificial Intelligence | 5 | Exercise |
26.3.6 State Capitals | 5 | Exercise |
26.4 Links | Lesson | |
26.4.1 Links | 1 | Video |
26.4.2 Links Quiz | 1 | Check for Understanding |
26.4.3 The <a> Tag | 1 | Example |
26.4.4 Simple Link | 5 | Exercise |
26.4.5 My Favorite Websites | 5 | Exercise |
26.5 Images | Lesson | |
26.5.1 Images | 1 | Video |
26.5.2 Images Quiz | 1 | Check for Understanding |
26.5.3 The <img> Tag | 1 | Example |
26.5.4 Building the CodeHS Homepage | 1 | Example |
26.5.5 Collage on a Theme | 5 | Exercise |
26.5.6 Linking an Image | 5 | Exercise |
26.5.7 Personal Library | 5 | Exercise |
26.5.8 Images Badge | 0 | Badge |
26.6 HTML Lists | Lesson | |
26.6.1 HTML Lists | 1 | Video |
26.6.2 HTML Lists Quiz | 1 | Check for Understanding |
26.6.3 Grocery Shopping | 1 | Example |
26.6.4 Favorite Things | 5 | Exercise |
26.6.5 To-Do List | 5 | Exercise |
26.6.6 List Article | 5 | Exercise |
26.7 HTML Tables | Lesson | |
26.7.1 HTML Tables | 1 | Video |
26.7.2 HTML Tables Quiz | 3 | Check for Understanding |
26.7.3 Address Book | 1 | Example |
26.7.4 Favorite Songs | 5 | Exercise |
26.7.5 Calendar | 5 | Exercise |
26.8 HTML Styling | Lesson | |
26.8.1 HTML Styling | 1 | Video |
26.8.2 HTML Styling Quiz | 1 | Check for Understanding |
26.8.3 Stylish Address Book | 1 | Example |
26.8.4 Background Colors | 5 | Exercise |
26.8.5 Style Your To-Do List | 5 | Exercise |
26.9 Introduction to CSS | Lesson | |
26.9.1 Introduction to CSS | 1 | Video |
26.9.2 Introduction to CSS Quiz | 2 | Check for Understanding |
26.9.3 Styling Your H1s | 1 | Example |
26.9.4 First Style with CSS | 5 | Exercise |
26.9.5 List Styling | 5 | Exercise |
26.10 CSS Select by Tag | Lesson | |
26.10.1 CSS Select by Tag | 1 | Video |
26.10.2 CSS Select by Tag Quiz | 1 | Check for Understanding |
26.10.3 Rainbow | 1 | Example |
26.10.4 Dog Styling | 1 | Example |
26.10.5 Restaurant Menu | 5 | Exercise |
26.10.6 Put Karel Together | 5 | Exercise |
26.11 CSS Select by Class | Lesson | |
26.11.1 CSS Select by Class | 1 | Video |
26.11.2 CSS Select by Class Quiz | 1 | Check for Understanding |
26.11.3 Simple Checkerboard | 1 | Example |
26.11.4 Tic Tac Toe | 5 | Exercise |
26.11.5 Music Library | 5 | Exercise |
26.12 CSS Select by ID | Lesson | |
26.12.1 CSS Select by ID | 1 | Video |
26.12.2 CSS Select by ID Quiz | 1 | Check for Understanding |
26.12.3 Logo | 1 | Example |
26.12.4 Favorite Dog | 5 | Exercise |
26.12.5 Bingo | 5 | Exercise |
26.12.6 CSS Badge | 0 | Badge |
26.13 Web Development Quiz | Lesson | |
26.13.1 Web Development Quiz | 15 | Unit Quiz |
26.14 Practice PT: Your First Website | Lesson | |
26.14.1 About the AP CSP Exam | 1 | Notes |
26.14.2 Set Up Your codehs.me Website | 10 | Challenge |
26.14.3 Practice PT: Your First Website | 10 | Challenge |
26.14.4 Website Badge | 0 | Badge |
Functions and Parameters Practice | ||
27.1 Functions and Parameters Practice | Lesson | |
27.1.1 Taking a Power | 10 | Challenge |
27.1.2 Dot Rectangle | 10 | Challenge |
27.1.3 Print the Date | 10 | Challenge |
27.1.4 Grades | 10 | Challenge |
27.1.5 Concentric Circles | 10 | Challenge |
27.1.6 Graphics Staircase | 10 | Challenge |
27.1.7 The Weekend | 5 | Exercise |
27.1.8 Functions and Parameters Badge | 0 | Badge |
Extra Console Challenges | ||
28.1 Prime Numbers | Lesson | |
28.1.1 Prime Numbers | 10 | Challenge |
28.1.2 Find the Max | 10 | Challenge |
28.1.3 Prime Factorization | 10 | Challenge |
28.1.4 Fizz Buzz | 10 | Challenge |
28.1.5 Grid Printer | 10 | Challenge |
28.1.6 Number Sum | 10 | Challenge |
28.1.7 Hailstone Sequence | 10 | Challenge |
28.1.8 Pythagorean Triples | 10 | Challenge |
28.1.9 Digit Array | 10 | Challenge |
28.1.10 Console Challenges Badge | 0 | Badge |
28.2 Control Structures | Lesson | |
28.2.1 Meal Planner | 5 | Exercise |
28.2.2 Better Password Prompt | 5 | Exercise |
Animation and Games | ||
29.1 Timers | Lesson | |
29.1.1 Timers | 1 | Video |
29.1.2 Timers Quiz | 2 | Check for Understanding |
29.1.3 Moving Ball | 1 | Example |
29.1.4 Magic 8 Ball | 1 | Example |
29.1.5 Crazy Ball | 5 | Exercise |
29.2 Random Circles | Lesson | |
29.2.1 Example: Random Circles | 1 | Video |
29.2.2 Random Circles Quiz | 2 | Check for Understanding |
29.2.3 Random Circles | 1 | Example |
29.2.4 Spinner Example | 1 | Example |
29.2.5 Growing Circle | 5 | Exercise |
29.2.6 Paint splatter | 5 | Exercise |
29.3 Random Ghosts | Lesson | |
29.3.1 Example: Random Ghosts | 1 | Video |
29.3.2 Random Ghosts Quiz | 3 | Check for Understanding |
29.3.3 Random Ghosts | 1 | Example |
29.3.4 Random Fireworks | 1 | Example |
29.3.5 Circle Wall | 5 | Exercise |
29.4 Bouncing Ball | Lesson | |
29.4.1 Example: Bouncing Ball | 1 | Video |
29.4.2 Bouncing Ball Quiz | 2 | Check for Understanding |
29.4.3 Bouncing Ball | 1 | Example |
29.4.4 Hotspot Ball | 5 | Exercise |
29.4.5 Trail | 5 | Exercise |
29.5 Mouse Events: Mouse Clicked | Lesson | |
29.5.1 Mouse Events: Mouse Clicked | 1 | Video |
29.5.2 Mouse Events: Mouse Clicked Quiz | 2 | Check for Understanding |
29.5.3 Click For Circles | 1 | Example |
29.5.4 Click For Mickey | 1 | Example |
29.5.5 Click for Rectangles | 5 | Exercise |
29.5.6 Pause | 5 | Exercise |
29.6 Mouse Events: Mouse Moved | Lesson | |
29.6.1 Mouse Events: Mouse Moved | 1 | Video |
29.6.2 Mouse Events: Mouse Moved Quiz | 2 | Check for Understanding |
29.6.3 Simple Painting | 1 | Example |
29.6.4 Colorful Drag to Paint | 1 | Example |
29.6.5 Coordinates | 5 | Exercise |
29.6.6 Target | 5 | Exercise |
29.7 Drawing Lines | Lesson | |
29.7.1 Example: Drawing Lines | 1 | Video |
29.7.2 Drawing Lines Quiz | 2 | Check for Understanding |
29.7.3 Drawing Lines | 1 | Example |
29.7.4 Leash | 5 | Exercise |
29.8 Crazy Ball Game | Lesson | |
29.8.1 Crazy Ball Game 1 | 1 | Video |
29.8.2 Crazy Ball Game Quiz 1 | 1 | Check for Understanding |
29.8.3 Crazy Ball Game 1 | 1 | Example |
29.8.4 Crazy Ball Game 2 | 1 | Video |
29.8.5 Crazy Ball Game Quiz 2 | 2 | Check for Understanding |
29.8.6 Crazy Ball Game 2 | 1 | Example |
29.8.7 Drag and Drop | 5 | Exercise |
29.8.8 Animation and Games Unit Quiz | 25 | Check for Understanding |
29.8.9 Animation Exercises Badge | 0 | Badge |
Project: Breakout | ||
30.1 Breakout | Lesson | |
30.1.1 Bricks | 10 | Challenge |
30.1.2 Ball and Paddle | 10 | Challenge |
30.1.3 Breakout | 10 | Challenge |
30.1.4 Breakout Badge | 0 | Badge |
Practice PT: Steganography - Binary | ||
31.1 Practice PT: Steganography | Lesson | |
31.1.1 Secret Message Steganography | 1 | Example |
31.1.2 Secret Image Steganography Demo | 1 | Demo |
31.1.3 Secret Image Steganography | 10 | Challenge |
Practice PT: The Effects of the Internet | ||
32.1 The Effects of the Internet | Lesson | |
32.1.1 Topic Brainstorm | 5 | Free Response |
32.1.2 Gathering Resources | 5 | Free Response |
32.1.3 Make Your Artifact | 25 | Presentation |
32.1.4 Written Responses | 5 | Free Response |
Visualizing Music | ||
33.1 Visualizing Music | Lesson | |
33.1.1 Visualizing Music | 1 | Video |
33.1.2 Our First Visualization | 1 | Example |
33.1.3 Vertical Bars | 1 | Example |
33.1.4 Vertical Bars with Color | 1 | Example |
33.1.5 Changing Circles | 1 | Example |
33.1.6 Your First Visualization | 5 | Exercise |
33.1.7 Changing Colors | 5 | Exercise |
33.1.8 Custom Colors | 5 | Exercise |
33.1.9 Create Your Own Music Visualization | 10 | Challenge |
Project: Tic Tac Toe | ||
34.1 Tic Tac Toe | Lesson | |
34.1.1 Tic Tac Toe: Part 1 | 10 | Challenge |
34.1.2 Tic Tac Toe: Part 2 | 10 | Challenge |
34.1.3 Tic Tac Toe: Full Game | 10 | Challenge |
34.1.4 Tic Tac Toe Badge | 0 | Badge |
Project: Helicopter Game | ||
35.1 Game Design: Helicopter | Lesson | |
35.1.1 Introduction to Helicopter | 1 | Video |
35.2 Basics | Lesson | |
35.2.1 Moving the Helicopter | 1 | Video |
35.2.2 Moving the Helicopter | 5 | Exercise |
35.2.3 Adding Obstacles | 1 | Video |
35.2.4 Adding Obstacles | 5 | Exercise |
35.2.5 Smoother Movement | 1 | Video |
35.2.6 Smoother Movement | 5 | Exercise |
35.3 Improvements | Lesson | |
35.3.1 Colliding with Walls | 1 | Video |
35.3.2 Wall Collisions | 5 | Exercise |
35.3.3 Colliding with Obstacles | 1 | Video |
35.3.4 Obstacle Collisions | 5 | Exercise |
35.3.5 Adding Terrain | 1 | Video |
35.3.6 Adding Terrain | 5 | Exercise |
35.3.7 Moving the Terrain | 1 | Video |
35.3.8 Moving the Terrain | 5 | Exercise |
35.4 Polish | Lesson | |
35.4.1 Helicopter Image and Points! | 1 | Video |
35.4.2 Image and Points | 5 | Exercise |
35.4.3 Dust | 1 | Video |
35.4.4 Dust | 5 | Exercise |
35.4.5 More Obstacles | 1 | Video |
35.4.6 More Obstacles | 5 | Exercise |
35.4.7 Helicopter Extensions | 10 | Challenge |
35.4.8 Helicopter Badge | 0 | Badge |
35.5 Intro to Computer Science Completed | Lesson | |
35.5.1 Intro to Computer Science Badge | 0 | Badge |
Data Structures Challenge Problems | ||
36.1 Conway's Game of Life | Lesson | |
36.1.1 Make The Grid | 5 | Exercise |
36.1.2 Find Life | 5 | Exercise |
36.1.3 Finish Up | 5 | Exercise |
36.2 Connect Four | Lesson | |
36.2.1 Make The Board | 5 | Exercise |
36.2.2 Take Turns | 5 | Exercise |
36.2.3 Find the Winner | 5 | Exercise |
More Basic Data Structures | ||
37.1 Intro to Objects/Maps | Lesson | |
37.1.1 Intro to Objects/Maps | 1 | Video |
37.1.2 Intro to Objects / Maps Quiz | 3 | Check for Understanding |
37.1.3 Phonebook | 1 | Example |
37.1.4 Sidekicks | 5 | Exercise |
37.2 Basics of Objects | Lesson | |
37.2.1 Basics of Objects | 1 | Video |
37.2.2 Basics of Objects Quiz | 2 | Check for Understanding |
37.2.3 Object Literal Phonebook | 1 | Example |
37.2.4 Object Property Phonebook | 1 | Example |
37.2.5 Beware Dot Notation! | 1 | Example |
37.2.6 Address Book | 5 | Exercise |
37.3 Iterating Over an Object | Lesson | |
37.3.1 Iterating Over An Object | 1 | Video |
37.3.2 Iterating over an Object Quiz | 1 | Check for Understanding |
37.3.3 Print Phonebook | 1 | Example |
37.3.4 Hogwarts | 5 | Exercise |
37.4 When Do I Use an Object? | Lesson | |
37.4.1 When Do I Use An Object? | 1 | Video |
37.4.2 When do I use an Object Quiz | 4 | Check for Understanding |
37.4.3 Facebook Friend Lists | 1 | Example |
37.4.4 Does the Key Exist? | 1 | Example |
37.4.5 Text Messages | 5 | Exercise |
37.5 Intro to Sets | Lesson | |
37.5.1 Intro to Sets | 1 | Video |
37.5.2 Intro to Sets Quiz | 3 | Check for Understanding |
37.5.3 Basic Sets | 1 | Example |
37.5.4 Vowels | 5 | Exercise |
37.5.5 Mutual Friends | 5 | Exercise |
37.5.6 Total Network of Friends | 5 | Exercise |
37.6 Intro to Grids | Lesson | |
37.6.1 Intro to Grids | 1 | Video |
37.6.2 Intro to Grids Quiz | 3 | Check for Understanding |
37.6.3 Grid Basics | 1 | Example |
37.7 Looping Over a Grid | Lesson | |
37.7.1 Looping Over a Grid | 1 | Video |
37.7.2 Looping Over a Grid Quiz | 2 | Check for Understanding |
37.7.3 Print Grid | 1 | Example |
37.7.4 Summing Grid | 5 | Exercise |
37.8 Grid Example: Get a Row | Lesson | |
37.8.1 Grid Example: Get a Row | 1 | Video |
37.8.2 Grid Example: Get a Row Quiz | 2 | Check for Understanding |
37.8.3 Get a Row | 1 | Example |
37.8.4 Grid Diagonal | 5 | Exercise |
37.9 Data Structures Challenges | Lesson | |
37.9.1 Watercolor Grid | 10 | Challenge |
37.9.2 Data Structures Unit Quiz | 25 | Unit Quiz |
Computer Science Principles Pretest | ||
38.1 Computer Science Principles Pretest | Lesson | |
38.1.1 About the Pretest | 1 | Notes |
38.1.2 Mindsets | 0 | Survey |
38.1.3 Knowledge & Skills: Computer Science Principles | 15 | Quiz |
Computer Science Principles Posttest | ||
39.1 Computer Science Principles Posttest | Lesson | |
39.1.1 About the Posttest | 1 | Notes |
39.1.2 Mindsets | 0 | Survey |
39.1.3 Computer Science Principles Knowledge & Skills | 15 | Quiz |
Extra AP Pseudocode Practice | ||
40.1 Extra AP Pseudocode Practice | Lesson | |
40.1.1 AP Practice: If/Else Statements | 4 | AP Practice |
40.1.2 AP Practice: Iteration | 7 | AP Practice |
40.1.3 AP Practice: Lists | 4 | AP Practice |
Additional Cybersecurity Modules | ||
41.1 Cryptography | Lesson | |
41.1.1 Cryptography | 1 | Video |
41.1.2 Cryptography Quiz | 2 | Check for Understanding |
41.1.3 Implementing Caesar's Cipher | 1 | Video |
41.1.4 Implementing Caesar's Cipher Quiz | 1 | Check for Understanding |
41.1.5 Encrypting with a Caesar Cipher | 1 | Example |
41.1.6 Cracking a Caesar Cipher | 1 | Example |
41.1.7 Reflection: Caesar Cipher | 5 | Free Response |
41.1.8 Guess the Passcode | 5 | Exercise |
Practice PT: The Shopping List | ||
42.1 Practice PT: The Shopping List | Lesson | |
42.1.1 Create PT Scoring Guidelines | 5 | Connection |
42.1.2 Practice PT: The Shopping List | 10 | Challenge |
42.1.3 Reflection | 5 | Free Response |
Practice PT: Testing 1, 2, 3 ... | ||
43.1 Practice PT: Testing 1, 2, 3 ... | Lesson | |
43.1.1 Introduction | 5 | Notes |
43.1.2 Create Scoring Guidelines | 5 | Connection |
43.1.3 Practice PT: Testing 1, 2, 3 ... | 5 | Exercise |
43.1.4 Reflection | 5 | Free Response |
Sign up for a free teacher account to get access to curriculum, teacher tools and teacher resources.
Teacher SignupSign up as a student if you are in a school and have a class code given to you by your teacher.
Student Signup