Please enable JavaScript to use CodeHS

Introduction to Computer Science in JavaScript (Corgi) - Outline

  1. Programming with Karel

    1. 1.1 Introduction to Programming With Karel

    2. Video 1.1.1 Introduction to Programming With Karel
    3. Check for Understanding 1.1.2 Karel Commands Quiz
    4. Example 1.1.3 Our First Karel Program
    5. Exercise 1.1.4 Your First Karel Program
    6. Exercise 1.1.5 Short Stack
    7. 1.2 More About Karel

    8. Video 1.2.1 More About Karel
    9. Check for Understanding 1.2.2 More Basic Karel Quiz
    10. Example 1.2.3 Tennis Ball Square
    11. Exercise 1.2.4 Make a Tower
    12. Exercise 1.2.5 Pyramid of Karel
    13. 1.3 Karel Can't Turn Right

    14. Video 1.3.1 Karel Can't Turn Right
    15. Check for Understanding 1.3.2 Karel Can't Turn Right Quiz
    16. Example 1.3.3 Tower and Turn Right
    17. Exercise 1.3.4 Slide Karel
    18. Exercise 1.3.5 Fireman Karel
    19. Badge 1.3.6 Karel Turns Right Badge
    20. 1.4 Functions in Karel

    21. Video 1.4.1 Functions in Karel
    22. Check for Understanding 1.4.2 Functions in Karel Quiz
    23. Example 1.4.3 Turn Around
    24. Exercise 1.4.4 Pancakes
    25. Exercise 1.4.5 Mario Karel
    26. 1.5 The Main Function

    27. Video 1.5.1 The Main Function
    28. Check for Understanding 1.5.2 The Main Function Quiz
    29. Example 1.5.3 Tower with Main Function
    30. Exercise 1.5.4 Pancakes with Main
    31. 1.6 Top Down Design and Decomposition in Karel

    32. Video 1.6.1 Top Down Design and Decomposition
    33. Check for Understanding 1.6.2 Top Down Design and Decomposition Quiz
    34. Video 1.6.3 Top Down Design and Decomposition in Karel
    35. Example 1.6.4 Hurdle Karel
    36. Exercise 1.6.5 The Two Towers
    37. 1.7 Commenting Your Code

    38. Video 1.7.1 Commenting Your Code
    39. Check for Understanding 1.7.2 Commenting Your Code Quiz
    40. Example 1.7.3 Hurdle Karel
    41. Exercise 1.7.4 The Two Towers + Comments
    42. 1.8 Super Karel

    43. Video 1.8.1 Super Karel
    44. Check for Understanding 1.8.2 Super Karel Quiz
    45. Example 1.8.3 Hurdle Karel (with SuperKarel)
    46. Exercise 1.8.4 The Two Towers + SuperKarel
    47. Badge 1.8.5 Super Karel Badge
    48. 1.9 For Loops

    49. Video 1.9.1 For Loops
    50. Check for Understanding 1.9.2 For Loops Quiz
    51. Example 1.9.3 Repeated Move
    52. Example 1.9.4 Put Down Tennis Balls
    53. Exercise 1.9.5 Take 'em All
    54. Exercise 1.9.6 Dizzy Karel
    55. Exercise 1.9.7 Ball in Each Corner
    56. Exercise 1.9.8 Lots of Hurdles
    57. 1.10 If Statements and Conditionals

    58. Video 1.10.1 If Statements and Conditionals
    59. Check for Understanding 1.10.2 If Statements and Conditionals Quiz
    60. Example 1.10.3 If Statements and Conditionals
    61. Example 1.10.4 Safe Take Ball
    62. Exercise 1.10.5 Is There a Ball?
    63. Exercise 1.10.6 Don't Crash!
    64. 1.11 If/Else Statements

    65. Video 1.11.1 If/Else Statements
    66. Check for Understanding 1.11.2 If/Else Statements Quiz
    67. Example 1.11.3 If/Else Statements
    68. Example 1.11.4 Opposite Day
    69. Exercise 1.11.5 Right Side Up
    70. Exercise 1.11.6 Right vs. Left Square
    71. Badge 1.11.7 Conditional Karel Badge
    72. 1.12 While Loops

    73. Video 1.12.1 While Loops
    74. Check for Understanding 1.12.2 While Loops Quiz
    75. Example 1.12.3 Move to Wall
    76. Exercise 1.12.4 Follow The Yellow Ball Road
    77. Exercise 1.12.5 Lay Row of Tennis Balls
    78. Exercise 1.12.6 Big Tower
    79. 1.13 How to Indent Your Code

    80. Video 1.13.1 How to Indent Your Code
    81. Check for Understanding 1.13.2 How to Indent Your Code Quiz
    82. Example 1.13.3 Dance and Clean Karel
    83. Exercise 1.13.4 Diagonal
    84. Exercise 1.13.5 Staircase
    85. Badge 1.13.6 Karel Exercises Badge
    86. 1.14 Control Structures Example

    87. Video 1.14.1 Control Structures Example
    88. Check for Understanding 1.14.2 Control Structures Example Quiz
    89. Example 1.14.3 Cleanup Karel
    90. Exercise 1.14.4 Random Hurdles
    91. 1.15 More Karel Examples and Testing

    92. Video 1.15.1 More Karel Examples and Testing
    93. Example 1.15.2 Move Tennis Ball Stack
    94. Video 1.15.3 Live Coding: Climbing Karel
    95. Example 1.15.4 Climbing Karel
    96. Check for Understanding 1.15.5 Quiz: Which Control Structure?
    97. Exercise 1.15.6 Opposite Corner
    98. 1.16 Programming with Karel Quiz

    99. Unit Quiz 1.16.1 Programming with Karel Quiz
  2. Karel Challenges

    1. 2.1 Challenge Problems

    2. Challenge 2.1.1 Fetch
    3. Challenge 2.1.2 Racing Karel
    4. Challenge 2.1.3 Tower Builder
    5. Challenge 2.1.4 Super Cleanup Karel
    6. Challenge 2.1.5 Double Tennis Balls
    7. Badge 2.1.6 Karel Challenges Badge
  3. JavaScript Basics

    1. 3.1 Hello World

    2. Video 3.1.1 Hello World
    3. Check for Understanding 3.1.2 Hello World Quiz
    4. Example 3.1.3 Hello World
    5. Exercise 3.1.4 Your Name and Hobby
    6. Exercise 3.1.5 ASCII Animals
    7. 3.2 Variables

    8. Video 3.2.1 Variables
    9. Video 3.2.2 Live Coding: Variables
    10. Check for Understanding 3.2.3 Variables Quiz
    11. Example 3.2.4 Basic Variables
    12. Exercise 3.2.5 Daily Activities
    13. Debugging 3.2.6 Debugging Variables
    14. 3.3 User Input

    15. Video 3.3.1 User Input
    16. Check for Understanding 3.3.2 User Input Quiz
    17. Example 3.3.3 Basic User Input
    18. Exercise 3.3.4 Dinner Plans
    19. Exercise 3.3.5 Mad Lib
    20. Badge 3.3.6 User Input Badge
    21. 3.4 Basic Math

    22. Video 3.4.1 Basic Math
    23. Check for Understanding 3.4.2 Basic Math Quiz
    24. Example 3.4.3 Simple Calculator
    25. Example 3.4.4 Dollars to Pounds
    26. Example 3.4.5 Dividing Up Groups
    27. Exercise 3.4.6 T-Shirt Shop
    28. Exercise 3.4.7 Running Speed
    29. 3.5 Collaborative Programming

    30. Video 3.5.1 Pair-Programming
    31. Check for Understanding 3.5.2 Pair-Programming
    32. Connection 3.5.3 Why Practice Pair-Programming?
    33. Free Response 3.5.4 Pair-Programming Reflection
    34. 3.6 Random Numbers

    35. Video 3.6.1 Random Numbers
    36. Check for Understanding 3.6.2 Random Numbers Quiz
    37. Example 3.6.3 Rolling a Die
    38. Exercise 3.6.4 Treasure Chest Loot
    39. Exercise 3.6.5 Multiplication Practice
    40. Badge 3.6.6 Randomizer Badge
    41. 3.7 Basic Functions

    42. Video 3.7.1 Basic Functions
    43. Notes 3.7.2 Variables in Functions
    44. Quiz 3.7.3 Basic Functions Quiz
    45. Example 3.7.4 Function Flow
    46. Exercise 3.7.5 Digital Business Card
    47. Exercise 3.7.6 ASCII Karel
    48. 3.8 JavaScript Basics Quiz

    49. Unit Quiz 3.8.1 JavaScript Basics Quiz
    50. Badge 3.8.2 JavaScript Basics Badge
  4. The Canvas and Graphics

    1. 4.1 Intro to the Canvas and Graphics

    2. Video 4.1.1 Intro to Canvas and Graphics
    3. Notes 4.1.2 Debug Mode for Positioning
    4. Video 4.1.3 Live Coding: Circle and Rectangle
    5. Connection 4.1.4 Canvas Coordinates
    6. Quiz 4.1.5 Canvas and Graphics Quiz
    7. Example 4.1.6 Creating a Circle
    8. Example 4.1.7 A Circle and a Rectangle
    9. Exercise 4.1.8 A Ball in a Box
    10. Exercise 4.1.9 Raise the Flag
    11. 4.2 More Graphics Objects

    12. Video 4.2.1 More Graphics Objects
    13. Video 4.2.2 Live Coding: More Graphics Objects
    14. Quiz 4.2.3 Graphics Objects Quiz
    15. Example 4.2.4 Cute Animals
    16. Example 4.2.5 Greetings, Earth!
    17. Exercise 4.2.6 Exploration: XY Plot
    18. Exercise 4.2.7 Create Your Meme
    19. Exercise 4.2.8 Saturday Mornings
    20. 4.3 Positioning Graphics Objects

    21. Video 4.3.1 Positioning Graphics Objects
    22. Quiz 4.3.2 Positioning Quiz
    23. Example 4.3.3 8 Ball
    24. Exercise 4.3.4 Color the Rainbow
    25. Challenge 4.3.5 Create Your Own Plant!
    26. 4.4 JavaScript Graphics Quiz

    27. Quiz 4.4.1 JavaScript Graphics Quiz
  5. Graphics Challenges

    1. 5.1 Graphics Challenges

    2. Challenge 5.1.1 Ghost
    3. Challenge 5.1.2 Fried Egg
    4. Challenge 5.1.3 Draw Something
  6. Control Structures

    1. 6.1 Booleans

    2. Video 6.1.1 Booleans
    3. Check for Understanding 6.1.2 Booleans Quiz
    4. Example 6.1.3 Boolean Exploration
    5. Exercise 6.1.4 Do You Have a Dog?
    6. Free Response 6.1.5 Booleans are Questions
    7. Exercise 6.1.6 Best Day Ever
    8. 6.2 If/Else Statements

    9. Video 6.2.1 If Statements
    10. Check for Understanding 6.2.2 If Statements Quiz
    11. Example 6.2.3 Are You Logged In?
    12. Exercise 6.2.4 Is It Raining?
    13. Exercise 6.2.5 Mood Playlist
    14. Badge 6.2.6 Conditionals Badge
    15. 6.3 Logical Operators

    16. Video 6.3.1 Logical Operators
    17. Check for Understanding 6.3.2 Logical Operators Quiz
    18. Example 6.3.3 Light Switch
    19. Example 6.3.4 Harry Potter
    20. Example 6.3.5 Weak Password
    21. Example 6.3.6 Logical Operators Game
    22. Exercise 6.3.7 Can You Graduate?
    23. Exercise 6.3.8 Switching Players
    24. Exercise 6.3.9 A Day of Decisions
    25. 6.4 Comparison Operators

    26. Video 6.4.1 Comparison Operators
    27. Check for Understanding 6.4.2 Comparison Operators Quiz
    28. Example 6.4.3 Great Names
    29. Example 6.4.4 Grade Range
    30. Example 6.4.5 Even and Odd
    31. Exercise 6.4.6 Rolling Dice
    32. Exercise 6.4.7 Teenagers
    33. Exercise 6.4.8 Rocket Launch Requirements
    34. Exercise 6.4.9 Trivia Game
    35. 6.5 Graphics and Conditionals

    36. Notes 6.5.1 Graphics and Conditionals
    37. Example 6.5.2 Circle or Rectangle?
    38. Exercise 6.5.3 Correct or Incorrect?
    39. Notes 6.5.4 Else If Statements
    40. Example 6.5.5 Conditional Circle Color
    41. Exercise 6.5.6 Odd or Even Shapes
    42. Quiz 6.5.7 Graphics and Conditionals Quiz
    43. Challenge 6.5.8 Interactive Modern Art
    44. 6.6 While Loops

    45. Video 6.6.1 While Loops
    46. Check for Understanding 6.6.2 While Loops Quiz
    47. Example 6.6.3 While Loop Countdown
    48. Debugging 6.6.4 Debugging: Best Name Ever
    49. Exercise 6.6.5 Level Up
    50. Exercise 6.6.6 Inventory
    51. 6.7 The Break Statement

    52. Video 6.7.1 The Break Statement
    53. Check for Understanding 6.7.2 The Break Statement Quiz
    54. Example 6.7.3 Adding Up Numbers
    55. Free Response 6.7.4 Break Statement Reflection
    56. Exercise 6.7.5 Snake Eyes
    57. Exercise 6.7.6 Better Password Prompt
    58. Exercise 6.7.7 Riddle Machine
    59. 6.8 While Loops and Graphics

    60. Notes 6.8.1 While Loops and Graphics
    61. Example 6.8.2 Lots of Circles
    62. Example 6.8.3 Corners on Corners
    63. Exercise 6.8.4 Concentric Circles
    64. Debugging 6.8.5 Debugging: Circle Positions
    65. Exercise 6.8.6 Growing Squares
    66. 6.9 For Loops

    67. Video 6.9.1 For Loops
    68. Example 6.9.2 For Loop Exploration
    69. Exercise 6.9.3 Chalkboard
    70. Example 6.9.4 Count By Twos
    71. Example 6.9.5 Eating Apples
    72. Debugging 6.9.6 Countdown by Sevens
    73. Check for Understanding 6.9.7 For Loops Quiz
    74. Exercise 6.9.8 Lives Left
    75. Example 6.9.9 For Loop Sum
    76. Exercise 6.9.10 Jukebox
    77. 6.10 For Loops and Graphics

    78. Notes 6.10.1 For Loops and Graphics
    79. Example 6.10.2 Lots of Circles Revisited
    80. Exercise 6.10.3 Exploration: Confetti
    81. Notes 6.10.4 Using i to Position Objects and Adjust Size
    82. Example 6.10.5 Horizontal Stripes #1: Using i to Adjust Position
    83. Example 6.10.6 Horizontal Stripes #2: Using i to Adjust Size
    84. Debugging 6.10.7 Debugging: Colorful Bullseye
    85. Exercise 6.10.8 Caterpillar
    86. Badge 6.10.9 Looper Badge
    87. 6.11 Javascript Control Structures Quiz

    88. Unit Quiz 6.11.1 JavaScript Control Structures Quiz
  7. Control Structures Challenges

    1. 7.1 Control Structures Challenges

    2. Challenge 7.1.1 Guessing Game
    3. Challenge 7.1.2 Landscape Generator
    4. Challenge 7.1.3 Exploring RGB Color Codes
  8. Functions

    1. 8.1 Parameters

    2. Video 8.1.1 Parameters
    3. Video 8.1.2 Live Coding: Parameters
    4. Quiz 8.1.3 Parameters Quiz
    5. Example 8.1.4 Greetings
    6. Example 8.1.5 Slope of a Line
    7. Example 8.1.6 Draw Lots of Circles!
    8. Exercise 8.1.7 Area of Triangle
    9. Exercise 8.1.8 Rainbow Revisited
    10. Exercise 8.1.9 Cityscape
    11. 8.2 Return Values

    12. Video 8.2.1 Return Values
    13. Quiz 8.2.2 Return Values Quiz
    14. Example 8.2.3 Mathematical Returns
    15. Example 8.2.4 Offscreen Graphics
    16. Exercise 8.2.5 Max
    17. Exercise 8.2.6 Overlapping Graphics
    18. Exercise 8.2.7 Is It Even?
    19. 8.3 Default Parameter Values

    20. Video 8.3.1 Default Parameter Values
    21. Quiz 8.3.2 Default Parameter Values Quiz
    22. Example 8.3.3 Default Printing
    23. Debugging 8.3.4 Farming International
    24. Exercise 8.3.5 Compound Interest
    25. Exercise 8.3.6 Default Face
    26. 8.4 Variable Scopes

    27. Video 8.4.1 Variable Scope
    28. Video 8.4.2 Live Coding: Variable Scope
    29. Quiz 8.4.3 Variable Scope Quiz
    30. Example 8.4.4 Scope of X
    31. Exercise 8.4.5 Exploration: Scope of Ball
    32. Free Response 8.4.6 Scope Reflection
    33. Challenge 8.4.7 Choose Wisely Game
    34. Badge 8.4.8 JavaScript Functions Badge
    35. 8.5 Functions Quiz

    36. Unit Quiz 8.5.1 Functions and Parameters Quiz
  9. Functions Challenges

    1. 9.1 Functions Challenges

    2. Challenge 9.1.1 Global Travel Assistant
    3. Challenge 9.1.2 Balloons
    4. Challenge 9.1.3 Ghost Invasion!
    5. Badge 9.1.4 Functions Challenges Badge
  10. Animation and Games

    1. 10.1 Timers

    2. Video 10.1.1 Timers
    3. Check for Understanding 10.1.2 Timers Quiz
    4. Example 10.1.3 Moving Ball
    5. Example 10.1.4 Magic 8 Ball
    6. Exercise 10.1.5 Crazy Ball
    7. Exercise 10.1.6 Paint Splatter
    8. Notes 10.1.7 Project: Evasion (Timers)
    9. Free Response 10.1.8 Project Info and Links
    10. 10.2 Stopping Timers

    11. Video 10.2.1 Stopping Timers
    12. Check for Understanding 10.2.2 Stop Timer Quiz
    13. Example 10.2.3 Random Circles
    14. Exercise 10.2.4 Growing Circle
    15. Exercise 10.2.5 Brick Wall
    16. Notes 10.2.6 Project: Evasion (Stop Timers)
    17. Badge 10.2.7 Animating Shapes Badge
    18. 10.3 Collisions

    19. Video 10.3.1 Collisions
    20. Video 10.3.2 Live Coding: Collisions
    21. Check for Understanding 10.3.3 Collisions Quiz
    22. Example 10.3.4 Bouncing Ball
    23. Exercise 10.3.5 Collision Simulation
    24. Exercise 10.3.6 Carnival Game
    25. Notes 10.3.7 Project: Evasion (Collisions)
    26. 10.4 Mouse Click Events

    27. Video 10.4.1 Mouse Click Events
    28. Check for Understanding 10.4.2 Mouse Click Quiz
    29. Example 10.4.3 Click For Circles
    30. Exercise 10.4.4 Pausing the Carnival Game
    31. Exercise 10.4.5 Dripping Paint
    32. Notes 10.4.6 Project: Evasion (Mouse Click)
    33. 10.5 More Mouse Events

    34. Video 10.5.1 More Mouse Events
    35. Check for Understanding 10.5.2 More Mouse Events Quiz
    36. Example 10.5.3 Simple Painting
    37. Example 10.5.4 Painting with Color
    38. Exercise 10.5.5 Coordinates
    39. Exercise 10.5.6 Target
    40. Exercise 10.5.7 Drag and Drop
    41. Notes 10.5.8 Project: Evasion (More Mouse)
    42. Badge 10.5.9 Advanced Animator Badge
    43. 10.6 Key Events

    44. Video 10.6.1 Key Events
    45. Check for Understanding 10.6.2 Key Events Quiz
    46. Example 10.6.3 Keyboard Character
    47. Exercise 10.6.4 Basic Snake
    48. Notes 10.6.5 Project: Evasion (Key Events)
    49. Free Response 10.6.6 Project Reflection
    50. 10.7 Animation and Games Quiz

    51. Unit Quiz 10.7.1 Animation and Games Quiz
  11. Animation Challenges

    1. 11.1 Animation Challenges

    2. Challenge 11.1.1 Blinking Rectangles
    3. Challenge 11.1.2 Increasing Number of Shapes
  12. Project: Breakout

    1. 12.1 Breakout

    2. Notes 12.1.1 Breakout Introduction
    3. Challenge 12.1.2 Bricks
    4. Challenge 12.1.3 Ball and Paddle
    5. Challenge 12.1.4 Collisions
    6. Badge 12.1.5 Breakout Badge
  13. Final Project

    1. 13.1 Project Prep and Development

    2. Notes 13.1.1 Project Introduction
    3. Free Response 13.1.2 Planning and Design
    4. Pseudocode 13.1.3 Pseudocode
    5. Challenge 13.1.4 Write the Code!
    6. Presentation 13.1.5 Present your Project
  14. Final Exam

    1. 14.1 Final Exam

    2. Final 14.1.1 JavaScript Final Exam Pt. 1: Multiple Choice
  15. Midterm

    1. 15.1 Midterm

    2. Midterm 15.1.1 Midterm Pt 1: Multiple Choice
  16. Practice: Karel

    1. 16.1 Extra Karel Practice

    2. Challenge 16.1.1 Functions Practice: K For Karel
    3. Challenge 16.1.2 Functions Practice: Karel Plants A Tree
    4. Challenge 16.1.3 Functions Practice: X Marks the Spot
    5. Challenge 16.1.4 While Loop Practice: Blackout
    6. Challenge 16.1.5 While Loop Practice: Move To Top
    7. Challenge 16.1.6 While Loop Practice: Checkered Row
    8. Challenge 16.1.7 For Loop Practice: Tall Hurdles
    9. Challenge 16.1.8 Functions and While Loop Practice: Row and Back
    10. Challenge 16.1.9 Functions and For Loop Practice: Opposite Squares
    11. Challenge 16.1.10 Stairway To Heaven
    12. Badge 16.1.11 Karel Practice Badge
    13. Exercise 16.1.12 For Loop Square
    14. 16.2 Extra Karel Puzzles

    15. Challenge 16.2.1 Midpoint Karel
    16. Challenge 16.2.2 Target Karel
    17. Challenge 16.2.3 The Winding Yellow Road
    18. Challenge 16.2.4 Super Random Hurdles
    19. Challenge 16.2.5 Copy
    20. Challenge 16.2.6 Multiply
    21. Challenge 16.2.7 Fibonacci Karel
    22. Challenge 16.2.8 Comparison Karel
    23. Challenge 16.2.9 Swap
    24. Challenge 16.2.10 Sorting Karel
    25. Badge 16.2.11 Karel Puzzles Badge
  17. Practice: Functions

    1. 17.1 Functions and Parameters Practice

    2. Challenge 17.1.1 Taking a Power
    3. Challenge 17.1.2 Dot Rectangle
    4. Challenge 17.1.3 Print the Date
    5. Challenge 17.1.4 Grades
    6. Challenge 17.1.5 Concentric Circles
    7. Challenge 17.1.6 Graphics Staircase
    8. Exercise 17.1.7 The Weekend
    9. Badge 17.1.8 Functions and Parameters Badge
  18. Practice: Console Challenges

    1. 18.1 Prime Numbers

    2. Example 18.1.1 Secret Password
    3. Example 18.1.2 Voting Age
    4. Example 18.1.3 Negative Numbers
    5. Exercise 18.1.4 Fibonacci
    6. Exercise 18.1.5 Better Sum
    7. Exercise 18.1.6 Factorial
    8. Exercise 18.1.7 All Dice Values
    9. Exercise 18.1.8 Powers of Two
    10. Challenge 18.1.9 Prime Numbers
    11. Challenge 18.1.10 Find the Max
    12. Challenge 18.1.11 Prime Factorization
    13. Challenge 18.1.12 Fizz Buzz
    14. Challenge 18.1.13 Grid Printer
    15. Challenge 18.1.14 Number Sum
    16. Challenge 18.1.15 Hailstone Sequence
    17. Challenge 18.1.16 Pythagorean Triples
    18. Challenge 18.1.17 Digit Array
    19. Badge 18.1.18 Console Challenges Badge
  19. Practice: Graphics and Animation

    1. 19.1 Snake Game

    2. Challenge 19.1.1 A Growing Snake
    3. Challenge 19.1.2 Collisions
    4. Challenge 19.1.3 Adding Food
    5. Challenge 19.1.4 Finishing Touches
    6. 19.2 Fun Graphics Challenges

    7. Exercise 19.2.1 The Worm
    8. Challenge 19.2.2 Happy Birthday!
    9. Challenge 19.2.3 Balloons
    10. Challenge 19.2.4 Broccoli
    11. Challenge 19.2.5 Circles in Squares
    12. Challenge 19.2.6 Blinking Rectangles
    13. Challenge 19.2.7 Circles in Circles
    14. Challenge 19.2.8 Snowman Loop
    15. Badge 19.2.9 Graphics Challenges Badge
    16. 19.3 Animation Practice

    17. Example 19.3.1 Random Ghosts
    18. Example 19.3.2 Spinner
    19. Example 19.3.3 Random Fireworks
    20. Example 19.3.4 Drawing Lines
    21. Example 19.3.5 Colorful Drag to Paint
    22. Example 19.3.6 Keyboard Square
    23. Example 19.3.7 Click For Ghosts
    24. Exercise 19.3.8 Circle Wall
    25. Exercise 19.3.9 Hotspot Ball
    26. Exercise 19.3.10 Trail
    27. Exercise 19.3.11 Teleporting Ball
    28. Exercise 19.3.12 Leash
    29. Exercise 19.3.13 Pause
    30. 19.4 Crazy Ball Game

    31. Video 19.4.1 Crazy Ball Game 1
    32. Check for Understanding 19.4.2 Crazy Ball Game Quiz 1
    33. Example 19.4.3 Crazy Ball Game 1
    34. Video 19.4.4 Crazy Ball Game 2
    35. Check for Understanding 19.4.5 Crazy Ball Game Quiz 2
    36. Example 19.4.6 Crazy Ball Game 2
    37. Exercise 19.4.7 Click for Collision
    38. Exercise 19.4.8 Drag and Drop
  20. Extension: Arrays

    1. 20.1 Intro to Arrays

    2. Video 20.1.1 Intro to Arrays
    3. Notes 20.1.2 When to Use Arrays?
    4. Check for Understanding 20.1.3 Intro to Arrays Quiz
    5. Example 20.1.4 Array Basics
    6. Exercise 20.1.5 Exploration: A Boxy Array
    7. Exercise 20.1.6 List of Places to Travel
    8. Exercise 20.1.7 Top Websites
    9. 20.2 Adding & Removing from an Array

    10. Video 20.2.1 Adding & Removing from an Array
    11. Check for Understanding 20.2.2 Adding & Removing from an Array Quiz
    12. Notes 20.2.3 A Note About Arrays as Parameters
    13. Example 20.2.4 Temperature Array
    14. Exercise 20.2.5 Exploration: Creating a To-Do List
    15. Exercise 20.2.6 Stacking Barrels
    16. Exercise 20.2.7 Key Logging
    17. 20.3 Iterating Through an Array

    18. Video 20.3.1 Iterate Through an Array
    19. Check for Understanding 20.3.2 Iterate Through an Array Quiz
    20. Example 20.3.3 Print Shopping Lists
    21. Debugging 20.3.4 Test Average
    22. Exercise 20.3.5 Reverse List
    23. Exercise 20.3.6 Evens Only List
    24. Challenge 20.3.7 Dice Roll Probabilities
    25. Free Response 20.3.8 Dice Probability Reflection
    26. 20.4 Array Iteration with Graphics

    27. Notes 20.4.1 Array Iteration with Graphics
    28. Quiz 20.4.2 Array Iteration with Graphics Quiz
    29. Example 20.4.3 Snow Storm
    30. Exercise 20.4.4 Exploration: Changing Properties
    31. Exercise 20.4.5 Draw a Barcode
    32. Exercise 20.4.6 Wind Turbines
    33. Challenge 20.4.7 Parallax Challenge
    34. 20.5 Array Methods

    35. Notes 20.5.1 Array Methods
    36. Example 20.5.2 Email List
    37. Example 20.5.3 Weekly Temperatures
    38. Example 20.5.4 Splitting Up Tasks
    39. Exercise 20.5.5 Mutual Friends
    40. Challenge 20.5.6 Scientific Data
  21. Extension: Objects

    1. 21.1 Intro to Objects

    2. Video 21.1.1 Intro to Objects
    3. Check for Understanding 21.1.2 Intro to Objects Quiz
    4. Example 21.1.3 Phonebook
    5. Exercise 21.1.4 Movie Database
    6. Video 21.1.5 Object Literals & Properties
    7. Example 21.1.6 Car Objects
    8. Exercise 21.1.7 Two Player
    9. Exercise 21.1.8 Shopping Cart
    10. 21.2 Graphic Objects

    11. Video 21.2.1 Graphic Objects
    12. Notes 21.2.2 A Note About Objects as Parameters
    13. Example 21.2.3 Super Bouncers
    14. Example 21.2.4 Falling Blocks
    15. Exercise 21.2.5 Exploration: Our Solar System
    16. Exercise 21.2.6 Fireflies
    17. Free Response 21.2.7 Firefly Reflection
    18. Challenge 21.2.8 Level 1 Knight
    19. 21.3 Object Methods

    20. Video 21.3.1 Object Methods
    21. Quiz 21.3.2 Object Methods Quiz
    22. Example 21.3.3 Party Ball
    23. Exercise 21.3.4 Exploration: Digi Pet
    24. Exercise 21.3.5 Level 2 Knight
    25. Exercise 21.3.6 Bank Account
    26. 21.4 Iterating Through an Object

    27. Video 21.4.1 Iterating Through an Object
    28. Check for Understanding 21.4.2 Iterating Through an Object Quiz
    29. Notes 21.4.3 Property or Method?
    30. Example 21.4.4 Phonebook Extended
    31. Example 21.4.5 Bouncing Emoji
    32. Exercise 21.4.6 Starry Night
    33. Exercise 21.4.7 Let's Go Birding
    34. Exercise 21.4.8 Asteroids
    35. 21.5 Object Constructors

    36. Video 21.5.1 Object Constructors
    37. Quiz 21.5.2 Object Constructors Quiz
    38. Example 21.5.3 New Person
    39. Example 21.5.4 CodeHS Graphics are Objects
    40. Debugging 21.5.5 Musical Instruments
    41. Exercise 21.5.6 Level 3 Knight
    42. Exercise 21.5.7 Bank Account Constructor
    43. Challenge 21.5.8 Hobby Constructors
    44. Notes 21.5.9 Advanced Extension: Prototypes and Inheritance
  22. Extension: Additional Data Structures

    1. 22.1 Intro to Sets

    2. Video 22.1.1 Intro to Sets
    3. Check for Understanding 22.1.2 Intro to Sets Quiz
    4. Example 22.1.3 Basic Sets
    5. Exercise 22.1.4 Vowels
    6. Exercise 22.1.5 Mutual Friends
    7. Exercise 22.1.6 Total Network of Friends
    8. 22.2 Intro to Grids

    9. Video 22.2.1 Intro to Grids
    10. Check for Understanding 22.2.2 Intro to Grids Quiz
    11. Example 22.2.3 Grid Basics
    12. Exercise 22.2.4 Building a Database
    13. 22.3 Looping Over a Grid

    14. Video 22.3.1 Looping Over a Grid
    15. Check for Understanding 22.3.2 Looping Over a Grid Quiz
    16. Example 22.3.3 Print Grid
    17. Exercise 22.3.4 Summing Grid
    18. 22.4 Grid Example: Get a Row

    19. Video 22.4.1 Grid Example: Get a Row
    20. Check for Understanding 22.4.2 Grid Example: Get a Row Quiz
    21. Example 22.4.3 Get a Row
    22. Exercise 22.4.4 Grid Diagonal
    23. Challenge 22.4.5 Watercolor Grid
    24. Badge 22.4.6 Data Structures Exercises Badge
  23. Extra Quiz Questions

    1. 23.1 Basic Javascript and Graphics

    2. Check for Understanding 23.1.1 For Loop Examples Quiz
    3. Quiz 23.1.2 Extra JavaScript Graphics Quesions
    4. Quiz 23.1.3 Extra Logical Operators Questions
    5. Quiz 23.1.4 Extra Functions and Return Values Questions
    6. Quiz 23.1.5 Extra Local Variables and Scope Questions
    7. Check for Understanding 23.1.6 General For Loop Quiz
    8. 23.2 Animation and Games

    9. Quiz 23.2.1 Extra Timers Questions
    10. Quiz 23.2.2 Extra Bouncing Ball Questions
    11. Quiz 23.2.3 Extra Mouse Events: Mouse Clicked Questions
    12. Quiz 23.2.4 Extra Key Events Questions
    13. Quiz 23.2.5 Extra Crazy Ball Game Questions
    14. 23.3 Basic Data Structures

    15. Quiz 23.3.1 Extra Intro to Lists/Arrays Questions
    16. Quiz 23.3.2 Extra Indexing into an Array Questions
    17. Quiz 23.3.3 Extra Adding/Removing from an Array Questions
    18. Quiz 23.3.4 Extra Array Length and Looping Through Arrays Questions
    19. Quiz 23.3.5 Extra Iterating Over an Array Questions
    20. Quiz 23.3.6 Extra Finding an Element in a List Questions
    21. Quiz 23.3.7 Extra Removing an Element from an Array Questions
    22. Quiz 23.3.8 Extra Basics of Objects Questions
    23. Quiz 23.3.9 Extra Intro to Sets Questions
    24. Quiz 23.3.10 Extra Intro to Grids Questions
  24. Extension: Visualizing Music

    1. 24.1 Visualizing Music

    2. Video 24.1.1 Visualizing Music
    3. Example 24.1.2 Our First Visualization
    4. Example 24.1.3 Vertical Bars
    5. Example 24.1.4 Vertical Bars with Color
    6. Example 24.1.5 Changing Circles
    7. Exercise 24.1.6 Your First Visualization
    8. Exercise 24.1.7 Changing Colors
    9. Exercise 24.1.8 Custom Colors
    10. Exercise 24.1.9 Create Your Own Music Visualization
  25. Practice: Data Structures Challenges

    1. 25.1 Conway's Game of Life

    2. Exercise 25.1.1 Make The Grid
    3. Exercise 25.1.2 Find Life
    4. Exercise 25.1.3 Finish Up
    5. 25.2 Connect Four

    6. Exercise 25.2.1 Make The Board
    7. Exercise 25.2.2 Take Turns
    8. Exercise 25.2.3 Find the Winner
  26. Project: Tic Tac Toe

    1. 26.1 Tic Tac Toe

    2. Challenge 26.1.1 Tic Tac Toe: Part 1
    3. Challenge 26.1.2 Tic Tac Toe: Part 2
    4. Challenge 26.1.3 Tic Tac Toe: Full Game
    5. Badge 26.1.4 Tic Tac Toe Badge
  27. Project: Helicopter Game

    1. 27.1 Game Design: Helicopter

    2. Video 27.1.1 Introduction to Helicopter
    3. 27.2 Basics

    4. Video 27.2.1 Moving the Helicopter
    5. Exercise 27.2.2 Moving the Helicopter
    6. Video 27.2.3 Adding Obstacles
    7. Exercise 27.2.4 Adding Obstacles
    8. Video 27.2.5 Smoother Movement
    9. Exercise 27.2.6 Smoother Movement
    10. Badge 27.2.7 Smooth Movement Badge
    11. 27.3 Improvements

    12. Video 27.3.1 Colliding with Walls
    13. Exercise 27.3.2 Wall Collisions
    14. Video 27.3.3 Colliding with Obstacles
    15. Exercise 27.3.4 Obstacle Collisions
    16. Video 27.3.5 Adding Terrain
    17. Exercise 27.3.6 Adding Terrain
    18. Video 27.3.7 Moving the Terrain
    19. Exercise 27.3.8 Moving the Terrain
    20. 27.4 Polish

    21. Video 27.4.1 Helicopter Image and Points!
    22. Exercise 27.4.2 Image and Points
    23. Video 27.4.3 Dust
    24. Exercise 27.4.4 Dust
    25. Video 27.4.5 More Obstacles
    26. Exercise 27.4.6 More Obstacles
    27. Challenge 27.4.7 Helicopter Extensions
    28. Badge 27.4.8 Helicopter Badge
  28. Intro to CS: JavaScript Pretest

    1. 28.1 Intro to CS: JavaScript Pretest

    2. Notes 28.1.1 About the Pretest
    3. Survey 28.1.2 Mindsets
    4. Quiz 28.1.3 JavaScript Knowledge & Skills
  29. JavaScript Level 1 Certification Practice

    1. 29.1 JavaScript Syntax Update

    2. Notes 29.1.1 JavaScript Syntax Update
    3. Example 29.1.2 Syntax Comparison
    4. Example 29.1.3 Re-declaring Variables: Let vs Var
    5. Exercise 29.1.4 Name and Game
    6. Quiz 29.1.5 JavaScript Syntax Update Quiz
    7. 29.2 Practice #1: JavaScript Basics

    8. Quiz 29.2.1 Quiz: JavaScript Basics
    9. Notes 29.2.2 Practice #1 Reflection
    10. 29.3 Practice #2: JavaScript Control Structures

    11. Quiz 29.3.1 Quiz: JavaScript Control Structures
    12. Notes 29.3.2 Practice #2 Reflection
    13. 29.4 Practice #3: JavaScript Functions and Objects

    14. Quiz 29.4.1 Quiz: JavaScript Functions and Objects
    15. Notes 29.4.2 Practice #3 Reflection