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
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 Super Karel)
46. Exercise 1.8.4 The Two Towers + Super Karel
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
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
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
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 Challenge Problems

99. Challenge 1.16.1 Fetch
100. Challenge 1.16.2 Racing Karel
101. Challenge 1.16.3 Tower Builder
102. Challenge 1.16.4 Super Cleanup Karel
103. Challenge 1.16.5 Double Tennis Balls
105. ### 1.17 Programming with Karel Quiz

106. Unit Quiz 1.17.1 Programming with Karel Quiz
2. ## JavaScript Basics

1. ### 2.1 Hello World

2. Video 2.1.1 Hello World
3. Check for Understanding 2.1.2 Hello World Quiz
4. Example 2.1.3 Hello World
5. Exercise 2.1.4 Your Name and Hobby
6. Exercise 2.1.5 ASCII Animals
7. ### 2.2 Variables

8. Video 2.2.1 Variables
9. Video 2.2.2 Live Coding: Variables
10. Check for Understanding 2.2.3 Variables Quiz
11. Example 2.2.4 Basic Variables
12. Exercise 2.2.5 Daily Activities
13. Debugging 2.2.6 Debugging Variables
14. ### 2.3 User Input

15. Video 2.3.1 User Input
16. Check for Understanding 2.3.2 User Input Quiz
17. Example 2.3.3 Basic User Input
18. Exercise 2.3.4 Dinner Plans
21. ### 2.4 Basic Math

22. Video 2.4.1 Basic Math
23. Check for Understanding 2.4.2 Basic Math Quiz
24. Example 2.4.3 Simple Calculator
25. Example 2.4.4 Dollars to Pounds
26. Example 2.4.5 Dividing Up Groups
27. Exercise 2.4.6 T-Shirt Shop
28. Exercise 2.4.7 Running Speed
29. ### 2.5 Collaborative Programming

30. Video 2.5.1 Pair-Programming
31. Check for Understanding 2.5.2 Pair-Programming
32. Connection 2.5.3 Why Practice Pair-Programming?
33. Free Response 2.5.4 Pair-Programming Reflection
34. ### 2.6 Random Numbers

35. Video 2.6.1 Random Numbers
36. Check for Understanding 2.6.2 Random Numbers Quiz
37. Example 2.6.3 Rolling a Die
38. Exercise 2.6.4 Treasure Chest Loot
39. Exercise 2.6.5 Multiplication Practice
41. ### 2.7 Basic Functions

42. Video 2.7.1 Basic Functions
43. Notes 2.7.2 Variables in Functions
44. Quiz 2.7.3 Basic Functions Quiz
45. Example 2.7.4 Function Flow
46. Exercise 2.7.5 Digital Business Card
47. Exercise 2.7.6 ASCII Karel
48. ### 2.8 JavaScript Basics Quiz

49. Unit Quiz 2.8.1 JavaScript Basics Quiz
3. ## The Canvas and Graphics

1. ### 3.1 Intro to the Canvas and Graphics

2. Video 3.1.1 Intro to Canvas and Graphics
3. Notes 3.1.2 Debug Mode for Positioning
4. Video 3.1.3 Live Coding: Circle and Rectangle
5. Connection 3.1.4 Canvas Coordinates
6. Quiz 3.1.5 Canvas and Graphics Quiz
7. Example 3.1.6 Creating a Circle
8. Example 3.1.7 A Circle and a Rectangle
9. Exercise 3.1.8 A Ball in a Box
10. Exercise 3.1.9 Raise the Flag
11. ### 3.2 More Graphics Objects

12. Video 3.2.1 More Graphics Objects
13. Video 3.2.2 Live Coding: More Graphics Objects
14. Quiz 3.2.3 Graphics Objects Quiz
15. Example 3.2.4 Cute Animals
16. Example 3.2.5 Greetings, Earth!
17. Exercise 3.2.6 Exploration: XY Plot
18. Exercise 3.2.7 Create Your Meme
19. Exercise 3.2.8 Saturday Mornings
20. ### 3.3 Positioning Graphics Objects

21. Video 3.3.1 Positioning Graphics Objects
22. Quiz 3.3.2 Positioning Quiz
23. Example 3.3.3 8 Ball
24. Exercise 3.3.4 Color the Rainbow
25. Challenge 3.3.5 Create Your Own Plant!
26. ### 3.4 JavaScript Graphics Quiz

27. Quiz 3.4.1 JavaScript Graphics Quiz
4. ## Graphics Challenges

1. ### 4.1 Graphics Challenges

2. Challenge 4.1.1 Ghost
3. Challenge 4.1.2 Fried Egg
4. Challenge 4.1.3 Draw Something
5. ## Control Structures

1. ### 5.1 Booleans

2. Video 5.1.1 Booleans
3. Check for Understanding 5.1.2 Booleans Quiz
4. Example 5.1.3 Boolean Exploration
5. Exercise 5.1.4 Do You Have a Dog?
6. Free Response 5.1.5 Booleans are Questions
7. Exercise 5.1.6 Best Day Ever
8. ### 5.2 If/Else Statements

9. Video 5.2.1 If Statements
10. Check for Understanding 5.2.2 If Statements Quiz
11. Example 5.2.3 Are You Logged In?
12. Exercise 5.2.4 Is It Raining?
13. Exercise 5.2.5 Mood Playlist
15. ### 5.3 Logical Operators

16. Video 5.3.1 Logical Operators
17. Check for Understanding 5.3.2 Logical Operators Quiz
18. Example 5.3.3 Light Switch
19. Example 5.3.4 Harry Potter
21. Example 5.3.6 Logical Operators Game
22. Exercise 5.3.7 Can You Graduate?
23. Exercise 5.3.8 Switching Players
24. Exercise 5.3.9 A Day of Decisions
25. ### 5.4 Comparison Operators

26. Video 5.4.1 Comparison Operators
27. Check for Understanding 5.4.2 Comparison Operators Quiz
28. Example 5.4.3 Great Names
30. Example 5.4.5 Even and Odd
31. Exercise 5.4.6 Rolling Dice
32. Exercise 5.4.7 Teenagers
33. Exercise 5.4.8 Rocket Launch Requirements
34. Exercise 5.4.9 Trivia Game
35. ### 5.5 Graphics and Conditionals

36. Notes 5.5.1 Graphics and Conditionals
37. Example 5.5.2 Circle or Rectangle?
38. Exercise 5.5.3 Correct or Incorrect?
39. Notes 5.5.4 Else If Statements
40. Example 5.5.5 Conditional Circle Color
41. Exercise 5.5.6 Odd or Even Shapes
42. Quiz 5.5.7 Graphics and Conditionals Quiz
43. Challenge 5.5.8 Interactive Modern Art
44. ### 5.6 While Loops

45. Video 5.6.1 While Loops
46. Check for Understanding 5.6.2 While Loops Quiz
47. Example 5.6.3 While Loop Countdown
48. Debugging 5.6.4 Debugging: Best Name Ever
49. Exercise 5.6.5 Level Up
50. Exercise 5.6.6 Inventory
51. ### 5.7 The Break Statement

52. Video 5.7.1 The Break Statement
53. Check for Understanding 5.7.2 The Break Statement Quiz
54. Example 5.7.3 Adding Up Numbers
55. Free Response 5.7.4 Break Statement Reflection
56. Exercise 5.7.5 Snake Eyes
57. Exercise 5.7.6 Better Password Prompt
58. Exercise 5.7.7 Riddle Machine
59. ### 5.8 While Loops and Graphics

60. Notes 5.8.1 While Loops and Graphics
61. Example 5.8.2 Lots of Circles
62. Example 5.8.3 Corners on Corners
63. Exercise 5.8.4 Concentric Circles
64. Debugging 5.8.5 Debugging: Circle Positions
65. Exercise 5.8.6 Growing Squares
66. ### 5.9 For Loops

67. Video 5.9.1 For Loops
68. Example 5.9.2 For Loop Exploration
69. Exercise 5.9.3 Chalkboard
70. Example 5.9.4 Count By Twos
71. Example 5.9.5 Eating Apples
72. Debugging 5.9.6 Countdown by Sevens
73. Check for Understanding 5.9.7 For Loops Quiz
74. Exercise 5.9.8 Lives Left
75. Example 5.9.9 For Loop Sum
76. Exercise 5.9.10 Jukebox
77. ### 5.10 For Loops and Graphics

78. Notes 5.10.1 For Loops and Graphics
79. Example 5.10.2 Lots of Circles Revisited
80. Exercise 5.10.3 Exploration: Confetti
81. Notes 5.10.4 Using i to Position Objects and Adjust Size
82. Example 5.10.5 Horizontal Stripes #1: Using i to Adjust Position
83. Example 5.10.6 Horizontal Stripes #2: Using i to Adjust Size
84. Debugging 5.10.7 Debugging: Colorful Bullseye
85. Exercise 5.10.8 Caterpillar
87. ### 5.11 Javascript Control Structures Quiz

88. Unit Quiz 5.11.1 JavaScript Control Structures Quiz
6. ## Control Structures Challenges

1. ### 6.1 Control Structures Challenges

2. Challenge 6.1.1 Guessing Game
3. Challenge 6.1.2 Landscape Generator
4. Challenge 6.1.3 Exploring RGB Color Codes
7. ## Functions

1. ### 7.1 Parameters

2. Video 7.1.1 Parameters
3. Video 7.1.2 Live Coding: Parameters
4. Quiz 7.1.3 Parameters Quiz
5. Example 7.1.4 Greetings
6. Example 7.1.5 Slope of a Line
7. Example 7.1.6 Draw Lots of Circles!
8. Exercise 7.1.7 Area of Triangle
9. Exercise 7.1.8 Rainbow Revisited
10. Exercise 7.1.9 Cityscape
11. ### 7.2 Return Values

12. Video 7.2.1 Return Values
13. Quiz 7.2.2 Return Values Quiz
14. Example 7.2.3 Mathematical Returns
15. Example 7.2.4 Offscreen Graphics
16. Exercise 7.2.5 Max
17. Exercise 7.2.6 Overlapping Graphics
18. Exercise 7.2.7 Is It Even?
19. ### 7.3 Default Parameter Values

20. Video 7.3.1 Default Parameter Values
21. Quiz 7.3.2 Default Parameter Values Quiz
22. Example 7.3.3 Default Printing
23. Debugging 7.3.4 Farming International
24. Exercise 7.3.5 Compound Interest
25. Exercise 7.3.6 Default Face
26. ### 7.4 Variable Scopes

27. Video 7.4.1 Variable Scope
28. Video 7.4.2 Live Coding: Variable Scope
29. Quiz 7.4.3 Variable Scope Quiz
30. Example 7.4.4 Scope of X
31. Exercise 7.4.5 Exploration: Scope of Ball
32. Free Response 7.4.6 Scope Reflection
33. Challenge 7.4.7 Choose Wisely Game
35. ### 7.5 Functions Quiz

36. Unit Quiz 7.5.1 Functions and Parameters Quiz
8. ## Functions Challenges

1. ### 8.1 Functions Challenges

2. Challenge 8.1.1 Global Travel Assistant
3. Challenge 8.1.2 Balloons
4. Challenge 8.1.3 Ghost Invasion!
9. ## Animation and Games

1. ### 9.1 Timers

2. Video 9.1.1 Timers
3. Check for Understanding 9.1.2 Timers Quiz
4. Example 9.1.3 Moving Ball
5. Example 9.1.4 Magic 8 Ball
6. Exercise 9.1.5 Crazy Ball
7. Exercise 9.1.6 Paint Splatter
8. Notes 9.1.7 Project: Evasion (Timers)
9. Free Response 9.1.8 Project Info and Links
10. ### 9.2 Stopping Timers

11. Video 9.2.1 Stopping Timers
12. Check for Understanding 9.2.2 Stop Timer Quiz
13. Example 9.2.3 Random Circles
14. Exercise 9.2.4 Growing Circle
15. Exercise 9.2.5 Brick Wall
16. Notes 9.2.6 Project: Evasion (Stop Timers)
18. ### 9.3 Collisions

19. Video 9.3.1 Collisions
20. Video 9.3.2 Live Coding: Collisions
21. Check for Understanding 9.3.3 Collisions Quiz
22. Example 9.3.4 Bouncing Ball
23. Exercise 9.3.5 Collision Simulation
24. Exercise 9.3.6 Carnival Game
25. Notes 9.3.7 Project: Evasion (Collisions)
26. ### 9.4 Mouse Click Events

27. Video 9.4.1 Mouse Click Events
28. Check for Understanding 9.4.2 Mouse Click Quiz
29. Example 9.4.3 Click For Circles
30. Exercise 9.4.4 Pausing the Carnival Game
31. Exercise 9.4.5 Dripping Paint
32. Notes 9.4.6 Project: Evasion (Mouse Click)
33. ### 9.5 More Mouse Events

34. Video 9.5.1 More Mouse Events
35. Check for Understanding 9.5.2 More Mouse Events Quiz
36. Example 9.5.3 Simple Painting
37. Example 9.5.4 Painting with Color
38. Exercise 9.5.5 Coordinates
39. Exercise 9.5.6 Target
40. Exercise 9.5.7 Drag and Drop
41. Notes 9.5.8 Project: Evasion (More Mouse)
43. ### 9.6 Key Events

44. Video 9.6.1 Key Events
45. Check for Understanding 9.6.2 Key Events Quiz
46. Example 9.6.3 Keyboard Character
47. Exercise 9.6.4 Basic Snake
48. Notes 9.6.5 Project: Evasion (Key Events)
49. Free Response 9.6.6 Project Reflection
50. ### 9.7 Animation and Games Quiz

51. Unit Quiz 9.7.1 Animation and Games Quiz
10. ## Animation Challenges

1. ### 10.1 Animation Challenges

3. Challenge 10.1.2 Increasing Number of Shapes
11. ## Project: Breakout

1. ### 11.1 Breakout

2. Notes 11.1.1 Breakout Introduction
3. Challenge 11.1.2 Bricks
4. Challenge 11.1.3 Ball and Paddle
5. Challenge 11.1.4 Collisions
12. ## Project: Snake

1. ### 12.1 Snake Game

2. Challenge 12.1.1 A Growing Snake
3. Challenge 12.1.2 Collisions
5. Challenge 12.1.4 Finishing Touches
13. ## Data Structures: Arrays

1. ### 13.1 Intro to Arrays

2. Video 13.1.1 Intro to Arrays
3. Notes 13.1.2 When to Use Arrays?
4. Check for Understanding 13.1.3 Intro to Arrays Quiz
5. Example 13.1.4 Array Basics
6. Exercise 13.1.5 Exploration: A Boxy Array
7. Exercise 13.1.6 List of Places to Travel
8. Exercise 13.1.7 Top Websites
9. ### 13.2 Adding & Removing from an Array

10. Video 13.2.1 Adding & Removing from an Array
11. Check for Understanding 13.2.2 Adding & Removing from an Array Quiz
12. Notes 13.2.3 A Note About Arrays as Parameters
13. Example 13.2.4 Temperature Array
14. Exercise 13.2.5 Exploration: Creating a To-Do List
15. Exercise 13.2.6 Stacking Barrels
16. Exercise 13.2.7 Key Logging
17. ### 13.3 Iterating Through an Array

18. Video 13.3.1 Iterate Through an Array
19. Check for Understanding 13.3.2 Iterate Through an Array Quiz
20. Example 13.3.3 Print Shopping Lists
21. Debugging 13.3.4 Test Average
22. Exercise 13.3.5 Reverse List
23. Exercise 13.3.6 Evens Only List
24. Challenge 13.3.7 Dice Roll Probabilities
25. Free Response 13.3.8 Dice Probability Reflection
26. ### 13.4 Array Iteration with Graphics

27. Notes 13.4.1 Array Iteration with Graphics
28. Quiz 13.4.2 Array Iteration with Graphics Quiz
29. Example 13.4.3 Snow Storm
30. Exercise 13.4.4 Exploration: Changing Properties
31. Exercise 13.4.5 Draw a Barcode
32. Exercise 13.4.6 Wind Turbines
33. Challenge 13.4.7 Parallax Challenge
34. ### 13.5 Array Methods

35. Notes 13.5.1 Array Methods
36. Example 13.5.2 Email List
37. Example 13.5.3 Weekly Temperatures
38. Example 13.5.4 Splitting Up Tasks
39. Exercise 13.5.5 Mutual Friends
40. Challenge 13.5.6 Scientific Data
14. ## Data Structures: Objects

1. ### 14.1 Intro to Objects

2. Video 14.1.1 Intro to Objects
3. Check for Understanding 14.1.2 Intro to Objects Quiz
4. Example 14.1.3 Phonebook
5. Exercise 14.1.4 Movie Database
6. Video 14.1.5 Object Literals & Properties
7. Example 14.1.6 Car Objects
8. Exercise 14.1.7 Two Player
9. Exercise 14.1.8 Shopping Cart
10. ### 14.2 Graphic Objects

11. Video 14.2.1 Graphic Objects
12. Notes 14.2.2 A Note About Objects as Parameters
13. Example 14.2.3 Super Bouncers
14. Example 14.2.4 Falling Blocks
15. Exercise 14.2.5 Exploration: Our Solar System
16. Exercise 14.2.6 Fireflies
17. Free Response 14.2.7 Firefly Reflection
18. Challenge 14.2.8 Level 1 Knight
19. ### 14.3 Object Methods

20. Video 14.3.1 Object Methods
21. Quiz 14.3.2 Object Methods Quiz
22. Example 14.3.3 Party Ball
23. Exercise 14.3.4 Exploration: Digi Pet
24. Exercise 14.3.5 Level 2 Knight
25. Exercise 14.3.6 Bank Account
26. ### 14.4 Iterating Through an Object

27. Video 14.4.1 Iterating Through an Object
28. Check for Understanding 14.4.2 Iterating Through an Object Quiz
29. Notes 14.4.3 Property or Method?
30. Example 14.4.4 Phonebook Extended
31. Example 14.4.5 Bouncing Emoji
32. Exercise 14.4.6 Starry Night
33. Exercise 14.4.7 Let's Go Birding
34. Exercise 14.4.8 Asteroids
35. ### 14.5 Object Constructors

36. Video 14.5.1 Object Constructors
37. Quiz 14.5.2 Object Constructors Quiz
38. Example 14.5.3 New Person
39. Example 14.5.4 CodeHS Graphics are Objects
40. Debugging 14.5.5 Musical Instruments
41. Exercise 14.5.6 Level 3 Knight
42. Exercise 14.5.7 Bank Account Constructor
43. Challenge 14.5.8 Hobby Constructors
44. Notes 14.5.9 Advanced Extension: Prototypes and Inheritance
15. ## Project: Tic Tac Toe

1. ### 15.1 Tic Tac Toe

2. Challenge 15.1.1 Tic Tac Toe: Part 1
3. Challenge 15.1.2 Tic Tac Toe: Part 2
4. Challenge 15.1.3 Tic Tac Toe: Full Game
16. ## Project: Helicopter Game

1. ### 16.1 Game Design: Helicopter

2. Video 16.1.1 Introduction to Helicopter
3. ### 16.2 Basics

4. Video 16.2.1 Moving the Helicopter
5. Exercise 16.2.2 Moving the Helicopter
8. Video 16.2.5 Smoother Movement
9. Exercise 16.2.6 Smoother Movement
11. ### 16.3 Improvements

12. Video 16.3.1 Colliding with Walls
13. Exercise 16.3.2 Wall Collisions
14. Video 16.3.3 Colliding with Obstacles
15. Exercise 16.3.4 Obstacle Collisions
18. Video 16.3.7 Moving the Terrain
19. Exercise 16.3.8 Moving the Terrain
20. ### 16.4 Polish

21. Video 16.4.1 Helicopter Image and Points!
22. Exercise 16.4.2 Image and Points
23. Video 16.4.3 Dust
24. Exercise 16.4.4 Dust
25. Video 16.4.5 More Obstacles
26. Exercise 16.4.6 More Obstacles
27. Challenge 16.4.7 Helicopter Extensions
17. ## Final Project: Your Own Game

1. ### 17.1 Project Prep and Development

2. Notes 17.1.1 Project Introduction
3. Free Response 17.1.2 Planning and Design
4. Pseudocode 17.1.3 Pseudocode
5. Challenge 17.1.4 Write the Code!
6. Presentation 17.1.5 Present your Project
18. ## Final Exam

1. ### 18.1 Final Exam

2. Final 18.1.1 JavaScript Final Exam Pt. 1: Multiple Choice
19. ## Midterm

1. ### 19.1 Midterm

2. Midterm 19.1.1 Midterm Pt 1: Multiple Choice
20. ## Project: Connect Four

1. ### 20.1 Connect Four

2. Exercise 20.1.1 Make The Board
3. Exercise 20.1.2 Take Turns
4. Exercise 20.1.3 Find the Winner
21. ## Project: Mastermind

1. ### 21.1 Mastermind

2. Connection 21.1.1 How to Play Mastermind
3. Demo 21.1.2 Mastermind: Demo
4. Exercise 21.1.3 Generate Number List
5. Exercise 21.1.4 Get User Guess
6. Exercise 21.1.5 Compare User to List!
7. Exercise 21.1.6 Finish the Game!
8. Exercise 21.1.7 Mastermind Board
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
23. ## Practice: Karel

1. ### 23.1 Extra Karel Practice

2. Challenge 23.1.1 Functions Practice: K For Karel
3. Challenge 23.1.2 Functions Practice: Karel Plants A Tree
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 While Loop Practice: Checkered Row
8. Challenge 23.1.7 For Loop Practice: Tall Hurdles
9. Challenge 23.1.8 Functions and While Loop Practice: Row and Back
10. Challenge 23.1.9 Functions and For Loop Practice: Opposite Squares
11. Challenge 23.1.10 Stairway To Heaven
13. Challenge 23.1.12 For Loop Practice: Square
14. ### 23.2 Extra Karel Puzzles

15. Challenge 23.2.1 Midpoint Karel
16. Challenge 23.2.2 Target Karel
17. Challenge 23.2.3 The Winding Yellow Road
18. Challenge 23.2.4 Super Random Hurdles
19. Challenge 23.2.5 Copy
20. Challenge 23.2.6 Multiply
21. Challenge 23.2.7 Fibonacci Karel
22. Challenge 23.2.8 Comparison Karel
23. Challenge 23.2.9 Swap
24. Challenge 23.2.10 Sorting Karel
24. ## Practice: Functions

1. ### 24.1 Functions and Parameters Practice

2. Challenge 24.1.1 Taking a Power
3. Challenge 24.1.2 Dot Rectangle
4. Challenge 24.1.3 Print the Date
6. Challenge 24.1.5 Concentric Circles
7. Challenge 24.1.6 Graphics Staircase
8. Exercise 24.1.7 The Weekend
25. ## Practice: Console Challenges

1. ### 25.1 Prime Numbers

3. Example 25.1.2 Voting Age
4. Example 25.1.3 Negative Numbers
5. Exercise 25.1.4 Fibonacci
6. Exercise 25.1.5 Better Sum
7. Exercise 25.1.6 Factorial
8. Exercise 25.1.7 All Dice Values
9. Exercise 25.1.8 Powers of Two
10. Challenge 25.1.9 Prime Numbers
11. Challenge 25.1.10 Find the Max
12. Challenge 25.1.11 Prime Factorization
13. Challenge 25.1.12 Fizz Buzz
14. Challenge 25.1.13 Grid Printer
15. Challenge 25.1.14 Number Sum
16. Challenge 25.1.15 Hailstone Sequence
17. Challenge 25.1.16 Pythagorean Triples
18. Challenge 25.1.17 Digit Array
26. ## Practice: Graphics and Animation

1. ### 26.1 Fun Graphics Challenges

2. Exercise 26.1.1 The Worm
3. Challenge 26.1.2 Happy Birthday!
4. Challenge 26.1.3 Balloons
5. Challenge 26.1.4 Broccoli
6. Challenge 26.1.5 Circles in Squares
8. Challenge 26.1.7 Circles in Circles
9. Challenge 26.1.8 Snowman Loop
11. ### 26.2 Animation Practice

12. Example 26.2.1 Random Ghosts
13. Example 26.2.2 Spinner
14. Example 26.2.3 Random Fireworks
15. Example 26.2.4 Drawing Lines
16. Example 26.2.5 Colorful Drag to Paint
17. Example 26.2.6 Keyboard Square
18. Example 26.2.7 Click For Ghosts
19. Exercise 26.2.8 Circle Wall
20. Exercise 26.2.9 Hotspot Ball
21. Exercise 26.2.10 Trail
22. Exercise 26.2.11 Teleporting Ball
23. Exercise 26.2.12 Leash
24. Exercise 26.2.13 Pause
25. ### 26.3 Crazy Ball Game

26. Video 26.3.1 Crazy Ball Game 1
27. Check for Understanding 26.3.2 Crazy Ball Game Quiz 1
28. Example 26.3.3 Crazy Ball Game 1
29. Video 26.3.4 Crazy Ball Game 2
30. Check for Understanding 26.3.5 Crazy Ball Game Quiz 2
31. Example 26.3.6 Crazy Ball Game 2
32. Exercise 26.3.7 Click for Collision
33. Exercise 26.3.8 Drag and Drop
27. ## Practice: Data Structures Challenges

1. ### 27.1 Conway's Game of Life

2. Exercise 27.1.1 Make The Grid
3. Exercise 27.1.2 Find Life
4. Exercise 27.1.3 Finish Up
28. ## Extra Quiz Questions

1. ### 28.1 Basic Javascript and Graphics

2. Check for Understanding 28.1.1 For Loop Examples Quiz
3. Quiz 28.1.2 Extra JavaScript Graphics Quesions
4. Quiz 28.1.3 Extra Logical Operators Questions
5. Quiz 28.1.4 Extra Functions and Return Values Questions
6. Quiz 28.1.5 Extra Local Variables and Scope Questions
7. Check for Understanding 28.1.6 General For Loop Quiz
8. ### 28.2 Animation and Games

9. Quiz 28.2.1 Extra Timers Questions
10. Quiz 28.2.2 Extra Bouncing Ball Questions
11. Quiz 28.2.3 Extra Mouse Events: Mouse Clicked Questions
12. Quiz 28.2.4 Extra Key Events Questions
13. Quiz 28.2.5 Extra Crazy Ball Game Questions
14. ### 28.3 Basic Data Structures

15. Quiz 28.3.1 Extra Intro to Lists/Arrays Questions
16. Quiz 28.3.2 Extra Indexing into an Array Questions
17. Quiz 28.3.3 Extra Adding/Removing from an Array Questions
18. Quiz 28.3.4 Extra Array Length and Looping Through Arrays Questions
19. Quiz 28.3.5 Extra Iterating Over an Array Questions
20. Quiz 28.3.6 Extra Finding an Element in a List Questions
21. Quiz 28.3.7 Extra Removing an Element from an Array Questions
22. Quiz 28.3.8 Extra Basics of Objects Questions
23. Quiz 28.3.9 Extra Intro to Sets Questions
24. Quiz 28.3.10 Extra Intro to Grids Questions
29. ## Extension: Visualizing Music

1. ### 29.1 Visualizing Music

2. Video 29.1.1 Visualizing Music
3. Example 29.1.2 Our First Visualization
4. Example 29.1.3 Vertical Bars
5. Example 29.1.4 Vertical Bars with Color
6. Example 29.1.5 Changing Circles
7. Exercise 29.1.6 Your First Visualization
8. Exercise 29.1.7 Changing Colors
9. Exercise 29.1.8 Custom Colors
10. Exercise 29.1.9 Create Your Own Music Visualization
30. ## Intro to CS: JavaScript Pretest

1. ### 30.1 Intro to CS: JavaScript Pretest

2. Notes 30.1.1 About the Pretest
3. Survey 30.1.2 Mindsets
4. Quiz 30.1.3 JavaScript Knowledge & Skills
31. ## JavaScript Level 1 Certification Practice

1. ### 31.1 JavaScript Syntax Update

2. Notes 31.1.1 JavaScript Syntax Update
3. Example 31.1.2 Syntax Comparison
4. Example 31.1.3 Re-declaring Variables: Let vs Var
5. Exercise 31.1.4 Name and Game
6. Quiz 31.1.5 JavaScript Syntax Update Quiz
7. ### 31.2 Practice #1: JavaScript Basics

8. Quiz 31.2.1 Quiz: JavaScript Basics
9. Notes 31.2.2 Practice #1 Reflection
10. ### 31.3 Practice #2: JavaScript Control Structures

11. Quiz 31.3.1 Quiz: JavaScript Control Structures
12. Notes 31.3.2 Practice #2 Reflection
13. ### 31.4 Practice #3: JavaScript Functions and Objects

14. Quiz 31.4.1 Quiz: JavaScript Functions and Objects
15. Notes 31.4.2 Practice #3 Reflection