Please enable JavaScript to use CodeHS

AP Computer Science Principles: Cybersecurity - Outline

  1. Introduction to Programming

    1. 1.1 Welcome to AP CSP

    2. Video 1.1.1 Welcome to AP CSP
    3. Free Response 1.1.2 Why AP CSP?
    4. 1.2 Introduction to Programming With Karel

    5. Video 1.2.1 Introduction to Programming With Karel
    6. Check for Understanding 1.2.2 Quiz: Karel Commands
    7. Example 1.2.3 Our First Karel Program
    8. Exercise 1.2.4 Your First Karel Program
    9. Exercise 1.2.5 Short Stack
    10. Debugging 1.2.6 Dancing Karel
    11. 1.3 More Basic Karel

    12. Video 1.3.1 More Basic Karel
    13. Check for Understanding 1.3.2 More Basic Karel Quiz
    14. Example 1.3.3 Tennis Ball Square
    15. Exercise 1.3.4 Make a Tower
    16. Exercise 1.3.5 Pyramid of Karel
    17. Debugging 1.3.6 Go Through the Door
    18. 1.4 Karel Can't Turn Right

    19. Video 1.4.1 Karel Can't Turn Right
    20. Check for Understanding 1.4.2 Karel Can't Turn Right Quiz
    21. Example 1.4.3 Tower and Turn Right
    22. Exercise 1.4.4 Fireman Karel
    23. Exercise 1.4.5 Slide Karel
    24. Free Response 1.4.6 Reflection: Teaching Karel New Commands
    25. Badge 1.4.7 Right Turn Karel Badge
    26. 1.5 Functions in Karel

    27. Video 1.5.1 Functions in Karel
    28. Check for Understanding 1.5.2 Functions in Karel Quiz
    29. Example 1.5.3 Turn Around
    30. Exercise 1.5.4 Pancakes
    31. Exercise 1.5.5 Backflip
    32. Exercise 1.5.6 Digging Karel
    33. Debugging 1.5.7 Build a Shelter
    34. 1.6 The Start Function

    35. Video 1.6.1 The Start Function
    36. Check for Understanding 1.6.2 The Start Function Quiz
    37. Example 1.6.3 Tower with Start Function
    38. Exercise 1.6.4 Pancakes with Start
    39. Exercise 1.6.5 Digging Karel with Start
    40. 1.7 Top Down Design and Decomposition in Karel

    41. Video 1.7.1 Top Down Design and Decomposition in Karel
    42. Check for Understanding 1.7.2 Top Down Design and Decomposition Quiz
    43. Example 1.7.3 Hurdle Karel
    44. Exercise 1.7.4 The Two Towers
    45. Debugging 1.7.5 Make a 'Z'
    46. Free Response 1.7.6 Reflection: Top Down Design
    47. 1.8 Commenting Your Code

    48. Video 1.8.1 Commenting Your Code
    49. Check for Understanding 1.8.2 Commenting Your Code Quiz
    50. Example 1.8.3 Hurdle Karel
    51. Exercise 1.8.4 The Two Towers + Comments
    52. Free Response 1.8.5 Reflection: Commenting
    53. 1.9 Abstraction

    54. Video 1.9.1 Abstraction
    55. Check for Understanding 1.9.2 Abstraction Quiz
    56. Example 1.9.3 Abstracting Away buildTower
    57. Free Response 1.9.4 Abstracting Your Day
    58. Free Response 1.9.5 Reflection: Abstraction
    59. Free Response 1.9.6 Reflection: Abstraction in Karel
    60. 1.10 Super Karel

    61. Video 1.10.1 Super Karel
    62. Check for Understanding 1.10.2 Super Karel Quiz
    63. Example 1.10.3 Hurdle Karel (with SuperKarel)
    64. Exercise 1.10.4 The Two Towers + SuperKarel
    65. Badge 1.10.5 Super Karel Badge
    66. 1.11 For Loops

    67. Video 1.11.1 For Loops
    68. Check for Understanding 1.11.2 For Loops Quiz
    69. Example 1.11.3 Repeated Move
    70. Example 1.11.4 Put Down Tennis Balls
    71. Exercise 1.11.5 Take 'em All
    72. Exercise 1.11.6 Dizzy Karel
    73. Exercise 1.11.7 For Loop Square
    74. Exercise 1.11.8 Lots of Hurdles
    75. 1.12 If Statements

    76. Video 1.12.1 If Statements
    77. Check for Understanding 1.12.2 If Statements Quiz
    78. Example 1.12.3 If Statements
    79. Example 1.12.4 Safe Take Ball
    80. Exercise 1.12.5 Is There a Ball?
    81. Survey 1.12.6 Mindsets
    82. 1.13 If/Else Statements

    83. Video 1.13.1 If/Else Statements
    84. Check for Understanding 1.13.2 If/Else Statements Quiz
    85. Example 1.13.3 If/Else Statements
    86. Example 1.13.4 One Ball in Each Spot
    87. Exercise 1.13.5 Right Side Up
    88. Badge 1.13.6 Conditional Karel Badge
    89. 1.14 While Loops in Karel

    90. Video 1.14.1 While Loops in Karel
    91. Check for Understanding 1.14.2 While Loops in Karel Quiz
    92. Example 1.14.3 Move to Wall
    93. Exercise 1.14.4 Follow The Yellow Ball Road
    94. Exercise 1.14.5 Lay Row of Tennis Balls
    95. Exercise 1.14.6 Big Tower
    96. 1.15 Control Structures Example

    97. Video 1.15.1 Control Structures Example
    98. Check for Understanding 1.15.2 Control Structures Example Quiz
    99. Example 1.15.3 Cleanup Karel
    100. Exercise 1.15.4 Random Hurdles
    101. 1.16 Debugging Strategies

    102. Video 1.16.1 Debugging Basics
    103. Check for Understanding 1.16.2 Debugging Basics
    104. Debugging 1.16.3 Debug: The Two Towers
    105. Debugging 1.16.4 Debug: Lots of Hurdles
    106. Video 1.16.5 Debugging From Error Messages
    107. Check for Understanding 1.16.6 Debugging with Error Messages
    108. Debugging 1.16.7 Debug: Big Tower
    109. Debugging 1.16.8 Debug: Random Hurdles
    110. 1.17 Karel Algorithms

    111. Video 1.17.1 Karel Algorithms
    112. Check for Understanding 1.17.2 Quiz: Which Control Structure?
    113. Video 1.17.3 Algorithms Example: Move Stack
    114. Example 1.17.4 Move Tennis Ball Stack
    115. Example 1.17.5 Climbing Karel
    116. Exercise 1.17.6 Decorate the Fence
    117. 1.18 How to Indent Your Code

    118. Video 1.18.1 How to Indent Your Code
    119. Check for Understanding 1.18.2 How to Indent Your Code Quiz
    120. Example 1.18.3 Dance and Clean Karel
    121. Exercise 1.18.4 Diagonal
    122. Exercise 1.18.5 Staircase
    123. 1.19 Ultra Karel

    124. Video 1.19.1 Ultra Karel
    125. Check for Understanding 1.19.2 Ultra Karel Quiz
    126. Example 1.19.3 Red Frame
    127. Example 1.19.4 Slip 'n Slide
    128. Exercise 1.19.5 Invert Colors
    129. Exercise 1.19.6 Checkerboard Karel
    130. Badge 1.19.7 Karel Exercises Badge
    131. 1.20 Karel Challenges

    132. Challenge 1.20.1 Fetch
    133. Challenge 1.20.2 Racing Karel
    134. Challenge 1.20.3 Tower Builder
    135. Challenge 1.20.4 Super Cleanup Karel
    136. Challenge 1.20.5 Double Tennis Balls
    137. Badge 1.20.6 Karel Challenges Badge
    138. 1.21 Introduction to Programming Quiz

    139. Unit Quiz 1.21.1 Introduction to Programming Quiz
  2. Practice PT: Pair-Programming Paint!

    1. 2.1 Practice PT: Pair-Programming Paint!

    2. Video 2.1.1 Pair-Programming
    3. Check for Understanding 2.1.2 Pair-Programming
    4. Connection 2.1.3 Create PT Scoring Guidelines
    5. Free Response 2.1.4 Setting Norms
    6. Free Response 2.1.5 Brainstorm and Discuss
    7. Free Response 2.1.6 Planning
    8. Free Response 2.1.7 Program Documentation
    9. Free Response 2.1.8 Pseudocode
    10. Challenge 2.1.9 Create your UltraKarel Image!
    11. Free Response 2.1.10 Reflection
    12. Badge 2.1.11 Karel Practice PT Badge
  3. Programming with JavaScript

    1. 3.1 What is Code

    2. Video 3.1.1 What is Code?
    3. Connection 3.1.2 What is Software
    4. Free Response 3.1.3 Respond: What is Software
    5. 3.2 Uses of Programs

    6. Video 3.2.1 Uses of Programs
    7. Connection 3.2.2 Why Should You Learn to Program?
    8. Free Response 3.2.3 Reflection: Learning to Program
    9. Free Response 3.2.4 Reflection: Programs in Your Life
    10. Free Response 3.2.5 Reflection: Future Programs
    11. Free Response 3.2.6 Task: Computing Innovations
    12. 3.3 Hello World

    13. Video 3.3.1 Hello World
    14. Check for Understanding 3.3.2 Hello World Quiz
    15. Example 3.3.3 Hello World
    16. Exercise 3.3.4 Your Name and Hobby
    17. 3.4 Variables

    18. Video 3.4.1 Variables
    19. Check for Understanding 3.4.2 Variables Quiz
    20. Example 3.4.3 Basic Variables
    21. Exercise 3.4.4 Apples and Oranges
    22. AP Practice 3.4.5 AP Practice: Variables
    23. 3.5 User Input

    24. Video 3.5.1 User Input
    25. Check for Understanding 3.5.2 User Input Quiz
    26. Example 3.5.3 Basic User Input
    27. Exercise 3.5.4 Obi-Wan Says
    28. AP Practice 3.5.5 AP Practice: User Input
    29. Badge 3.5.6 User Input Badge
    30. 3.6 Basic Math in JavaScript

    31. Video 3.6.1 Basic Math in JavaScript
    32. Check for Understanding 3.6.2 Basic Math in JavaScript Quiz
    33. Example 3.6.3 Order of Operations
    34. Example 3.6.4 Dollars to Pounds
    35. Example 3.6.5 Dividing Up Groups
    36. Exercise 3.6.6 Sporting Goods Shop
    37. Exercise 3.6.7 Running Speed
    38. Exercise 3.6.8 24 vs. "24"
    39. AP Practice 3.6.9 AP Practice: Arithmetic Operators
    40. 3.7 Using Graphics in JavaScript

    41. Video 3.7.1 Graphics
    42. Check for Understanding 3.7.2 JavaScript Graphics Quiz
    43. Example 3.7.3 Graphics Hello World
    44. Example 3.7.4 Blue Circle
    45. Example 3.7.5 Red Rectangle
    46. Example 3.7.6 8 Ball
    47. Exercise 3.7.7 French Flag
    48. Exercise 3.7.8 Snowman
    49. Badge 3.7.9 Graphics Badge
    50. 3.8 Mouse Events: Mouse Clicked

    51. Video 3.8.1 Mouse Events: Mouse Clicked
    52. Check for Understanding 3.8.2 Mouse Events: Mouse Clicked Quiz
    53. Example 3.8.3 Click For Circles
    54. Example 3.8.4 Click For Mickey
    55. Exercise 3.8.5 Click for Rectangles
    56. 3.9 Programming with JavaScript Quiz

    57. Unit Quiz 3.9.1 Programming with JavaScript Quiz
    58. Badge 3.9.2 Graphics Badge
  4. JavaScript Control Structures

    1. 4.1 Booleans

    2. Video 4.1.1 Booleans
    3. Check for Understanding 4.1.2 Booleans Quiz
    4. Example 4.1.3 First Boolean
    5. Exercise 4.1.4 Do You Have a Cat?
    6. 4.2 Logical Operators

    7. Video 4.2.1 Logical Operators
    8. Check for Understanding 4.2.2 Logical Operators Quiz
    9. Example 4.2.3 Light Switch
    10. Example 4.2.4 President
    11. Example 4.2.5 Wasting Time
    12. Exercise 4.2.6 Can You Graduate?
    13. Exercise 4.2.7 School's Out
    14. 4.3 Comparison Operators

    15. Video 4.3.1 Comparison Operators
    16. Check for Understanding 4.3.2 Comparison Operators Quiz
    17. Example 4.3.3 Voting Age
    18. Example 4.3.4 Grade Range
    19. Exercise 4.3.5 Rolling Dice
    20. Exercise 4.3.6 All Star
    21. AP Practice 4.3.7 AP Practice: Comparison Operators
    22. 4.4 If Statements

    23. Video 4.4.1 If Statements
    24. Check for Understanding 4.4.2 If Statements Quiz
    25. Example 4.4.3 Negative Numbers
    26. Example 4.4.4 Great Names
    27. Example 4.4.5 Even and Odd
    28. Example 4.4.6 Secret Password
    29. Exercise 4.4.7 Teenagers
    30. Video 4.4.8 Input Validation and Conditionals
    31. AP Practice 4.4.9 Conditional Pseudocode Activity
    32. Badge 4.4.10 Conditionals Badge
    33. 4.5 Applying Conditionals - Password Validation

    34. Video 4.5.1 Password Protection
    35. Exercise 4.5.2 Password Checker
    36. Connection 4.5.3 How are passwords saved?
    37. Free Response 4.5.4 Reflect: How are passwords saved?
    38. Exercise 4.5.5 Create a password
    39. Connection 4.5.6 Ethics Moment: Impact of Code
    40. Free Response 4.5.7 Reflection: Impact of Code
    41. 4.6 Key Events

    42. Video 4.6.1 Key Events
    43. Check for Understanding 4.6.2 Key Events Quiz
    44. Example 4.6.3 Keyboard Square
    45. Exercise 4.6.4 Growing Circle
    46. 4.7 For Loops in JavaScript

    47. Video 4.7.1 Basic For Loop
    48. Check for Understanding 4.7.2 For Loops Quiz
    49. Example 4.7.3 For Loop
    50. Exercise 4.7.4 Meme Text Generator
    51. Exercise 4.7.5 The Worm
    52. Exercise 4.7.6 Caterpillar
    53. 4.8 General For Loops

    54. Video 4.8.1 General For Loop
    55. Check for Understanding 4.8.2 General For Loop Quiz
    56. Example 4.8.3 Countdown
    57. Example 4.8.4 Count By Twos
    58. Exercise 4.8.5 Count By Sevens
    59. Exercise 4.8.6 Powers of Two
    60. Video 4.8.7 Iterations
    61. AP Practice 4.8.8 Iterative Pseudocode Activity - Part 1
    62. 4.9 For Loop Practice

    63. Video 4.9.1 For Loop Examples
    64. Check for Understanding 4.9.2 For Loop Examples Quiz
    65. Example 4.9.3 For Loop Sum
    66. Exercise 4.9.4 Better Sum
    67. Exercise 4.9.5 Factorial
    68. Exercise 4.9.6 All Dice Values
    69. Connection 4.9.7 Ethics Moment: Sampling Music
    70. Free Response 4.9.8 Reflection: Sampling Music
    71. 4.10 Random Numbers

    72. Video 4.10.1 Random Numbers
    73. Check for Understanding 4.10.2 Random Numbers Quiz
    74. Example 4.10.3 Rolling a Die
    75. Example 4.10.4 Flipping a Coin
    76. Exercise 4.10.5 Lots of Dice
    77. Exercise 4.10.6 Random Color Square
    78. Survey 4.10.7 Mindsets
    79. 4.11 While Loops

    80. Video 4.11.1 While Loops
    81. Check for Understanding 4.11.2 While Loops Quiz
    82. Example 4.11.3 While Loop Countdown
    83. Exercise 4.11.4 Inventory
    84. Exercise 4.11.5 Fibonacci
    85. Exercise 4.11.6 Verify the Password Length
    86. AP Practice 4.11.7 Iterative Pseudocode Activity - Part 2
    87. 4.12 Loop and a Half

    88. Video 4.12.1 Loop and a Half
    89. Check for Understanding 4.12.2 Loop and a Half Quiz
    90. Example 4.12.3 Adding Up Numbers
    91. Exercise 4.12.4 Snake Eyes
    92. Exercise 4.12.5 Making a Stronger Password
    93. Exercise 4.12.6 Passwords with Letters and Numbers
    94. Badge 4.12.7 Looper Badge
    95. 4.13 Javascript Control Structures Quiz

    96. Unit Quiz 4.13.1 JavaScript Control Structures Quiz
  5. Functions and Parameters

    1. 5.1 Functions and Parameters 1

    2. Video 5.1.1 Functions and Parameters 1
    3. Check for Understanding 5.1.2 Functions and Parameters Quiz 1
    4. Example 5.1.3 Double Number
    5. Exercise 5.1.4 Square
    6. Exercise 5.1.5 Triple
    7. 5.2 Functions and Parameters 2

    8. Video 5.2.1 Functions and Parameters 2
    9. Check for Understanding 5.2.2 Functions and Parameters Quiz 2
    10. Example 5.2.3 Sum Function
    11. Exercise 5.2.4 Area of Triangle
    12. Exercise 5.2.5 Height in Meters
    13. 5.3 Functions and Parameters 3

    14. Video 5.3.1 Functions and Parameters 3
    15. Check for Understanding 5.3.2 Functions and Parameters Quiz 3
    16. Example 5.3.3 Draw Circles
    17. Exercise 5.3.4 Horizontal Lines
    18. Exercise 5.3.5 Graphics Stop Light
    19. Exercise 5.3.6 Pool Table
    20. Badge 5.3.7 Parameters Badge
    21. 5.4 Functions and Return Values 1

    22. Video 5.4.1 Functions and Return Values 1
    23. Check for Understanding 5.4.2 Functions and Return Values Quiz
    24. Example 5.4.3 Double Number
    25. Exercise 5.4.4 Square with Return Values
    26. Exercise 5.4.5 Quadruple with Return Values
    27. 5.5 Functions and Return Values 2

    28. Video 5.5.1 Functions and Return Values 2
    29. Check for Understanding 5.5.2 Functions and Return Values Quiz 2
    30. Example 5.5.3 Return Values
    31. Exercise 5.5.4 Is It Even?
    32. Exercise 5.5.5 Min
    33. 5.6 Local Variables and Scope

    34. Video 5.6.1 Local Variables and Scope
    35. Check for Understanding 5.6.2 Local Variables and Scope Quiz
    36. Example 5.6.3 Return Values
    37. Exercise 5.6.4 Local Variables
    38. 5.7 JavaScript vs Karel

    39. Video 5.7.1 JavaScript vs Karel
    40. Example 5.7.2 Making Karel's World
    41. Example 5.7.3 Making Karel Turn Left
    42. Exercise 5.7.4 Making Karel Turn Right
    43. Exercise 5.7.5 Making Karel Move
    44. Connection 5.7.6 What is an API?
    45. Free Response 5.7.7 Reflection: Is Karel an API?
    46. Badge 5.7.8 JavaScript Exercises Badge
    47. 5.8 Basic JavaScript and Graphics Challenges

    48. Challenge 5.8.1 Ghosts
    49. Challenge 5.8.2 Guessing Game
    50. Challenge 5.8.3 Draw Something
    51. Badge 5.8.4 JavaScript Challenges Badge
    52. 5.9 Functions and Parameters Quiz

    53. Unit Quiz 5.9.1 Functions and Parameters Quiz
  6. Practice PT: Tell a Story

    1. 6.1 Project: Tell a Story

    2. Demo 6.1.1 Tell a Story Demo
    3. Connection 6.1.2 Create PT Scoring Guidelines
    4. Free Response 6.1.3 Brainstorm and Discuss
    5. Free Response 6.1.4 Planning
    6. Free Response 6.1.5 Pseudocode
    7. Challenge 6.1.6 Tell a Story!
    8. Free Response 6.1.7 Reflection
  7. Basic Data Structures

    1. 7.1 Intro to Lists/Arrays

    2. Video 7.1.1 Intro to Lists/Arrays
    3. Check for Understanding 7.1.2 Intro to Lists/Arrays Quiz
    4. Example 7.1.3 Making an Array
    5. Exercise 7.1.4 List of Places to Travel
    6. Exercise 7.1.5 List of Prime Numbers
    7. 7.2 Indexing Into an Array

    8. Video 7.2.1 Indexing Into an Array
    9. Check for Understanding 7.2.2 Indexing into an Array Quiz
    10. Example 7.2.3 Array Indexing Practice
    11. Exercise 7.2.4 Top Movies
    12. Badge 7.2.5 Indexing Badge
    13. 7.3 Adding/Removing From an Array

    14. Video 7.3.1 Adding/Removing From an Array
    15. Check for Understanding 7.3.2 Adding/Removing from an Array Quiz
    16. Example 7.3.3 Add/Remove From Array
    17. Exercise 7.3.4 Empty Array (Push/Pop)
    18. Video 7.3.5 Intro to Lists
    19. Check for Understanding 7.3.6 List Introduction
    20. 7.4 Array Length and Looping Through Arrays

    21. Video 7.4.1 Array Length and Looping Through Arrays
    22. Check for Understanding 7.4.2 Array Length and Looping Through Arrays Quiz
    23. Example 7.4.3 Print Shopping List
    24. Example 7.4.4 Print First Five Items
    25. Example 7.4.5 Sum Array
    26. Example 7.4.6 Max Value in Array
    27. Exercise 7.4.7 Product of List
    28. Exercise 7.4.8 Print Flight Itinerary
    29. Exercise 7.4.9 Double List
    30. Exercise 7.4.10 Evens Only List
    31. Exercise 7.4.11 In a World Without Arrays!
    32. Free Response 7.4.12 Reflection: World Without Arrays!
    33. Exercise 7.4.13 Reverse List
    34. 7.5 Iterating Over an Array

    35. Video 7.5.1 Examples: Iterating Over an Array
    36. Check for Understanding 7.5.2 Iterating Over an Array Quiz
    37. Example 7.5.3 Coin Flips
    38. Example 7.5.4 Many Crazy Balls
    39. Exercise 7.5.5 Coin Flip Fun: Number of Heads and Tails
    40. Exercise 7.5.6 Coin Flip Fun: Longest Streak of Heads
    41. Exercise 7.5.7 Changing Circles
    42. Exercise 7.5.8 Draw a Barcode
    43. Video 7.5.9 Traversing a List
    44. Check for Understanding 7.5.10 Traversing a List
    45. Badge 7.5.11 Arrays Badge
    46. Survey 7.5.12 Mindsets
    47. 7.6 Finding an Element in a List

    48. Video 7.6.1 Finding an Element in a List
    49. Check for Understanding 7.6.2 Finding an Element in a List Quiz
    50. Example 7.6.3 Array indexOf
    51. Exercise 7.6.4 Who is in Line?
    52. Example 7.6.5 Algorithm Efficiency
    53. 7.7 Removing an Element From an Array

    54. Video 7.7.1 Removing an Element From an Array
    55. Check for Understanding 7.7.2 Removing an Element from an Array Quiz
    56. Example 7.7.3 Splice and Remove
    57. Exercise 7.7.4 Remove From Line
    58. AP Practice 7.7.5 AP Practice: List Procedures
    59. 7.8 Applying Iteration - Usernames and Passwords

    60. Video 7.8.1 Username and Password Creation
    61. Free Response 7.8.2 Usernames and Passwords: Pseudocode
    62. Exercise 7.8.3 Usernames and Passwords: JavaScript
    63. Challenge 7.8.4 Username and Password Verification
    64. Connection 7.8.5 Ethics Moment: Facebook and AWS
    65. Free Response 7.8.6 Reflection: Facebook and AWS
    66. 7.9 Simulation

    67. Video 7.9.1 Simulation
    68. Example 7.9.2 Gravity Simulation
    69. Example 7.9.3 Conway's Game of Life
    70. Exercise 7.9.4 Simulating a Coin Flip
    71. Connection 7.9.5 Wolf Sheep Predation Simulation
    72. Badge 7.9.6 Data Structures Exercises Badge
    73. 7.10 Basic Data Structures Quiz

    74. Unit Quiz 7.10.1 Basic Data Structures Quiz
  8. Digital Information

    1. 8.1 Intro to Digital Information

    2. Video 8.1.1 What is Digital Information?
    3. Check for Understanding 8.1.2 What is Digital Information Quiz
    4. Example 8.1.3 Fast Food Menu
    5. Example 8.1.4 DNA
    6. Free Response 8.1.5 Reflection: Encodings Everywhere
    7. 8.2 Number Systems

    8. Video 8.2.1 Number Systems
    9. Notes 8.2.2 Number Base Tool
    10. Check for Understanding 8.2.3 Number Systems Quiz
    11. Video 8.2.4 Decimal to Binary
    12. Check for Understanding 8.2.5 Decimal to Binary Quiz
    13. Exercise 8.2.6 Binary Game
    14. Exercise 8.2.7 Overflow Error
    15. Example 8.2.8 More Overflow Errors
    16. 8.3 Encoding Text with Binary

    17. Video 8.3.1 Encoding Text with Binary
    18. Check for Understanding 8.3.2 Encoding Text with Binary Quiz
    19. Example 8.3.3 Morse Code
    20. Example 8.3.4 Decoding a Binary Message
    21. Example 8.3.5 2-bit Custom Encoding
    22. Example 8.3.6 Bits to ASCII
    23. Exercise 8.3.7 Hello Karel in Bits
    24. Exercise 8.3.8 Create your own Encoding
    25. Exercise 8.3.9 Text to Binary
    26. Badge 8.3.10 Encoding Badge
    27. 8.4 Pixel Images

    28. Video 8.4.1 Pixel Images
    29. Check for Understanding 8.4.2 Pixel Images Quiz
    30. Resource 8.4.3 Creating Pixel Images
    31. Example 8.4.4 CodeHS Logo
    32. Exercise 8.4.5 Checkerboard
    33. Exercise 8.4.6 Ladder
    34. Exercise 8.4.7 Create an Image!
    35. 8.5 Hexadecimal

    36. Video 8.5.1 Hexadecimal
    37. Check for Understanding 8.5.2 Hexadecimal Quiz
    38. Example 8.5.3 Hexadecimal to Decimal
    39. Exercise 8.5.4 Binary to Hex Game
    40. 8.6 Pixel Colors!

    41. Video 8.6.1 Pixel Colors
    42. Check for Understanding 8.6.2 Pixel Colors Quiz
    43. Example 8.6.3 Colors in Bits
    44. Example 8.6.4 Colors in Text
    45. Example 8.6.5 Colors in RGB
    46. Exercise 8.6.6 Exploring RGB
    47. Exercise 8.6.7 Making Yellow
    48. Exercise 8.6.8 Rainbow
    49. Exercise 8.6.9 Create a Color Image!
    50. 8.7 Image Manipulation

    51. Video 8.7.1 Manipulating Images
    52. Check for Understanding 8.7.2 Manipulating Images Quiz
    53. Video 8.7.3 Programming with WebImage
    54. Check for Understanding 8.7.4 Programming with WebImage Quiz
    55. Example 8.7.5 Black and White Filter
    56. Example 8.7.6 Brighten Filter
    57. Example 8.7.7 Saturation Filter
    58. Example 8.7.8 Pixel Picker
    59. Exercise 8.7.9 Invert Filter
    60. Exercise 8.7.10 Blue Filter
    61. Exercise 8.7.11 Darken Filter
    62. Badge 8.7.12 Image Manipulation Badge
    63. 8.8 Data Compression

    64. Video 8.8.1 Data Compression
    65. Check for Understanding 8.8.2 Data Compression Quiz
    66. Video 8.8.3 Run Length Encoding
    67. Check for Understanding 8.8.4 Run Length Encoding Quiz
    68. Example 8.8.5 Run Length Encoding
    69. Example 8.8.6 Custom Image Compression
    70. Free Response 8.8.7 Respond: Custom Image Compression
    71. 8.9 Lossy Compression

    72. Video 8.9.1 Lossy Compression
    73. Check for Understanding 8.9.2 Lossy Compression Quiz
    74. Example 8.9.3 Remove the Vowels
    75. Exercise 8.9.4 Decreasing Resolution
    76. Connection 8.9.5 Analog to Digital
    77. Free Response 8.9.6 Respond: Analog to Digital
    78. 8.10 Introduction to Steganography

    79. Connection 8.10.1 Introduction to Steganography
    80. Connection 8.10.2 What is steganography?
    81. Example 8.10.3 Hide Text
    82. Video 8.10.4 Steganography
    83. Free Response 8.10.5 Creating a Secret Message
    84. Connection 8.10.6 Data Hiding and Extraction
    85. Free Response 8.10.7 Reflect: Data Hiding and Extraction
    86. 8.11 Ethics of Steganography

    87. Video 8.11.1 Steganography - Part 2
    88. Connection 8.11.2 Government Surveillance and Reality Winner
    89. Free Response 8.11.3 Government Surveillance and Reality Winner
    90. Connection 8.11.4 Ethics Moment: Government Surveillance
    91. Free Response 8.11.5 Reflection: Government Surveillance
    92. 8.12 Digital Information Quiz

    93. Unit Quiz 8.12.1 Digital Information Quiz
    94. Badge 8.12.2 Digital Information Badge
  9. Practice PT: Steganography - Color Channels

    1. 9.1 Steganography Exploration

    2. Exercise 9.1.1 Part 1: Loading images
    3. Exercise 9.1.2 Upload your own photos
    4. Exercise 9.1.3 Part 2: The encrypt function
    5. Exercise 9.1.4 Part 3: The decrypt function
  10. Midterm

    1. 10.1 Midterm

    2. Midterm 10.1.1 Midterm Pt 1: Multiple Choice
  11. Encryption

    1. 11.1 Caesar Ciphers

    2. Connection 11.1.1 Introduction to Caesar Ciphers
    3. Video 11.1.2 slides
    4. Connection 11.1.3 A Caesar Cipher
    5. Free Response 11.1.4 Encryption and Decryption
    6. Check for Understanding 11.1.5 Decryption Practice
    7. Exercise 11.1.6 Caesar Cipher Encryption
    8. 11.2 Decrypting and Breaking Caesar Ciphers

    9. Exercise 11.2.1 Caesar Cipher Decryption
    10. Exercise 11.2.2 Break Caesar's Cipher!
    11. Free Response 11.2.3 Reflection: Caesar's Cipher
    12. Connection 11.2.4 Ethics Moment: Apple v. Barr
    13. Free Response 11.2.5 Reflection: Apple v. Barr
    14. 11.3 Vigenère Cipher

    15. Video 11.3.1 Vigenère Cipher
    16. Connection 11.3.2 One-Time Pad Cipher
    17. Connection 11.3.3 How a Vigenère Cipher Works
    18. Free Response 11.3.4 Vigenère Scavenger Hunt
    19. Free Response 11.3.5 Vigenère Pseudocode
    20. Exercise 11.3.6 Write your own Vigenère Cipher
    21. Free Response 11.3.7 Reflection: Vigenère Cipher
    22. Connection 11.3.8 Ethics Moment: Cryptography and the NSA
    23. Free Response 11.3.9 Reflection: Cryptography and the NSA
    24. 11.4 Symmetric and Public Key Encryption

    25. Video 11.4.1 Symmetric and Public Key Encryption
    26. Connection 11.4.2 Diffie-Hellman Key Exchange
    27. Example 11.4.3 Diffie-Hellman Key Exchange
    28. Exercise 11.4.4 Public Key Programming Exercise
    29. Connection 11.4.5 RSA Encryption: Step 1
    30. Connection 11.4.6 RSA Encryption: Step 2
    31. Connection 11.4.7 RSA Encryption: Step 3
    32. Connection 11.4.8 RSA Encryption: Step 4
    33. Notes 11.4.9 RSA Encryption
    34. Free Response 11.4.10 RSA Reflection
    35. Connection 11.4.11 Ethics Moment: Ransomware
    36. Free Response 11.4.12 Reflection: Ransomware
  12. Practice PT: Create an Image Filter!

    1. 12.1 Practice PT: Create an Image Filter!

    2. Connection 12.1.1 Create PT Scoring Guidelines
    3. Challenge 12.1.2 Practice PT: Create an Image Filter!
    4. Free Response 12.1.3 Reflection
  13. The Internet

    1. 13.1 Welcome to the Internet

    2. Video 13.1.1 Welcome to the Internet
    3. Check for Understanding 13.1.2 Welcome to the Internet Quiz
    4. Free Response 13.1.3 Reflection: The Internet and You
    5. 13.2 Internet Hardware

    6. Video 13.2.1 Devices and Networks
    7. Video 13.2.2 Hardware of the Internet
    8. Check for Understanding 13.2.3 Internet Hardware Quiz
    9. Connection 13.2.4 The Internet is in the Ocean
    10. 13.3 Internet Addresses

    11. Video 13.3.1 Internet Addresses
    12. Check for Understanding 13.3.2 Internet Addresses Quiz
    13. Free Response 13.3.3 Free Response: The Need for Addresses
    14. Check for Understanding 13.3.4 4-bit Addresses
    15. Free Response 13.3.5 Free Response: IPv4 vs IPv6
    16. 13.4 Viewing Websites

    17. Video 13.4.1 Viewing Websites
    18. Check for Understanding 13.4.2 Viewing Websites Quiz
    19. Free Response 13.4.3 Free Response: Explaining a URL
    20. 13.5 DNS

    21. Video 13.5.1 DNS
    22. Check for Understanding 13.5.2 DNS Quiz
    23. Connection 13.5.3 How Does DNS Work?
    24. Free Response 13.5.4 Respond: How Does DNS Work?
    25. Badge 13.5.5 DNS Badge
    26. 13.6 Routing

    27. Video 13.6.1 Routing
    28. Check for Understanding 13.6.2 Routing Quiz
    29. Free Response 13.6.3 Free Response: Redundancy
    30. 13.7 Packets and Protocols

    31. Video 13.7.1 Packets and Protocols
    32. Check for Understanding 13.7.2 Packets and Protocols Quiz
    33. Resource 13.7.3 Passing Notes
    34. Connection 13.7.4 How the Internet Works
    35. Free Response 13.7.5 The Story of the Internet
    36. 13.8 Sequential, Parallel & Distributed Computing

    37. Video 13.8.1 Computer Processing Operations
    38. Check for Understanding 13.8.2 Computer Processing Operations Quiz
    39. Resource 13.8.3 Sequential vs. Parallel Activity
    40. Free Response 13.8.4 Free Response: Sequential vs. Parallel
    41. 13.9 The Impact of the Internet

    42. Video 13.9.1 The Impact of the Internet
    43. Check for Understanding 13.9.2 The Impact of the Internet Quiz
    44. Free Response 13.9.3 Reflection: Internet Impact
    45. Connection 13.9.4 Crucial Steps to Close the Digital Divide
    46. Free Response 13.9.5 Reflection: Closing the Digital Divide
    47. Connection 13.9.6 Pokemon Go: Unintended Effects
    48. Free Response 13.9.7 Reflection: Unintended Effects
    49. 13.10 Creative Credit & Copyright

    50. Video 13.10.1 Creative Credit and Copyright
    51. Check for Understanding 13.10.2 Creative Credit and Copyright
    52. Free Response 13.10.3 Cite!
    53. Connection 13.10.4 Exploring Creative Commons
    54. Free Response 13.10.5 Respond: Creative Commons
    55. Free Response 13.10.6 Task: Finding Images
    56. Free Response 13.10.7 Reflection: Why is Copyright Important?
    57. 13.11 The Internet Quiz

    58. Unit Quiz 13.11.1 The Internet Quiz
    59. Badge 13.11.2 The Internet Badge
  14. Cybersecurity

    1. 14.1 Introduction to Cybersecurity

    2. Notes 14.1.1 Warm-Up
    3. Video 14.1.2 Cybersecurity
    4. Check for Understanding 14.1.3 Cybersecurity Quiz
    5. Video 14.1.4 Gone Phishing
    6. Connection 14.1.5 Deepfake Videos
    7. Free Response 14.1.6 Keeping Secrets
    8. Connection 14.1.7 Phishing Quiz
    9. Connection 14.1.8 How is Your Phishing IQ?
    10. Example 14.1.9 Phishing Simulator
    11. Free Response 14.1.10 Reflection: Phishing Emails
    12. Free Response 14.1.11 Think-Pair-Share Activity
    13. 14.2 CIA Triad

    14. Notes 14.2.1 Warm-Up
    15. Video 14.2.2 CIA Triad
    16. Free Response 14.2.3 Alice-Bob-Eve
    17. Free Response 14.2.4 PII
    18. Free Response 14.2.5 CIA Breach
    19. Free Response 14.2.6 Identity Theft
    20. Free Response 14.2.7 CIA and Phishing
    21. Free Response 14.2.8 Challenge: Create a Phishing Email
    22. Free Response 14.2.9 Challenge: Investigate Legalities
    23. 14.3 Identity Crisis

    24. Notes 14.3.1 Warm Up
    25. Video 14.3.2 Identity Crisis
    26. Connection 14.3.3 Sharing Passwords
    27. Free Response 14.3.4 Reflect: Sharing Passwords
    28. Connection 14.3.5 What is your password?
    29. Free Response 14.3.6 Identity crisis activity
    30. Free Response 14.3.7 World's Biggest Data Breaches
    31. Free Response 14.3.8 Research: Types of Attacks
    32. Example 14.3.9 You Can Be Tracked!
    33. 14.4 Let Me In

    34. Notes 14.4.1 Warm Up
    35. Video 14.4.2 Authenticate and Authorize
    36. Free Response 14.4.3 How do you protect your data?
    37. Free Response 14.4.4 Common Passwords
    38. Connection 14.4.5 Password Strength
    39. Free Response 14.4.6 Reflection: Password Strength
    40. Video 14.4.7 What Makes a Password Strong?
    41. Example 14.4.8 Multifactor Authentication
    42. Exercise 14.4.9 One Pager: Password Security
    43. 14.5 Introduction to Networking

    44. Notes 14.5.1 Warm Up
    45. Connection 14.5.2 Ethics Moment: Equifax Data Breach
    46. Free Response 14.5.3 Reflection: Equifax Data Breach
    47. Exercise 14.5.4 Muddy City
    48. Free Response 14.5.5 Reflection: Muddy City
    49. Connection 14.5.6 Rogue Access Points
    50. 14.6 OSI model activity

    51. Free Response 14.6.1 Introduction
    52. Free Response 14.6.2 Event 1: Truck Payload Change
    53. Free Response 14.6.3 Event 2: Truck Payload Change
    54. Free Response 14.6.4 Event 3: Route Change
    55. Free Response 14.6.5 Event 4: Envelopes Never Arrive
    56. Free Response 14.6.6 Event 5: Missing One Box
    57. Free Response 14.6.7 Event 6: Box Payload Change
    58. Free Response 14.6.8 Organizing the Events
    59. Video 14.6.9 Relating this to the Internet
    60. 14.7 Network Attacks

    61. Notes 14.7.1 Warm Up
    62. Exercise 14.7.2 One Pager: Network Attacks
    63. Free Response 14.7.3 Reflection: Network Attacks
    64. 14.8 Basic Cybersecurity Risk Concepts

    65. Notes 14.8.1 Warm up
    66. Video 14.8.2 Basic Cybersecurity Risk, Part 1
    67. Free Response 14.8.3 Personal Data Threats
    68. Video 14.8.4 Basic Cybersecurity Risk, Part 2
    69. Free Response 14.8.5 Risk and Consequences: Part 1
    70. Free Response 14.8.6 Risk and Consequences: Part 2
    71. Free Response 14.8.7 Digital Footprint
    72. 14.9 Cybersecurity Risk Model-Assessing Risk

    73. Notes 14.9.1 Warm up
    74. Video 14.9.2 Assessing Risk, Part 1
    75. Notes 14.9.3 Think, Pair, Share: Assets
    76. Video 14.9.4 Assessing Risk, Part 2
    77. Free Response 14.9.5 Risk Scenario Assessment 1: Malware
    78. Free Response 14.9.6 Risk Scenario Assessment 2: Identity Theft
    79. Free Response 14.9.7 Risk Scenario Assessment 3: Ransomware
    80. Free Response 14.9.8 Risk Scenario Assessment 4: Email Compromise
    81. Free Response 14.9.9 Asset Identification Activity
    82. 14.10 Cybersecurity Risk Model-Vulnerabilities

    83. Notes 14.10.1 Warm up
    84. Video 14.10.2 Vulnerabilities
    85. Check for Understanding 14.10.3 National Vulnerability Database Activity
    86. Free Response 14.10.4 Exploring Vulnerabilities
    87. 14.11 Cybersecurity Risk Model-Security Controls

    88. Notes 14.11.1 Warm up
    89. Connection 14.11.2 Internet of Things
    90. Video 14.11.3 Security Controls
    91. Free Response 14.11.4 Defense in Depth
    92. Connection 14.11.5 Ethics Moment: The Risk of AI
    93. Free Response 14.11.6 Reflect: The Risk of AI
  15. Practice PT: Cyber Ethics

    1. 15.1 CyberEthics

    2. Video 15.1.1 Presentation
    3. Free Response 15.1.2 Topics
    4. Free Response 15.1.3 Problem Summary
    5. Free Response 15.1.4 Pros and Cons
    6. Free Response 15.1.5 Your Solution
    7. Free Response 15.1.6 Writing an Introduction
    8. Free Response 15.1.7 Developing your position
    9. Free Response 15.1.8 Conclusion
    10. Free Response 15.1.9 Position Paper
  16. Data

    1. 16.1 Getting Started with Data

    2. Video 16.1.1 Getting Started with Data
    3. Check for Understanding 16.1.2 Getting Started with Data Quiz
    4. Connection 16.1.3 What Do We Do With Data?
    5. Free Response 16.1.4 Reflection: Continuously Collecting Data
    6. 16.2 Visualizing and Interpreting Data

    7. Video 16.2.1 Visualizing Data
    8. Check for Understanding 16.2.2 Visualizing Data Quiz
    9. Notes 16.2.3 Exploring Data Visualizations
    10. Connection 16.2.4 US Recorded Music Revenue
    11. Connection 16.2.5 National Parks
    12. Connection 16.2.6 March Madness
    13. Connection 16.2.7 Captain Marvel
    14. Free Response 16.2.8 Respond: Visualizations
    15. Free Response 16.2.9 Free Response: Choosing a Visualization
    16. Check for Understanding 16.2.10 Visualizing & Interpreting Data Quiz
    17. 16.3 Data Collection & Limitations

    18. Video 16.3.1 Collecting Data
    19. Check for Understanding 16.3.2 Collecting Data Quiz
    20. Free Response 16.3.3 Reflection: Design a Survey
    21. Free Response 16.3.4 Reflection: Self-Driving Cars
    22. Check for Understanding 16.3.5 Data Collection Quiz
    23. Video 16.3.6 Data Limitations
    24. Check for Understanding 16.3.7 Interpreting Data Quiz
    25. Example 16.3.8 Line Graph
    26. Example 16.3.9 Bar Graph
    27. Example 16.3.10 Pie Chart
    28. Free Response 16.3.11 Reflection: Importance of Metadata
    29. 16.4 Unintentional Data Sharing

    30. Notes 16.4.1 Warm up
    31. Video 16.4.2 Personal Data Vulnerabilities
    32. Free Response 16.4.3 Spokeo
    33. Connection 16.4.4 Cyber Insecurity
    34. Free Response 16.4.5 Who is this Person?
    35. Free Response 16.4.6 Who is this Person? - Car
    36. Free Response 16.4.7 Who is this Person? - Hobby
    37. Free Response 16.4.8 What can you learn from ...
    38. Example 16.4.9 Social Media Clean-up
    39. 16.5 Metadata and Data Collection

    40. Notes 16.5.1 Warm Up
    41. Video 16.5.2 Understanding Metadata
    42. Free Response 16.5.3 Image Data Extraction
    43. Free Response 16.5.4 Information about your images
    44. Free Response 16.5.5 Security Vulnerability
    45. Connection 16.5.6 Ethics Moment: Collection of Data
    46. Free Response 16.5.7 Reflection: Collection of Data
    47. Connection 16.5.8 Online Privacy
    48. 16.6 Data Quiz

    49. Unit Quiz 16.6.1 Data Quiz
  17. Project: Present a Data-Driven Insight

    1. 17.1 Present a Data-Driven Insight

    2. Free Response 17.1.1 Topic Brainstorm
    3. Free Response 17.1.2 Gathering Resources
    4. Presentation 17.1.3 Make a Visualization
    5. Free Response 17.1.4 Written Responses
    6. Free Response 17.1.5 Share Your Findings
  18. Project: The Impacts of Computing

    1. 18.1 The Impacts of Computing

    2. Free Response 18.1.1 Artifact Creation
    3. Free Response 18.1.2 Selecting Computing Innovations
    4. Free Response 18.1.3 Data as an Input and an Output
    5. Free Response 18.1.4 Data Privacy and Security
  19. Create Performance Task

    1. 19.1 Create Performance Task

    2. Connection 19.1.1 Create PT Scoring Guidelines
    3. Challenge 19.1.2 Create Performance Task
  20. AP Exam Review

    1. 20.1 Preparation

    2. Resource 20.1.1 AP Exam Reference Sheet
    3. Notes 20.1.2 Course Review
    4. 20.2 Practice AP Exam

    5. AP Practice 20.2.1 Practice AP Exam
  21. Creative Development

    1. 21.1 Intro to Design Thinking

    2. Video 21.1.1 Intro to Design Thinking
    3. Check for Understanding 21.1.2 Intro to Design Thinking
    4. Free Response 21.1.3 User Interface Scavenger Hunt
    5. Connection 21.1.4 Case Study: Helping Blind People See
    6. Free Response 21.1.5 Case Study Responses
    7. Demo 21.1.6 Tell a Story Demo
    8. Free Response 21.1.7 Brainstorming Project Ideas
    9. 21.2 Prototype

    10. Video 21.2.1 Prototype
    11. Check for Understanding 21.2.2 Prototype Quiz
    12. Connection 21.2.3 Wizard of Oz Prototyping
    13. Connection 21.2.4 Example Wizard of Oz Paper Prototype
    14. Free Response 21.2.5 Make Your Paper Prototypes!
    15. 21.3 Test

    16. Video 21.3.1 Test
    17. Check for Understanding 21.3.2 Testing Quiz
    18. Connection 21.3.3 Testing with Users
    19. Connection 21.3.4 Example: How to User Test
    20. Free Response 21.3.5 How to User Test Responses
    21. Connection 21.3.6 Example: How NOT to User Test
    22. Free Response 21.3.7 How NOT to User Test Responses
    23. Resource 21.3.8 How to Make Accessible Programs
    24. Free Response 21.3.9 Test Prototype 1
    25. Free Response 21.3.10 Test Prototype 2
    26. Free Response 21.3.11 Improve Your Prototype
    27. 21.4 Project Prep and Development

    28. Free Response 21.4.1 Online Collaboration Tools
    29. Free Response 21.4.2 Pseudocode
    30. Challenge 21.4.3 Write the Code!
    31. Presentation 21.4.4 Present your Project
    32. Survey 21.4.5 Mindsets
  22. Final

    1. 22.1 Final

    2. Final 22.1.1 Final: Multiple Choice
  23. Extra Karel Practice

    1. 23.1 Extra Karel Practice

    2. Challenge 23.1.1 Functions Practice: K For Karel
    3. Challenge 23.1.2 Functions Practice: Christmas Karel
    4. Challenge 23.1.3 Functions Practice: X Marks the Spot
    5. Challenge 23.1.4 While Loop Practice: Blackout
    6. Challenge 23.1.5 While Loop Practice: Move To Top
    7. Challenge 23.1.6 Functions and While Loop Practice: Opposite Corner
    8. Challenge 23.1.7 While Loop Practice: Checkered Row
    9. Challenge 23.1.8 For Loop Practice: Tall Hurdles
    10. Challenge 23.1.9 Functions and While Loop Practice: Row and Back
    11. Challenge 23.1.10 Functions and For Loop Practice: Opposite Squares
    12. Challenge 23.1.11 Stairway To Heaven
    13. Badge 23.1.12 Karel Practice Badge
  24. Extra Karel Puzzles

    1. 24.1 Extra Karel Puzzles

    2. Challenge 24.1.1 Midpoint Karel
    3. Challenge 24.1.2 Target Karel
    4. Challenge 24.1.3 The Winding Yellow Road
    5. Challenge 24.1.4 Super Random Hurdles
    6. Challenge 24.1.5 Copy
    7. Challenge 24.1.6 Multiply
    8. Challenge 24.1.7 Fibonacci Karel
    9. Challenge 24.1.8 Comparison Karel
    10. Challenge 24.1.9 Swap
    11. Challenge 24.1.10 Sorting Karel
    12. Badge 24.1.11 Karel Puzzles Badge
  25. Karel Challenges

    1. 25.1 Challenge Problems

    2. Challenge 25.1.1 Fetch
    3. Challenge 25.1.2 Racing Karel
    4. Challenge 25.1.3 Tower Builder
    5. Challenge 25.1.4 Super Cleanup Karel
    6. Challenge 25.1.5 Double Tennis Balls
    7. Unit Quiz 25.1.6 Karel Unit Test
    8. Badge 25.1.7 Karel Challenges Badge
  26. Web Development

    1. 26.1 Introduction to HTML

    2. Video 26.1.1 Introduction to HTML
    3. Check for Understanding 26.1.2 Introduction to HTML Quiz
    4. Example 26.1.3 Our First HTML Page
    5. Exercise 26.1.4 Say Hello!
    6. 26.2 Structure of an HTML Page

    7. Video 26.2.1 Structure of an HTML Page
    8. Check for Understanding 26.2.2 Structure of an HTML Page Quiz
    9. Example 26.2.3 HTML Template
    10. Example 26.2.4 Hello World Page
    11. Exercise 26.2.5 The <title> Tag
    12. Exercise 26.2.6 Your First HTML Page
    13. Badge 26.2.7 Structure Badge
    14. 26.3 Formatting Text

    15. Video 26.3.1 Formatting Text
    16. Check for Understanding 26.3.2 Formatting Text Quiz
    17. Example 26.3.3 Dictionary
    18. Exercise 26.3.4 That's Bold
    19. Exercise 26.3.5 Artificial Intelligence
    20. Exercise 26.3.6 State Capitals
    21. 26.4 Links

    22. Video 26.4.1 Links
    23. Check for Understanding 26.4.2 Links Quiz
    24. Example 26.4.3 The <a> Tag
    25. Exercise 26.4.4 Simple Link
    26. Exercise 26.4.5 My Favorite Websites
    27. 26.5 Images

    28. Video 26.5.1 Images
    29. Check for Understanding 26.5.2 Images Quiz
    30. Example 26.5.3 The <img> Tag
    31. Example 26.5.4 Building the CodeHS Homepage
    32. Exercise 26.5.5 Collage on a Theme
    33. Exercise 26.5.6 Linking an Image
    34. Exercise 26.5.7 Personal Library
    35. Badge 26.5.8 Images Badge
    36. 26.6 HTML Lists

    37. Video 26.6.1 HTML Lists
    38. Check for Understanding 26.6.2 HTML Lists Quiz
    39. Example 26.6.3 Grocery Shopping
    40. Exercise 26.6.4 Favorite Things
    41. Exercise 26.6.5 To-Do List
    42. Exercise 26.6.6 List Article
    43. 26.7 HTML Tables

    44. Video 26.7.1 HTML Tables
    45. Check for Understanding 26.7.2 HTML Tables Quiz
    46. Example 26.7.3 Address Book
    47. Exercise 26.7.4 Favorite Songs
    48. Exercise 26.7.5 Calendar
    49. 26.8 HTML Styling

    50. Video 26.8.1 HTML Styling
    51. Check for Understanding 26.8.2 HTML Styling Quiz
    52. Example 26.8.3 Stylish Address Book
    53. Exercise 26.8.4 Background Colors
    54. Exercise 26.8.5 Style Your To-Do List
    55. 26.9 Introduction to CSS

    56. Video 26.9.1 Introduction to CSS
    57. Check for Understanding 26.9.2 Introduction to CSS Quiz
    58. Example 26.9.3 Styling Your H1s
    59. Exercise 26.9.4 First Style with CSS
    60. Exercise 26.9.5 List Styling
    61. 26.10 CSS Select by Tag

    62. Video 26.10.1 CSS Select by Tag
    63. Check for Understanding 26.10.2 CSS Select by Tag Quiz
    64. Example 26.10.3 Rainbow
    65. Example 26.10.4 Dog Styling
    66. Exercise 26.10.5 Restaurant Menu
    67. Exercise 26.10.6 Put Karel Together
    68. 26.11 CSS Select by Class

    69. Video 26.11.1 CSS Select by Class
    70. Check for Understanding 26.11.2 CSS Select by Class Quiz
    71. Example 26.11.3 Simple Checkerboard
    72. Exercise 26.11.4 Tic Tac Toe
    73. Exercise 26.11.5 Music Library
    74. 26.12 CSS Select by ID

    75. Video 26.12.1 CSS Select by ID
    76. Check for Understanding 26.12.2 CSS Select by ID Quiz
    77. Example 26.12.3 Logo
    78. Exercise 26.12.4 Favorite Dog
    79. Exercise 26.12.5 Bingo
    80. Badge 26.12.6 CSS Badge
    81. 26.13 Web Development Quiz

    82. Unit Quiz 26.13.1 Web Development Quiz
    83. 26.14 Practice PT: Your First Website

    84. Notes 26.14.1 About the AP CSP Exam
    85. Challenge 26.14.2 Set Up Your codehs.me Website
    86. Challenge 26.14.3 Practice PT: Your First Website
    87. Badge 26.14.4 Website Badge
  27. Functions and Parameters Practice

    1. 27.1 Functions and Parameters Practice

    2. Challenge 27.1.1 Taking a Power
    3. Challenge 27.1.2 Dot Rectangle
    4. Challenge 27.1.3 Print the Date
    5. Challenge 27.1.4 Grades
    6. Challenge 27.1.5 Concentric Circles
    7. Challenge 27.1.6 Graphics Staircase
    8. Exercise 27.1.7 The Weekend
    9. Badge 27.1.8 Functions and Parameters Badge
  28. Extra Console Challenges

    1. 28.1 Prime Numbers

    2. Challenge 28.1.1 Prime Numbers
    3. Challenge 28.1.2 Find the Max
    4. Challenge 28.1.3 Prime Factorization
    5. Challenge 28.1.4 Fizz Buzz
    6. Challenge 28.1.5 Grid Printer
    7. Challenge 28.1.6 Number Sum
    8. Challenge 28.1.7 Hailstone Sequence
    9. Challenge 28.1.8 Pythagorean Triples
    10. Challenge 28.1.9 Digit Array
    11. Badge 28.1.10 Console Challenges Badge
    12. 28.2 Control Structures

    13. Exercise 28.2.1 Meal Planner
    14. Exercise 28.2.2 Better Password Prompt
  29. Animation and Games

    1. 29.1 Timers

    2. Video 29.1.1 Timers
    3. Check for Understanding 29.1.2 Timers Quiz
    4. Example 29.1.3 Moving Ball
    5. Example 29.1.4 Magic 8 Ball
    6. Exercise 29.1.5 Crazy Ball
    7. 29.2 Random Circles

    8. Video 29.2.1 Example: Random Circles
    9. Check for Understanding 29.2.2 Random Circles Quiz
    10. Example 29.2.3 Random Circles
    11. Example 29.2.4 Spinner Example
    12. Exercise 29.2.5 Growing Circle
    13. Exercise 29.2.6 Paint splatter
    14. 29.3 Random Ghosts

    15. Video 29.3.1 Example: Random Ghosts
    16. Check for Understanding 29.3.2 Random Ghosts Quiz
    17. Example 29.3.3 Random Ghosts
    18. Example 29.3.4 Random Fireworks
    19. Exercise 29.3.5 Circle Wall
    20. 29.4 Bouncing Ball

    21. Video 29.4.1 Example: Bouncing Ball
    22. Check for Understanding 29.4.2 Bouncing Ball Quiz
    23. Example 29.4.3 Bouncing Ball
    24. Exercise 29.4.4 Hotspot Ball
    25. Exercise 29.4.5 Trail
    26. 29.5 Mouse Events: Mouse Moved

    27. Video 29.5.1 Mouse Events: Mouse Moved
    28. Check for Understanding 29.5.2 Mouse Events: Mouse Moved Quiz
    29. Example 29.5.3 Simple Painting
    30. Example 29.5.4 Colorful Drag to Paint
    31. Exercise 29.5.5 Coordinates
    32. Exercise 29.5.6 Target
    33. 29.6 Drawing Lines

    34. Video 29.6.1 Example: Drawing Lines
    35. Check for Understanding 29.6.2 Drawing Lines Quiz
    36. Example 29.6.3 Drawing Lines
    37. Exercise 29.6.4 Leash
    38. 29.7 Crazy Ball Game

    39. Video 29.7.1 Crazy Ball Game 1
    40. Check for Understanding 29.7.2 Crazy Ball Game Quiz 1
    41. Example 29.7.3 Crazy Ball Game 1
    42. Video 29.7.4 Crazy Ball Game 2
    43. Check for Understanding 29.7.5 Crazy Ball Game Quiz 2
    44. Example 29.7.6 Crazy Ball Game 2
    45. Exercise 29.7.7 Drag and Drop
    46. Check for Understanding 29.7.8 Animation and Games Unit Quiz
    47. Badge 29.7.9 Animation Exercises Badge
  30. Project: Breakout

    1. 30.1 Breakout

    2. Challenge 30.1.1 Bricks
    3. Challenge 30.1.2 Ball and Paddle
    4. Challenge 30.1.3 Breakout
    5. Badge 30.1.4 Breakout Badge
  31. Practice PT: Steganography - Binary

    1. 31.1 Practice PT: Steganography

    2. Example 31.1.1 Secret Message Steganography
    3. Demo 31.1.2 Secret Image Steganography Demo
    4. Challenge 31.1.3 Secret Image Steganography
  32. Practice PT: The Effects of the Internet

    1. 32.1 The Effects of the Internet

    2. Free Response 32.1.1 Topic Brainstorm
    3. Free Response 32.1.2 Gathering Resources
    4. Presentation 32.1.3 Make Your Artifact
    5. Free Response 32.1.4 Written Responses
  33. Visualizing Music

    1. 33.1 Visualizing Music

    2. Video 33.1.1 Visualizing Music
    3. Example 33.1.2 Our First Visualization
    4. Example 33.1.3 Vertical Bars
    5. Example 33.1.4 Vertical Bars with Color
    6. Example 33.1.5 Changing Circles
    7. Exercise 33.1.6 Your First Visualization
    8. Exercise 33.1.7 Changing Colors
    9. Exercise 33.1.8 Custom Colors
    10. Challenge 33.1.9 Create Your Own Music Visualization
  34. Project: Tic Tac Toe

    1. 34.1 Tic Tac Toe

    2. Challenge 34.1.1 Tic Tac Toe: Part 1
    3. Challenge 34.1.2 Tic Tac Toe: Part 2
    4. Challenge 34.1.3 Tic Tac Toe: Full Game
    5. Badge 34.1.4 Tic Tac Toe Badge
  35. Project: Helicopter Game

    1. 35.1 Game Design: Helicopter

    2. Video 35.1.1 Introduction to Helicopter
    3. 35.2 Basics

    4. Video 35.2.1 Moving the Helicopter
    5. Exercise 35.2.2 Moving the Helicopter
    6. Video 35.2.3 Adding Obstacles
    7. Exercise 35.2.4 Adding Obstacles
    8. Video 35.2.5 Smoother Movement
    9. Exercise 35.2.6 Smoother Movement
    10. 35.3 Improvements

    11. Video 35.3.1 Colliding with Walls
    12. Exercise 35.3.2 Wall Collisions
    13. Video 35.3.3 Colliding with Obstacles
    14. Exercise 35.3.4 Obstacle Collisions
    15. Video 35.3.5 Adding Terrain
    16. Exercise 35.3.6 Adding Terrain
    17. Video 35.3.7 Moving the Terrain
    18. Exercise 35.3.8 Moving the Terrain
    19. 35.4 Polish

    20. Video 35.4.1 Helicopter Image and Points!
    21. Exercise 35.4.2 Image and Points
    22. Video 35.4.3 Dust
    23. Exercise 35.4.4 Dust
    24. Video 35.4.5 More Obstacles
    25. Exercise 35.4.6 More Obstacles
    26. Challenge 35.4.7 Helicopter Extensions
    27. Badge 35.4.8 Helicopter Badge
    28. 35.5 Intro to Computer Science Completed

    29. Badge 35.5.1 Intro to Computer Science Badge
  36. Data Structures Challenge Problems

    1. 36.1 Conway's Game of Life

    2. Exercise 36.1.1 Make The Grid
    3. Exercise 36.1.2 Find Life
    4. Exercise 36.1.3 Finish Up
    5. 36.2 Connect Four

    6. Exercise 36.2.1 Make The Board
    7. Exercise 36.2.2 Take Turns
    8. Exercise 36.2.3 Find the Winner
  37. More Basic Data Structures

    1. 37.1 Intro to Objects/Maps

    2. Video 37.1.1 Intro to Objects/Maps
    3. Check for Understanding 37.1.2 Intro to Objects / Maps Quiz
    4. Example 37.1.3 Phonebook
    5. Exercise 37.1.4 Sidekicks
    6. 37.2 Basics of Objects

    7. Video 37.2.1 Basics of Objects
    8. Check for Understanding 37.2.2 Basics of Objects Quiz
    9. Example 37.2.3 Object Literal Phonebook
    10. Example 37.2.4 Object Property Phonebook
    11. Example 37.2.5 Beware Dot Notation!
    12. Exercise 37.2.6 Address Book
    13. 37.3 Iterating Over an Object

    14. Video 37.3.1 Iterating Over An Object
    15. Check for Understanding 37.3.2 Iterating over an Object Quiz
    16. Example 37.3.3 Print Phonebook
    17. Exercise 37.3.4 Hogwarts
    18. 37.4 When Do I Use an Object?

    19. Video 37.4.1 When Do I Use An Object?
    20. Check for Understanding 37.4.2 When do I use an Object Quiz
    21. Example 37.4.3 Facebook Friend Lists
    22. Example 37.4.4 Does the Key Exist?
    23. Exercise 37.4.5 Text Messages
    24. 37.5 Intro to Sets

    25. Video 37.5.1 Intro to Sets
    26. Check for Understanding 37.5.2 Intro to Sets Quiz
    27. Example 37.5.3 Basic Sets
    28. Exercise 37.5.4 Vowels
    29. Exercise 37.5.5 Mutual Friends
    30. Exercise 37.5.6 Total Network of Friends
    31. 37.6 Intro to Grids

    32. Video 37.6.1 Intro to Grids
    33. Check for Understanding 37.6.2 Intro to Grids Quiz
    34. Example 37.6.3 Grid Basics
    35. 37.7 Looping Over a Grid

    36. Video 37.7.1 Looping Over a Grid
    37. Check for Understanding 37.7.2 Looping Over a Grid Quiz
    38. Example 37.7.3 Print Grid
    39. Exercise 37.7.4 Summing Grid
    40. 37.8 Grid Example: Get a Row

    41. Video 37.8.1 Grid Example: Get a Row
    42. Check for Understanding 37.8.2 Grid Example: Get a Row Quiz
    43. Example 37.8.3 Get a Row
    44. Exercise 37.8.4 Grid Diagonal
    45. 37.9 Data Structures Challenges

    46. Challenge 37.9.1 Watercolor Grid
    47. Unit Quiz 37.9.2 Data Structures Unit Quiz
  38. Computer Science Principles Pretest

    1. 38.1 Computer Science Principles Pretest

    2. Notes 38.1.1 About the Pretest
    3. Survey 38.1.2 Mindsets
    4. Quiz 38.1.3 Knowledge & Skills: Computer Science Principles
  39. Computer Science Principles Posttest

    1. 39.1 Computer Science Principles Posttest

    2. Notes 39.1.1 About the Posttest
    3. Survey 39.1.2 Mindsets
    4. Quiz 39.1.3 Computer Science Principles Knowledge & Skills
  40. Extra AP Pseudocode Practice

    1. 40.1 Extra AP Pseudocode Practice

    2. AP Practice 40.1.1 AP Practice: If/Else Statements
    3. AP Practice 40.1.2 AP Practice: Iteration
    4. AP Practice 40.1.3 AP Practice: Lists
  41. Additional Cybersecurity Modules

    1. 41.1 Cryptography

    2. Video 41.1.1 Cryptography
    3. Check for Understanding 41.1.2 Cryptography Quiz
    4. Video 41.1.3 Implementing Caesar's Cipher
    5. Check for Understanding 41.1.4 Implementing Caesar's Cipher Quiz
    6. Example 41.1.5 Encrypting with a Caesar Cipher
    7. Example 41.1.6 Cracking a Caesar Cipher
    8. Free Response 41.1.7 Reflection: Caesar Cipher
    9. Exercise 41.1.8 Guess the Passcode
  42. Practice PT: The Shopping List

    1. 42.1 Practice PT: The Shopping List

    2. Connection 42.1.1 Create PT Scoring Guidelines
    3. Challenge 42.1.2 Practice PT: The Shopping List
    4. Free Response 42.1.3 Reflection
  43. Practice PT: Testing 1, 2, 3 ...

    1. 43.1 Practice PT: Testing 1, 2, 3 ...

    2. Notes 43.1.1 Introduction
    3. Connection 43.1.2 Create Scoring Guidelines
    4. Exercise 43.1.3 Practice PT: Testing 1, 2, 3 ...
    5. Free Response 43.1.4 Reflection
  44. Updated Practice Create Performance Task Exercises

    1. 44.1 Practice PT: Pair-Programming Paint!

    2. Free Response 44.1.1 Reflection
    3. 44.2 Practice PT: Tell a Story

    4. Free Response 44.2.1 Reflection
    5. 44.3 Practice PT: Steganography

    6. Free Response 44.3.1 Reflection
    7. 44.4 Practice PT: Create an Image Filter!

    8. Free Response 44.4.1 Reflection
    9. 44.5 Practice PT: The Shopping List

    10. Free Response 44.5.1 Reflection
    11. 44.6 Practice PT: Testing 1, 2, 3...

    12. Free Response 44.6.1 Reflection
  45. Create Performance Task - Effective 2023-2024

    1. 45.1 Create Performance Task: Overview

    2. Notes 45.1.1 Create Performance Task: Overview
    3. Article 45.1.2 What is the Create Performance Task?
    4. Notes 45.1.3 Task Verbs Definitions
    5. Article 45.1.4 Component A: Program Code Requirements
    6. Free Response 45.1.5 Reflection: Program Code Requirements
    7. Article 45.1.6 Component B: Video Requirements
    8. Free Response 45.1.7 Reflection: Video Requirements
    9. Article 45.1.8 Component C: Personalized Project Reference Requirements
    10. Free Response 45.1.9 Reflection: Personalized Project Reference Requirements
    11. 45.2 Create Performance Task: Guidelines

    12. Notes 45.2.1 Create Performance Task: Guidelines
    13. Article 45.2.2 Academic Integrity and Plagiarism Policy
    14. Free Response 45.2.3 Reflection: Academic Integrity and Plagiarism Policy
    15. Article 45.2.4 Guidelines: Prior to Starting
    16. Free Response 45.2.5 Reflection: Prior to Starting
    17. Article 45.2.6 Guidelines: Once You Have Started
    18. Free Response 45.2.7 Reflection: Once You Have Started
    19. 45.3 Create Performance Task: Categories and Questions

    20. Notes 45.3.1 Create Performance Task: Categories and Questions
    21. Notes 45.3.2 Category 1: Program Design, Function, and Purpose
    22. Notes 45.3.3 Category 2: Algorithm Development
    23. Notes 45.3.4 Category 3: Errors and Testing
    24. Notes 45.3.5 Category 4: Data and Procedural Abstraction
    25. Article 45.3.6 Sample A CSP Performance Task [Python]
    26. Article 45.3.7 Sample A CSP Performance Task [JavaScript]
    27. Free Response 45.3.8 Reflection: Sample A CSP Performance Task
    28. Article 45.3.9 Sample B CSP Performance Task [Python]
    29. Article 45.3.10 Sample B CSP Performance Task [JavaScript]
    30. Free Response 45.3.11 Reflection: Sample B CSP Performance Task
    31. Article 45.3.12 Sample Roblox CSP Performance Task [Lua]
    32. Free Response 45.3.13 Reflection: Sample Roblox CSP Performance Task [Lua]
    33. 45.4 Planning and Pacing Your Project

    34. Notes 45.4.1 Create Performance Task: Pacing Your Project
    35. Notes 45.4.2 Collaborating on the Create Performance Task
    36. Notes 45.4.3 Generative AI: To Use, or Not To Use
    37. Free Response 45.4.4 Brainstorm Your Project
    38. Free Response 45.4.5 Practice Making a Screen Capture
    39. Free Response 45.4.6 Practice Making a Video Recording
    40. 45.5 Complete the Create Performance Task

    41. Connection 45.5.1 Create Performance Task Scoring Guidelines
    42. Challenge 45.5.2 Component A: Program Code [Python]
    43. Challenge 45.5.3 Component A: Program Code [JavaScript]
    44. Challenge 45.5.4 Component A: Program Code [Lua]
    45. Free Response 45.5.5 Component B: Video
    46. Free Response 45.5.6 Component C: Procedure Capture I
    47. Free Response 45.5.7 Component C: Procedure Capture II
    48. Free Response 45.5.8 Component C: Procedure List I
    49. Free Response 45.5.9 Component C: Procedure List II
    50. Free Response 45.5.10 Practice Written Responses
    51. Notes 45.5.11 Finalizing and Submitting