Please enable JavaScript to use CodeHS

AP Computer Science Principles in JavaScript - 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. Exercise 4.4.8 Meal Planner
    31. AP Practice 4.4.9 AP Practice: If/Else Statements
    32. Badge 4.4.10 Conditionals Badge
    33. 4.5 Key Events

    34. Video 4.5.1 Key Events
    35. Check for Understanding 4.5.2 Key Events Quiz
    36. Example 4.5.3 Keyboard Square
    37. Exercise 4.5.4 Growing Circle
    38. 4.6 For Loops in JavaScript

    39. Video 4.6.1 Basic For Loop
    40. Check for Understanding 4.6.2 For Loops Quiz
    41. Example 4.6.3 For Loop
    42. Exercise 4.6.4 Meme Text Generator
    43. Exercise 4.6.5 The Worm
    44. Exercise 4.6.6 Caterpillar
    45. 4.7 General For Loops

    46. Video 4.7.1 General For Loop
    47. Check for Understanding 4.7.2 General For Loop Quiz
    48. Example 4.7.3 Countdown
    49. Example 4.7.4 Count By Twos
    50. Exercise 4.7.5 Count By Sevens
    51. Exercise 4.7.6 Powers of Two
    52. 4.8 For Loop Practice

    53. Video 4.8.1 For Loop Examples
    54. Check for Understanding 4.8.2 For Loop Examples Quiz
    55. Example 4.8.3 For Loop Sum
    56. Exercise 4.8.4 Better Sum
    57. Exercise 4.8.5 Factorial
    58. Exercise 4.8.6 All Dice Values
    59. 4.9 Random Numbers

    60. Video 4.9.1 Random Numbers
    61. Check for Understanding 4.9.2 Random Numbers Quiz
    62. Example 4.9.3 Rolling a Die
    63. Example 4.9.4 Flipping a Coin
    64. Exercise 4.9.5 Lots of Dice
    65. Exercise 4.9.6 Random Color Square
    66. Survey 4.9.7 Mindsets
    67. 4.10 While Loops

    68. Video 4.10.1 While Loops
    69. Check for Understanding 4.10.2 While Loops Quiz
    70. Example 4.10.3 While Loop Countdown
    71. Exercise 4.10.4 Inventory
    72. Exercise 4.10.5 Fibonacci
    73. AP Practice 4.10.6 AP Practice: Iteration
    74. 4.11 Loop and a Half

    75. Video 4.11.1 Loop and a Half
    76. Check for Understanding 4.11.2 Loop and a Half Quiz
    77. Example 4.11.3 Adding Up Numbers
    78. Exercise 4.11.4 Snake Eyes
    79. Exercise 4.11.5 Better Password Prompt
    80. Badge 4.11.6 Looper Badge
    81. 4.12 Javascript Control Structures Quiz

    82. Unit Quiz 4.12.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. AP Practice 7.1.6 AP Practice: Lists
    8. 7.2 Indexing Into an Array

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

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

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

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

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

    51. Video 7.7.1 Removing an Element From an Array
    52. Check for Understanding 7.7.2 Removing an Element from an Array Quiz
    53. Example 7.7.3 Splice and Remove
    54. Exercise 7.7.4 Remove From Line
    55. AP Practice 7.7.5 AP Practice: List Procedures
    56. 7.8 Simulation

    57. Video 7.8.1 Simulation
    58. Example 7.8.2 Gravity Simulation
    59. Example 7.8.3 Conway's Game of Life
    60. Exercise 7.8.4 Simulating a Coin Flip
    61. Connection 7.8.5 Wolf Sheep Predation Simulation
    62. Badge 7.8.6 Data Structures Exercises Badge
    63. 7.9 Basic Data Structures Quiz

    64. Unit Quiz 7.9.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 Cryptography

    79. Video 8.10.1 Cryptography
    80. Check for Understanding 8.10.2 Cryptography Quiz
    81. Video 8.10.3 Implementing Caesar's Cipher
    82. Check for Understanding 8.10.4 Implementing Caesar's Cipher Quiz
    83. Example 8.10.5 Encrypting with a Caesar Cipher
    84. Example 8.10.6 Cracking a Caesar Cipher
    85. Free Response 8.10.7 Reflection: Caesar Cipher
    86. Exercise 8.10.8 Guess the Passcode
    87. 8.11 Digital Information Quiz

    88. Unit Quiz 8.11.1 Digital Information Quiz
  9. Practice PT: Steganography

    1. 9.1 Practice PT: Steganography

    2. Example 9.1.1 Secret Message Steganography
    3. Connection 9.1.2 Create PT Scoring Guidelines
    4. Demo 9.1.3 Secret Image Steganography Demo
    5. Challenge 9.1.4 Secret Image Steganography
  10. Practice PT: Create an Image Filter!

    1. 10.1 Practice PT: Create an Image Filter!

    2. Connection 10.1.1 Create PT Scoring Guidelines
    3. Challenge 10.1.2 Practice PT: Create an Image Filter!
    4. Free Response 10.1.3 Reflection
  11. The Internet

    1. 11.1 Welcome to the Internet

    2. Video 11.1.1 Welcome to the Internet
    3. Check for Understanding 11.1.2 Welcome to the Internet Quiz
    4. Free Response 11.1.3 Reflection: The Internet and You
    5. 11.2 Internet Hardware

    6. Video 11.2.1 Devices and Networks
    7. Video 11.2.2 Hardware of the Internet
    8. Check for Understanding 11.2.3 Internet Hardware Quiz
    9. Connection 11.2.4 The Internet is in the Ocean
    10. 11.3 Internet Addresses

    11. Video 11.3.1 Internet Addresses
    12. Check for Understanding 11.3.2 Internet Addresses Quiz
    13. Free Response 11.3.3 Free Response: The Need for Addresses
    14. Check for Understanding 11.3.4 4-bit Addresses
    15. Free Response 11.3.5 Free Response: IPv4 vs IPv6
    16. 11.4 Viewing Websites

    17. Video 11.4.1 Viewing Websites
    18. Check for Understanding 11.4.2 Viewing Websites Quiz
    19. Free Response 11.4.3 Free Response: Explaining a URL
    20. 11.5 DNS and Routing

    21. Video 11.5.1 DNS
    22. Check for Understanding 11.5.2 DNS Quiz
    23. Connection 11.5.3 How Does DNS Work?
    24. Free Response 11.5.4 Respond: How Does DNS Work?
    25. Badge 11.5.5 DNS Badge
    26. 11.6 Packets and Protocols

    27. Video 11.6.1 Packets and Protocols
    28. Check for Understanding 11.6.2 Packets and Protocols Quiz
    29. Resource 11.6.3 Passing Notes
    30. Connection 11.6.4 How the Internet Works
    31. Free Response 11.6.5 The Story of the Internet
    32. 11.7 Sequential, Parallel & Distributed Computing

    33. Video 11.7.1 Computer Processing Operations
    34. Check for Understanding 11.7.2 Computer Processing Operations Quiz
    35. Resource 11.7.3 Sequential vs. Parallel Activity
    36. Free Response 11.7.4 Free Response: Sequential vs. Parallel
    37. 11.8 Cybersecurity

    38. Video 11.8.1 Cybersecurity
    39. Check for Understanding 11.8.2 Cybersecurity Quiz
    40. Example 11.8.3 You Can Be Tracked!
    41. Connection 11.8.4 Website Cookies
    42. Connection 11.8.5 Password Strength
    43. Free Response 11.8.6 Reflection: Password Strength
    44. Example 11.8.7 Multifactor Authentication
    45. Free Response 11.8.8 Reflection: PII
    46. Example 11.8.9 Phishing Simulator
    47. Connection 11.8.10 Rogue Access Points
    48. Survey 11.8.11 Mindsets
    49. 11.9 The Impact of the Internet

    50. Video 11.9.1 The Impact of the Internet
    51. Check for Understanding 11.9.2 The Impact of the Internet Quiz
    52. Free Response 11.9.3 Reflection: Internet Impact
    53. Connection 11.9.4 Crucial Steps to Close the Digital Divide
    54. Free Response 11.9.5 Reflection: Closing the Digital Divide
    55. Connection 11.9.6 Pokemon Go: Unintended Effects
    56. Free Response 11.9.7 Reflection: Unintended Effects
    57. 11.10 Creative Credit & Copyright

    58. Video 11.10.1 Creative Credit and Copyright
    59. Check for Understanding 11.10.2 Creative Credit and Copyright
    60. Free Response 11.10.3 Cite!
    61. Connection 11.10.4 Exploring Creative Commons
    62. Free Response 11.10.5 Respond: Creative Commons
    63. Free Response 11.10.6 Task: Finding Images
    64. Free Response 11.10.7 Reflection: Why is Copyright Important?
    65. 11.11 The Internet Quiz

    66. Unit Quiz 11.11.1 The Internet Quiz
    67. Badge 11.11.2 The Internet Badge
  12. Project: The Effects of the Internet

    1. 12.1 The Effects of the Internet

    2. Free Response 12.1.1 Topic Brainstorm
    3. Free Response 12.1.2 Gathering Resources
    4. Presentation 12.1.3 Make Your Artifact
    5. Free Response 12.1.4 Written Responses
  13. Data

    1. 13.1 Getting Started with Data

    2. Video 13.1.1 Getting Started with Data
    3. Check for Understanding 13.1.2 Getting Started with Data Quiz
    4. Connection 13.1.3 What Do We Do With Data?
    5. Free Response 13.1.4 Reflection: Continuously Collecting Data
    6. 13.2 Visualizing and Interpreting Data

    7. Video 13.2.1 Visualizing Data
    8. Check for Understanding 13.2.2 Visualizing Data Quiz
    9. Notes 13.2.3 Exploring Data Visualizations
    10. Connection 13.2.4 US Recorded Music Revenue
    11. Connection 13.2.5 National Parks
    12. Connection 13.2.6 March Madness
    13. Connection 13.2.7 Captain Marvel
    14. Free Response 13.2.8 Respond: Visualizations
    15. Free Response 13.2.9 Free Response: Choosing a Visualization
    16. Check for Understanding 13.2.10 Visualizing & Interpreting Data Quiz
    17. 13.3 Data Collection & Limitations

    18. Video 13.3.1 Collecting Data
    19. Check for Understanding 13.3.2 Collecting Data Quiz
    20. Free Response 13.3.3 Reflection: Design a Survey
    21. Free Response 13.3.4 Reflection: Self-Driving Cars
    22. Check for Understanding 13.3.5 Data Collection Quiz
    23. Video 13.3.6 Data Limitations
    24. Check for Understanding 13.3.7 Interpreting Data Quiz
    25. Example 13.3.8 Line Graph
    26. Example 13.3.9 Bar Graph
    27. Example 13.3.10 Pie Chart
    28. Free Response 13.3.11 Reflection: Importance of Metadata
    29. 13.4 Data Quiz

    30. Unit Quiz 13.4.1 Data Quiz
  14. Project: Present a Data-Driven Insight

    1. 14.1 Present a Data-Driven Insight

    2. Free Response 14.1.1 Topic Brainstorm
    3. Free Response 14.1.2 Gathering Resources
    4. Presentation 14.1.3 Make a Visualization
    5. Free Response 14.1.4 Written Responses
    6. Free Response 14.1.5 Share Your Findings
  15. Project: The Impacts of Computing

    1. 15.1 The Impacts of Computing

    2. Free Response 15.1.1 Artifact Creation
    3. Free Response 15.1.2 Selecting Computing Innovations
    4. Free Response 15.1.3 Data as an Input and an Output
    5. Free Response 15.1.4 Data Privacy and Security
  16. Create Performance Task

    1. 16.1 Create Performance Task

    2. Connection 16.1.1 Create PT Scoring Guidelines
    3. Challenge 16.1.2 Create Performance Task
  17. AP Exam Review

    1. 17.1 Preparation

    2. Resource 17.1.1 AP Exam Reference Sheet
    3. 17.2 Practice AP Exam

    4. AP Practice 17.2.1 Practice AP Exam
  18. Creative Development

    1. 18.1 Intro to Design Thinking

    2. Video 18.1.1 Intro to Design Thinking
    3. Check for Understanding 18.1.2 Intro to Design Thinking
    4. Free Response 18.1.3 User Interface Scavenger Hunt
    5. Connection 18.1.4 Case Study: Helping Blind People See
    6. Free Response 18.1.5 Case Study Responses
    7. Demo 18.1.6 Tell a Story Demo
    8. Free Response 18.1.7 Brainstorming Project Ideas
    9. 18.2 Prototype

    10. Video 18.2.1 Prototype
    11. Check for Understanding 18.2.2 Prototype Quiz
    12. Connection 18.2.3 Wizard of Oz Prototyping
    13. Connection 18.2.4 Example Wizard of Oz Paper Prototype
    14. Free Response 18.2.5 Make Your Paper Prototypes!
    15. 18.3 Test

    16. Video 18.3.1 Test
    17. Check for Understanding 18.3.2 Testing Quiz
    18. Connection 18.3.3 Testing with Users
    19. Connection 18.3.4 Example: How to User Test
    20. Free Response 18.3.5 How to User Test Responses
    21. Connection 18.3.6 Example: How NOT to User Test
    22. Free Response 18.3.7 How NOT to User Test Responses
    23. Resource 18.3.8 How to Make Accessible Programs
    24. Free Response 18.3.9 Test Prototype 1
    25. Free Response 18.3.10 Test Prototype 2
    26. Free Response 18.3.11 Improve Your Prototype
    27. 18.4 Project Prep and Development

    28. Free Response 18.4.1 Online Collaboration Tools
    29. Free Response 18.4.2 Pseudocode
    30. Challenge 18.4.3 Write the Code!
    31. Presentation 18.4.4 Present your Project
    32. Survey 18.4.5 Mindsets
  19. Final

    1. 19.1 Final

    2. Final 19.1.1 Final Pt 1: Multiple Choice
  20. Midterm

    1. 20.1 Midterm

    2. Midterm 20.1.1 Midterm Pt 1: Multiple Choice
  21. Extra Karel Practice

    1. 21.1 Extra Karel Practice

    2. Challenge 21.1.1 Functions Practice: K For Karel
    3. Challenge 21.1.2 Functions Practice: Christmas Karel
    4. Challenge 21.1.3 Functions Practice: X Marks the Spot
    5. Challenge 21.1.4 While Loop Practice: Blackout
    6. Challenge 21.1.5 While Loop Practice: Move To Top
    7. Challenge 21.1.6 Functions and While Loop Practice: Opposite Corner
    8. Challenge 21.1.7 While Loop Practice: Checkered Row
    9. Challenge 21.1.8 For Loop Practice: Tall Hurdles
    10. Challenge 21.1.9 Functions and While Loop Practice: Row and Back
    11. Challenge 21.1.10 Functions and For Loop Practice: Opposite Squares
    12. Challenge 21.1.11 Stairway To Heaven
    13. Badge 21.1.12 Karel Practice Badge
  22. Extra Karel Puzzles

    1. 22.1 Extra Karel Puzzles

    2. Challenge 22.1.1 Midpoint Karel
    3. Challenge 22.1.2 Target Karel
    4. Challenge 22.1.3 The Winding Yellow Road
    5. Challenge 22.1.4 Super Random Hurdles
    6. Challenge 22.1.5 Copy
    7. Challenge 22.1.6 Multiply
    8. Challenge 22.1.7 Fibonacci Karel
    9. Challenge 22.1.8 Comparison Karel
    10. Challenge 22.1.9 Swap
    11. Challenge 22.1.10 Sorting Karel
    12. Badge 22.1.11 Karel Puzzles Badge
  23. Karel Challenges

    1. 23.1 Challenge Problems

    2. Challenge 23.1.1 Fetch
    3. Challenge 23.1.2 Racing Karel
    4. Challenge 23.1.3 Tower Builder
    5. Challenge 23.1.4 Super Cleanup Karel
    6. Challenge 23.1.5 Double Tennis Balls
    7. Unit Quiz 23.1.6 Karel Unit Test
    8. Badge 23.1.7 Karel Challenges Badge
  24. Web Development

    1. 24.1 Introduction to HTML

    2. Video 24.1.1 Introduction to HTML
    3. Check for Understanding 24.1.2 Introduction to HTML Quiz
    4. Example 24.1.3 Our First HTML Page
    5. Exercise 24.1.4 Say Hello!
    6. 24.2 Structure of an HTML Page

    7. Video 24.2.1 Structure of an HTML Page
    8. Check for Understanding 24.2.2 Structure of an HTML Page Quiz
    9. Example 24.2.3 HTML Template
    10. Example 24.2.4 Hello World Page
    11. Exercise 24.2.5 The <title> Tag
    12. Exercise 24.2.6 Your First HTML Page
    13. Badge 24.2.7 Structure Badge
    14. 24.3 Formatting Text

    15. Video 24.3.1 Formatting Text
    16. Check for Understanding 24.3.2 Formatting Text Quiz
    17. Example 24.3.3 Dictionary
    18. Exercise 24.3.4 That's Bold
    19. Exercise 24.3.5 Artificial Intelligence
    20. Exercise 24.3.6 State Capitals
    21. 24.4 Links

    22. Video 24.4.1 Links
    23. Check for Understanding 24.4.2 Links Quiz
    24. Example 24.4.3 The <a> Tag
    25. Exercise 24.4.4 Simple Link
    26. Exercise 24.4.5 My Favorite Websites
    27. 24.5 Images

    28. Video 24.5.1 Images
    29. Check for Understanding 24.5.2 Images Quiz
    30. Example 24.5.3 The <img> Tag
    31. Example 24.5.4 Building the CodeHS Homepage
    32. Exercise 24.5.5 Collage on a Theme
    33. Exercise 24.5.6 Linking an Image
    34. Exercise 24.5.7 Personal Library
    35. Badge 24.5.8 Images Badge
    36. 24.6 HTML Lists

    37. Video 24.6.1 HTML Lists
    38. Check for Understanding 24.6.2 HTML Lists Quiz
    39. Example 24.6.3 Grocery Shopping
    40. Exercise 24.6.4 Favorite Things
    41. Exercise 24.6.5 To-Do List
    42. Exercise 24.6.6 List Article
    43. 24.7 HTML Tables

    44. Video 24.7.1 HTML Tables
    45. Check for Understanding 24.7.2 HTML Tables Quiz
    46. Example 24.7.3 Address Book
    47. Exercise 24.7.4 Favorite Songs
    48. Exercise 24.7.5 Calendar
    49. 24.8 HTML Styling

    50. Video 24.8.1 HTML Styling
    51. Check for Understanding 24.8.2 HTML Styling Quiz
    52. Example 24.8.3 Stylish Address Book
    53. Exercise 24.8.4 Background Colors
    54. Exercise 24.8.5 Style Your To-Do List
    55. 24.9 Introduction to CSS

    56. Video 24.9.1 Introduction to CSS
    57. Check for Understanding 24.9.2 Introduction to CSS Quiz
    58. Example 24.9.3 Styling Your H1s
    59. Exercise 24.9.4 First Style with CSS
    60. Exercise 24.9.5 List Styling
    61. 24.10 CSS Select by Tag

    62. Video 24.10.1 CSS Select by Tag
    63. Check for Understanding 24.10.2 CSS Select by Tag Quiz
    64. Example 24.10.3 Rainbow
    65. Example 24.10.4 Dog Styling
    66. Exercise 24.10.5 Restaurant Menu
    67. Exercise 24.10.6 Put Karel Together
    68. 24.11 CSS Select by Class

    69. Video 24.11.1 CSS Select by Class
    70. Check for Understanding 24.11.2 CSS Select by Class Quiz
    71. Example 24.11.3 Simple Checkerboard
    72. Exercise 24.11.4 Tic Tac Toe
    73. Exercise 24.11.5 Music Library
    74. 24.12 CSS Select by ID

    75. Video 24.12.1 CSS Select by ID
    76. Check for Understanding 24.12.2 CSS Select by ID Quiz
    77. Example 24.12.3 Logo
    78. Exercise 24.12.4 Favorite Dog
    79. Exercise 24.12.5 Bingo
    80. Badge 24.12.6 CSS Badge
    81. 24.13 Web Development Quiz

    82. Unit Quiz 24.13.1 Web Development Quiz
    83. 24.14 Practice PT: Your First Website

    84. Notes 24.14.1 About the AP CSP Exam
    85. Challenge 24.14.2 Set Up Your codehs.me Website
    86. Challenge 24.14.3 Practice PT: Your First Website
    87. Badge 24.14.4 Website Badge
  25. Functions and Parameters Practice

    1. 25.1 Functions and Parameters Practice

    2. Challenge 25.1.1 Taking a Power
    3. Challenge 25.1.2 Dot Rectangle
    4. Challenge 25.1.3 Print the Date
    5. Challenge 25.1.4 Grades
    6. Challenge 25.1.5 Concentric Circles
    7. Challenge 25.1.6 Graphics Staircase
    8. Exercise 25.1.7 The Weekend
    9. Badge 25.1.8 Functions and Parameters Badge
  26. Extra Console Challenges

    1. 26.1 Prime Numbers

    2. Challenge 26.1.1 Prime Numbers
    3. Challenge 26.1.2 Find the Max
    4. Challenge 26.1.3 Prime Factorization
    5. Challenge 26.1.4 Fizz Buzz
    6. Challenge 26.1.5 Grid Printer
    7. Challenge 26.1.6 Number Sum
    8. Challenge 26.1.7 Hailstone Sequence
    9. Challenge 26.1.8 Pythagorean Triples
    10. Challenge 26.1.9 Digit Array
    11. Badge 26.1.10 Console Challenges Badge
  27. Animation and Games

    1. 27.1 Timers

    2. Video 27.1.1 Timers
    3. Check for Understanding 27.1.2 Timers Quiz
    4. Example 27.1.3 Moving Ball
    5. Example 27.1.4 Magic 8 Ball
    6. Exercise 27.1.5 Crazy Ball
    7. 27.2 Random Circles

    8. Video 27.2.1 Example: Random Circles
    9. Check for Understanding 27.2.2 Random Circles Quiz
    10. Example 27.2.3 Random Circles
    11. Example 27.2.4 Spinner Example
    12. Exercise 27.2.5 Growing Circle
    13. Exercise 27.2.6 Paint splatter
    14. 27.3 Random Ghosts

    15. Video 27.3.1 Example: Random Ghosts
    16. Check for Understanding 27.3.2 Random Ghosts Quiz
    17. Example 27.3.3 Random Ghosts
    18. Example 27.3.4 Random Fireworks
    19. Exercise 27.3.5 Circle Wall
    20. 27.4 Bouncing Ball

    21. Video 27.4.1 Example: Bouncing Ball
    22. Check for Understanding 27.4.2 Bouncing Ball Quiz
    23. Example 27.4.3 Bouncing Ball
    24. Exercise 27.4.4 Hotspot Ball
    25. Exercise 27.4.5 Trail
    26. 27.5 Mouse Events: Mouse Moved

    27. Video 27.5.1 Mouse Events: Mouse Moved
    28. Check for Understanding 27.5.2 Mouse Events: Mouse Moved Quiz
    29. Example 27.5.3 Simple Painting
    30. Example 27.5.4 Colorful Drag to Paint
    31. Exercise 27.5.5 Coordinates
    32. Exercise 27.5.6 Target
    33. 27.6 Drawing Lines

    34. Video 27.6.1 Example: Drawing Lines
    35. Check for Understanding 27.6.2 Drawing Lines Quiz
    36. Example 27.6.3 Drawing Lines
    37. Exercise 27.6.4 Leash
    38. 27.7 Crazy Ball Game

    39. Video 27.7.1 Crazy Ball Game 1
    40. Check for Understanding 27.7.2 Crazy Ball Game Quiz 1
    41. Example 27.7.3 Crazy Ball Game 1
    42. Video 27.7.4 Crazy Ball Game 2
    43. Check for Understanding 27.7.5 Crazy Ball Game Quiz 2
    44. Example 27.7.6 Crazy Ball Game 2
    45. Exercise 27.7.7 Drag and Drop
    46. Check for Understanding 27.7.8 Animation and Games Unit Quiz
    47. Badge 27.7.9 Animation Exercises Badge
  28. Project: Breakout

    1. 28.1 Breakout

    2. Challenge 28.1.1 Bricks
    3. Challenge 28.1.2 Ball and Paddle
    4. Challenge 28.1.3 Breakout
    5. Badge 28.1.4 Breakout Badge
  29. Data Structures Challenge Problems

    1. 29.1 Conway's Game of Life

    2. Exercise 29.1.1 Make The Grid
    3. Exercise 29.1.2 Find Life
    4. Exercise 29.1.3 Finish Up
    5. 29.2 Connect Four

    6. Exercise 29.2.1 Make The Board
    7. Exercise 29.2.2 Take Turns
    8. Exercise 29.2.3 Find the Winner
  30. Visualizing Music

    1. 30.1 Visualizing Music

    2. Video 30.1.1 Visualizing Music
    3. Example 30.1.2 Our First Visualization
    4. Example 30.1.3 Vertical Bars
    5. Example 30.1.4 Vertical Bars with Color
    6. Example 30.1.5 Changing Circles
    7. Exercise 30.1.6 Your First Visualization
    8. Exercise 30.1.7 Changing Colors
    9. Exercise 30.1.8 Custom Colors
    10. Challenge 30.1.9 Create Your Own Music Visualization
  31. Project: Tic Tac Toe

    1. 31.1 Tic Tac Toe

    2. Challenge 31.1.1 Tic Tac Toe: Part 1
    3. Challenge 31.1.2 Tic Tac Toe: Part 2
    4. Challenge 31.1.3 Tic Tac Toe: Full Game
    5. Badge 31.1.4 Tic Tac Toe Badge
  32. Project: Helicopter Game

    1. 32.1 Game Design: Helicopter

    2. Video 32.1.1 Introduction to Helicopter
    3. 32.2 Basics

    4. Video 32.2.1 Moving the Helicopter
    5. Exercise 32.2.2 Moving the Helicopter
    6. Video 32.2.3 Adding Obstacles
    7. Exercise 32.2.4 Adding Obstacles
    8. Video 32.2.5 Smoother Movement
    9. Exercise 32.2.6 Smoother Movement
    10. 32.3 Improvements

    11. Video 32.3.1 Colliding with Walls
    12. Exercise 32.3.2 Wall Collisions
    13. Video 32.3.3 Colliding with Obstacles
    14. Exercise 32.3.4 Obstacle Collisions
    15. Video 32.3.5 Adding Terrain
    16. Exercise 32.3.6 Adding Terrain
    17. Video 32.3.7 Moving the Terrain
    18. Exercise 32.3.8 Moving the Terrain
    19. 32.4 Polish

    20. Video 32.4.1 Helicopter Image and Points!
    21. Exercise 32.4.2 Image and Points
    22. Video 32.4.3 Dust
    23. Exercise 32.4.4 Dust
    24. Video 32.4.5 More Obstacles
    25. Exercise 32.4.6 More Obstacles
    26. Challenge 32.4.7 Helicopter Extensions
    27. Badge 32.4.8 Helicopter Badge
    28. 32.5 Intro to Computer Science Completed

    29. Badge 32.5.1 Intro to Computer Science Badge
  33. More Basic Data Structures

    1. 33.1 Intro to Objects/Maps

    2. Video 33.1.1 Intro to Objects/Maps
    3. Check for Understanding 33.1.2 Intro to Objects / Maps Quiz
    4. Example 33.1.3 Phonebook
    5. Exercise 33.1.4 Sidekicks
    6. 33.2 Basics of Objects

    7. Video 33.2.1 Basics of Objects
    8. Check for Understanding 33.2.2 Basics of Objects Quiz
    9. Example 33.2.3 Object Literal Phonebook
    10. Example 33.2.4 Object Property Phonebook
    11. Example 33.2.5 Beware Dot Notation!
    12. Exercise 33.2.6 Address Book
    13. 33.3 Iterating Over an Object

    14. Video 33.3.1 Iterating Over An Object
    15. Check for Understanding 33.3.2 Iterating over an Object Quiz
    16. Example 33.3.3 Print Phonebook
    17. Exercise 33.3.4 Hogwarts
    18. 33.4 When Do I Use an Object?

    19. Video 33.4.1 When Do I Use An Object?
    20. Check for Understanding 33.4.2 When do I use an Object Quiz
    21. Example 33.4.3 Facebook Friend Lists
    22. Example 33.4.4 Does the Key Exist?
    23. Exercise 33.4.5 Text Messages
    24. 33.5 Intro to Sets

    25. Video 33.5.1 Intro to Sets
    26. Check for Understanding 33.5.2 Intro to Sets Quiz
    27. Example 33.5.3 Basic Sets
    28. Exercise 33.5.4 Vowels
    29. Exercise 33.5.5 Mutual Friends
    30. Exercise 33.5.6 Total Network of Friends
    31. 33.6 Intro to Grids

    32. Video 33.6.1 Intro to Grids
    33. Check for Understanding 33.6.2 Intro to Grids Quiz
    34. Example 33.6.3 Grid Basics
    35. 33.7 Looping Over a Grid

    36. Video 33.7.1 Looping Over a Grid
    37. Check for Understanding 33.7.2 Looping Over a Grid Quiz
    38. Example 33.7.3 Print Grid
    39. Exercise 33.7.4 Summing Grid
    40. 33.8 Grid Example: Get a Row

    41. Video 33.8.1 Grid Example: Get a Row
    42. Check for Understanding 33.8.2 Grid Example: Get a Row Quiz
    43. Example 33.8.3 Get a Row
    44. Exercise 33.8.4 Grid Diagonal
    45. 33.9 Data Structures Challenges

    46. Challenge 33.9.1 Watercolor Grid
    47. Unit Quiz 33.9.2 Data Structures Unit Quiz
  34. Computer Science Principles Pretest

    1. 34.1 Computer Science Principles Pretest

    2. Notes 34.1.1 About the Pretest
    3. Survey 34.1.2 Mindsets
    4. Quiz 34.1.3 Knowledge & Skills: Computer Science Principles
  35. Computer Science Principles Posttest

    1. 35.1 Computer Science Principles Posttest

    2. Notes 35.1.1 About the Posttest
    3. Survey 35.1.2 Mindsets
    4. Quiz 35.1.3 Computer Science Principles Knowledge & Skills
  36. Practice PT: The Shopping List

    1. 36.1 Practice PT: The Shopping List

    2. Connection 36.1.1 Create PT Scoring Guidelines
    3. Notes 36.1.2 String Operations
    4. Challenge 36.1.3 Practice PT: The Shopping List
    5. Free Response 36.1.4 Reflection
  37. Practice PT: Testing 1, 2, 3 ...

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

    2. Notes 37.1.1 Introduction
    3. Connection 37.1.2 Create Scoring Guidelines
    4. Notes 37.1.3 String Operations
    5. Exercise 37.1.4 Practice PT: Testing 1, 2, 3 ...
    6. Free Response 37.1.5 Reflection
  38. Updated Practice Create Performance Task Exercises

    1. 38.1 Practice PT: Pair-Programming Paint!

    2. Free Response 38.1.1 Reflection
    3. 38.2 Practice PT: Tell a Story

    4. Free Response 38.2.1 Reflection
    5. 38.3 Practice PT: Steganography

    6. Free Response 38.3.1 Reflection
    7. 38.4 Practice PT: Create an Image Filter!

    8. Free Response 38.4.1 Reflection
    9. 38.5 Practice PT: The Shopping List

    10. Free Response 38.5.1 Reflection
    11. 38.6 Practice PT: Testing 1, 2, 3...

    12. Free Response 38.6.1 Reflection
  39. Create Performance Task - Effective 2023-2024

    1. 39.1 Create Performance Task: Overview

    2. Notes 39.1.1 Create Performance Task: Overview
    3. Article 39.1.2 What is the Create Performance Task?
    4. Notes 39.1.3 Task Verbs Definitions
    5. Article 39.1.4 Component A: Program Code Requirements
    6. Free Response 39.1.5 Reflection: Program Code Requirements
    7. Article 39.1.6 Component B: Video Requirements
    8. Free Response 39.1.7 Reflection: Video Requirements
    9. Article 39.1.8 Component C: Personalized Project Reference Requirements
    10. Free Response 39.1.9 Reflection: Personalized Project Reference Requirements
    11. 39.2 Create Performance Task: Guidelines

    12. Notes 39.2.1 Create Performance Task: Guidelines
    13. Article 39.2.2 Academic Integrity and Plagiarism Policy
    14. Free Response 39.2.3 Reflection: Academic Integrity and Plagiarism Policy
    15. Article 39.2.4 Guidelines: Prior to Starting
    16. Free Response 39.2.5 Reflection: Prior to Starting
    17. Article 39.2.6 Guidelines: Once You Have Started
    18. Free Response 39.2.7 Reflection: Once You Have Started
    19. 39.3 Create Performance Task: Categories and Questions

    20. Notes 39.3.1 Create Performance Task: Categories and Questions
    21. Notes 39.3.2 Category 1: Program Design, Function, and Purpose
    22. Notes 39.3.3 Category 2: Algorithm Development
    23. Notes 39.3.4 Category 3: Errors and Testing
    24. Notes 39.3.5 Category 4: Data and Procedural Abstraction
    25. Article 39.3.6 Sample A CSP Performance Task [Python]
    26. Article 39.3.7 Sample A CSP Performance Task [JavaScript]
    27. Free Response 39.3.8 Reflection: Sample A CSP Performance Task
    28. Article 39.3.9 Sample B CSP Performance Task [Python]
    29. Article 39.3.10 Sample B CSP Performance Task [JavaScript]
    30. Free Response 39.3.11 Reflection: Sample B CSP Performance Task
    31. Article 39.3.12 Sample Roblox CSP Performance Task [Lua]
    32. Free Response 39.3.13 Reflection: Sample Roblox CSP Performance Task [Lua]
    33. 39.4 Planning and Pacing Your Project

    34. Notes 39.4.1 Create Performance Task: Pacing Your Project
    35. Notes 39.4.2 Collaborating on the Create Performance Task
    36. Notes 39.4.3 Generative AI: To Use, or Not To Use
    37. Free Response 39.4.4 Brainstorm Your Project
    38. Free Response 39.4.5 Practice Making a Screen Capture
    39. Free Response 39.4.6 Practice Making a Video Recording
    40. 39.5 Complete the Create Performance Task

    41. Connection 39.5.1 Create Performance Task Scoring Guidelines
    42. Challenge 39.5.2 Component A: Program Code [Python]
    43. Challenge 39.5.3 Component A: Program Code [JavaScript]
    44. Challenge 39.5.4 Component A: Program Code [Lua]
    45. Free Response 39.5.5 Component B: Video
    46. Free Response 39.5.6 Component C: Procedure Capture I
    47. Free Response 39.5.7 Component C: Procedure Capture II
    48. Free Response 39.5.8 Component C: Procedure List I
    49. Free Response 39.5.9 Component C: Procedure List II
    50. Free Response 39.5.10 Practice Written Responses
    51. Notes 39.5.11 Finalizing and Submitting