### Please enable JavaScript to use CodeHS

West Virginia Discovering Computer Science

1. ## Exploring Code with Karel

1. ### 1.1 Introduction to 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. Video 1.1.4 Parentheses and Semicolons Intro
6. Exercise 1.1.5 Debug Karel's Code
7. Video 1.1.6 Debug Karel's Code
8. Exercise 1.1.7 Debug More of Karel's Code
9. Video 1.1.8 Debug More of Karel's Code
10. Exercise 1.1.9 Your First Karel Program
11. ### 1.2 Karel's World

12. Video 1.2.1 More About Karel
13. Check for Understanding 1.2.2 More Basic Karel Quiz
14. Example 1.2.3 Karel's Morning Walk
15. Exercise 1.2.4 Karel's Evening Walk
16. Debugging 1.2.5 Can't Reach the Tennis Ball
17. Exercise 1.2.6 Tennis Ball Game Setup
18. ### 1.3 Functions

19. Video 1.3.1 Karel Functions
20. Quiz 1.3.2 Functions Check for Understanding
21. Example 1.3.3 Climb the Stairs
22. Debugging 1.3.4 Spot the Bug 1
23. Debugging 1.3.5 Spot the Bug 2
24. Exercise 1.3.6 Spinning Karel
25. ### 1.4 Multiple Functions

26. Video 1.4.1 Top Down Design and Decomposition
27. Check for Understanding 1.4.2 Top Down Design and Decomposition Quiz
28. Video 1.4.3 Top Down Design and Decomposition in Karel
29. Example 1.4.4 Using the Main Function
30. Exercise 1.4.5 Tennis Ball Stacks
31. Example 1.4.6 Comments in Karel
32. Debugging 1.4.7 Clean Up
33. ### 1.5 For Loops

34. Video 1.5.1 For Loops
35. Check for Understanding 1.5.2 For Loops Quiz
36. Example 1.5.3 Repeated Move
37. Example 1.5.4 Draw a Line
38. Exercise 1.5.5 Pick Up Tennis Balls
39. Exercise 1.5.6 Draw Two Lines
40. Exercise 1.5.7 Tennis Ball in Each Corner
41. ### 1.6 Conditional Statements

42. Video 1.6.1 If Statements and Conditionals
43. Check for Understanding 1.6.2 If Statements and Conditionals Quiz
44. Example 1.6.3 If Statements and Conditionals
45. Debugging 1.6.4 Stay Out of the Lake
46. Exercise 1.6.5 Bury Tennis Balls
47. Exercise 1.6.6 Checkerboard Karel
48. ### 1.7 If/Else Statements

49. Video 1.7.1 If/Else Statements
50. Check for Understanding 1.7.2 If/Else Statements Quiz
51. Example 1.7.3 Opposite Day
52. Exercise 1.7.4 Build a Bridge
53. Debugging 1.7.5 Stay on the Path
54. Exercise 1.7.6 Dog Park Clean Up
56. ### 1.8 While Loops

57. Video 1.8.1 While Loops
58. Check for Understanding 1.8.2 While Loops Quiz
59. Example 1.8.3 Inside the Fence
60. Example 1.8.4 Run Home
61. Exercise 1.8.5 Path to Dog House
62. Debugging 1.8.6 Dive In!
63. Exercise 1.8.7 Clean Up
64. ### 1.9 Karel Challenges

65. Notes 1.9.1 Karel Challenges
66. Challenge 1.9.2 Fetch
67. Challenge 1.9.3 Karel's Race
68. Challenge 1.9.4 Building Bridges
69. Challenge 1.9.5 Super Tennis Ball Clean Up
71. ### 1.10 Exploring Code with Karel Quiz

72. Unit Quiz 1.10.1 Exploring Code with Karel Quiz
2. ## Exploring Computing

1. ### 2.1 History of Computing

2. Free Response 2.1.1 Life Without Computers
3. Article 2.1.2 The History of Computers
4. Connection 2.1.3 History of Computer Interaction
5. Free Response 2.1.4 Jigsaw: Computer Interaction Over the Decades
6. Free Response 2.1.5 Reflection: How do you interact with computers?
7. ### 2.2 Software

8. Article 2.2.1 Software
9. Article 2.2.2 How to Build a Game
10. Article 2.2.3 Steps to Create a Game
11. Exercise 2.2.4 One Pager: Operating Systems
12. ### 2.3 Hardware

13. Article 2.3.1 Computer Hardware
14. Video 2.3.2 Computer Peripheral Devices
15. Free Response 2.3.3 Brainstorm: New Computer Components
16. Free Response 2.3.4 Presentation: New Computer Components
17. ### 2.4 Computer Processing and Algorithms

18. Video 2.4.1 Computer Processing Operations
19. Check for Understanding 2.4.2 Computer Processing Operations Quiz
20. Article 2.4.3 Sequential vs. Parallel Activity
21. Free Response 2.4.4 Free Response: Sequential vs. Parallel
22. Article 2.4.5 Searching Algorithms
23. ### 2.5 Cloud Computing

24. Article 2.5.1 Introduction to Cloud Computing
25. Video 2.5.2 Cloud Computing Benefits
26. Article 2.5.3 Cloud or Physical?
27. Article 2.5.4 Case Study: Cloud Computing in Schools
28. Free Response 2.5.5 Reflection: Cloud Computing versus Physical Computing
29. ### 2.6 Internet of Things

30. Connection 2.6.1 What is the Internet of Things?
31. Free Response 2.6.2 Daily Interaction with IoT Devices
32. Article 2.6.3 Privacy Concerns and the Internet of Things
33. Free Response 2.6.4 Privacy Concerns and the Internet of Things
34. Free Response 2.6.5 Design an Internet of Things Device
35. ### 2.7 Ethics and Legal Considerations

36. Article 2.7.1 Legal, Ethics, and Bias in Computing
37. Article 2.7.2 Which Laws?
38. Connection 2.7.3 Self-driving Cars
39. Free Response 2.7.4 Self-driving Cars
40. Connection 2.7.5 Bias in Facial Recognition Software
41. Free Response 2.7.6 Bias in Facial Recognition Software
42. ### 2.8 The Future of Computing

43. Video 2.8.1 The Future of Computing
44. Quiz 2.8.2 Future of Computing
45. Connection 2.8.3 The Future of AI
46. Article 2.8.4 AI vs Human Intelligence
47. Free Response 2.8.5 The Impacts of AI on Your Future
48. Free Response 2.8.6 Computer Science Career Exploration
49. ### 2.9 Project: Design the Computer of Tomorrow

50. Free Response 2.9.1 Design the Computer of Tomorrow
51. Free Response 2.9.2 Peer Review
52. ### 2.10 Quiz: Exploring Computing

53. Quiz 2.10.1 Exploring Computing
3. ## Exploring Simulations

1. ### 3.1 Gravity Simulation

2. Free Response 3.1.1 Exploring Simulations
3. Video 3.1.2 JavaScript Gravity Simulation
4. Example 3.1.3 Our First Planet
5. Quiz 3.1.4 JavaScript Basics
6. Exercise 3.1.5 Solar System
7. Exercise 3.1.6 Turning On Gravity
8. Free Response 3.1.7 Gravity Observations
4. ## Exploring the Internet

1. ### 4.1 What is the Internet?

2. Video 4.1.1 What is the Internet?
3. Video 4.1.2 The History of the Internet
4. Free Response 4.1.3 Internet Innovations
5. Video 4.1.4 The Internet is in the Ocean
6. Free Response 4.1.5 A Day Without the Internet
7. ### 4.2 The Need for Protocols

8. Notes 4.2.1 The Alphabet Game
9. Free Response 4.2.2 Alphabet Game Reflection
10. Notes 4.2.3 The Networking Game
11. Free Response 4.2.4 Networking Game Reflection
12. Free Response 4.2.5 Protocols in your Life
13. Video 4.2.6 Network Simulation
14. ### 4.3 Impact of the Internet

15. Free Response 4.3.1 Internet in My Daily Life
16. Video 4.3.2 Impact of the Internet
17. Free Response 4.3.3 Back in Time
18. Connection 4.3.4 What is the Digital Divide?
19. Free Response 4.3.5 What is the Digital Divide?
20. Exercise 4.3.6 Four Hats Reflection
21. ### 4.4 Cybersecurity

22. Video 4.4.1 Cybersecurity
24. Free Response 4.4.3 Cybersecurity and You
25. Connection 4.4.4 Internet of Things
26. Connection 4.4.5 Hackers vs. Smart Homes
27. Free Response 4.4.6 Internet of Things Reflection
28. Article 4.4.7 Ransomware Simulation
29. Article 4.4.8 Phishing Simulator
30. Free Response 4.4.9 Cyber Defense 3-2-1
31. ### 4.5 The CIA Triad

33. Check for Understanding 4.5.2 CIA Triad
34. Free Response 4.5.3 Which part of the CIA Triad?
35. Free Response 4.5.4 Which part of the CIA Triad?
36. Free Response 4.5.5 Breach of Confidentiality
37. Free Response 4.5.6 Breach of Availability
38. Free Response 4.5.7 CIA Connections
39. ### 4.6 Encryption

40. Free Response 4.6.1 What is Cryptography?
41. Video 4.6.2 Cryptography: A Brief History
42. Article 4.6.3 Cryptogram Game!
43. Article 4.6.4 Encrypt/Decrypt
44. Notes 4.6.5 Using the Caesar Cipher
45. Article 4.6.6 Caesar Cipher Encryption
46. Article 4.6.7 Decrypt Caesar's Cipher!
47. Article 4.6.8 Cracking Caesar Program
48. Free Response 4.6.9 Security Tradeoffs
49. ### 4.7 Project: Steganography

50. Video 4.7.1 What is Steganography?
51. Notes 4.7.2 Hidden Message Instructions
52. Example 4.7.3 Hidden Message
54. Challenge 4.7.5 Your turn: Image Creation
55. Free Response 4.7.6 Partner Decrypt and Final Reflection
56. ### 4.8 Exploring the Internet Quiz

57. Quiz 4.8.1 Exploring the Internet Quiz
5. ## Exploring Art with Code

1. ### 5.1 Getting Started

2. Video 5.1.1 What is Creative Coding
3. Connection 5.1.2 p5.js Reference Guide
4. Video 5.1.3 Drawing and Shapes
5. Exercise 5.1.4 Create a Canvas
6. Connection 5.1.5 Canvas Coordinates
7. Exercise 5.1.6 Line
8. Exercise 5.1.7 Rectangle
9. Exercise 5.1.8 Ellipse
10. ### 5.2 Color

11. Video 5.2.1 Color
12. Connection 5.2.2 Create a Color Palette
13. Connection 5.2.3 Hex to RGB Color Converter
14. Example 5.2.4 Using RGB Values
15. Exercise 5.2.5 Background Color
16. Exercise 5.2.6 Fill
17. Exercise 5.2.7 Stroke
18. ### 5.3 Variables

19. Video 5.3.1 Variables
20. Example 5.3.2 Using Variables: Bricks
21. Exercise 5.3.3 Making Variables
22. Exercise 5.3.4 Reusing Variables
23. Exercise 5.3.5 Width and Height
24. ### 5.4 The Draw Loop

25. Video 5.4.1 The Draw Loop
26. Connection 5.4.2 A Brief History of Animation
27. Exercise 5.4.3 Frame Rate
28. Exercise 5.4.4 No Loop
29. Exercise 5.4.5 Frame Count
30. ### 5.5 Color Transitions

31. Video 5.5.1 Animated Color Transitions
34. Exercise 5.5.4 Grayscale to Color
35. Exercise 5.5.5 Color to Grayscale
36. ### 5.6 Shape Transformations

37. Video 5.6.1 Shape Transformations
38. Exercise 5.6.2 Translation
39. Exercise 5.6.3 Animated Translation
40. Exercise 5.6.4 Rotation
41. Exercise 5.6.5 Animated Rotation
42. Exercise 5.6.6 Scale
43. Exercise 5.6.7 Animated Scale
44. ### 5.7 Direction

45. Video 5.7.1 Direction
46. Exercise 5.7.2 Up and Down
47. Exercise 5.7.3 Left and Right
48. Exercise 5.7.4 Diagonal
49. ### 5.8 Mouse Data

50. Video 5.8.1 Mouse Data
51. Exercise 5.8.2 mouseX
52. Exercise 5.8.3 mouseY
53. Exercise 5.8.4 mouseX and mouseY
54. Exercise 5.8.5 mouseButton
55. Exercise 5.8.6 Paint and Erase
56. ### 5.9 Keyboard Data

57. Video 5.9.1 Keyboard Data
58. Exercise 5.9.2 keyIsPressed
59. Connection 5.9.3 Key Codes
60. Exercise 5.9.4 keyIsDown
61. Exercise 5.9.5 key
62. ### 5.10 Project: Animate an Emoji

63. Exercise 5.10.1 Project: Animate an Emoji
6. ## Exploring Digital Citizenship

1. ### 6.1 Digital Footprint and Reputation

2. Video 6.1.1 Digital Footprint and Reputation
3. Quiz 6.1.2 Digital Footprint and Reputation
4. Free Response 6.1.3 Building a Positive Digital Footprint
5. Connection 6.1.4 Right to be Forgotten?
6. Free Response 6.1.5 Right to be Forgotten
7. Free Response 6.1.6 What is your Digital Footprint?
8. Example 6.1.7 Social Media Clean-up
9. ### 6.2 Cyberbullying

10. Video 6.2.1 Cyberbullying
11. Quiz 6.2.2 Cyberbullying
12. Free Response 6.2.3 Scenario: Student Ranking
13. Free Response 6.2.4 Scenario: Singled Out
14. Free Response 6.2.5 Stopping Cyberbullying
15. ### 6.3 Internet Safety

16. Video 6.3.1 Internet Safety
17. Quiz 6.3.2 Internet Safety
18. Free Response 6.3.3 Scenario: School Stranger
19. Free Response 6.3.4 Scenario: Vacation Pals
20. Free Response 6.3.5 Staying Safe
21. ### 6.4 Privacy & Security

22. Video 6.4.1 What is Data Privacy & Security?
23. Quiz 6.4.2 Privacy & Security Quiz
28. Example 6.4.7 Guess: Password List
29. Example 6.4.8 Guess: Using an Algorithm
30. Example 6.4.9 Guess: Brute Force
31. ### 6.5 Information Literacy

32. Video 6.5.1 Information Literacy
33. Quiz 6.5.2 Information Literacy
34. Free Response 6.5.3 Effective Internet Searches
35. Connection 6.5.4 Evaluate the Source 1
36. Free Response 6.5.5 Respond: Evaluate the Source 1
37. Connection 6.5.6 Evaluate the Source 2
38. Free Response 6.5.7 Respond: Evaluate the Source 2
39. Connection 6.5.8 Hero Pig?
40. ### 6.6 Creative Credit & Copyright

41. Video 6.6.1 Creative Credit and Copyright
42. Quiz 6.6.2 Creative Credit and Copyright
43. Free Response 6.6.3 Cite!
44. Connection 6.6.4 Exploring Creative Commons
45. Free Response 6.6.5 Respond: Creative Commons
46. Free Response 6.6.6 Task: Finding Images
47. Free Response 6.6.7 Reflection: Why is Copyright Important?
48. ### 6.7 Hacking Ethics

49. Video 6.7.1 Hacking Ethics & Legality
50. Quiz 6.7.2 Hacking Ethics & Legality
51. Connection 6.7.3 Penetration Testing
52. Free Response 6.7.4 Reflection: Penetration Testing
53. Connection 6.7.5 Hack the Pentagon?
54. Free Response 6.7.6 Reflection: Hack the Pentagon
55. Quiz 6.7.7 Ethical Hacker Agreement
56. ### 6.8 Project: Public Service Announcement

57. Notes 6.8.1 Project Introduction
58. Free Response 6.8.2 Pick a Topic
59. Free Response 6.8.3 Timeline & Team Roles
60. Free Response 6.8.4 Research
61. Free Response 6.8.5 Choose Your Audience
62. Free Response 6.8.6 What kind of PSA?
63. Free Response 6.8.7 Draft your PSA
64. Free Response 6.8.8 Finalize and Present Your PSA!
65. ### 6.9 Digital Citizenship and Cyber Hygiene Quiz

66. Quiz 6.9.1 Digital Citizenship and Cyber Hygiene Quiz
7. ## Exploring Digital Information

1. ### 7.1 Intro to Digital Information

2. Video 7.1.1 What is Digital Information?
3. Check for Understanding 7.1.2 What is Digital Information Quiz
4. Example 7.1.3 Fast Food Menu
5. Free Response 7.1.4 Reflection: Encodings Everywhere
6. ### 7.2 Number Systems

7. Video 7.2.1 Number Systems
8. Notes 7.2.2 Number Base Tool
9. Check for Understanding 7.2.3 Number Systems Quiz
10. Video 7.2.4 Decimal to Binary
11. Check for Understanding 7.2.5 Decimal to Binary Quiz
12. Exercise 7.2.6 Binary Game
13. ### 7.3 Encoding Text with Binary

14. Video 7.3.1 Encoding Text with Binary
15. Check for Understanding 7.3.2 Encoding Text with Binary Quiz
16. Example 7.3.3 Custom Encoding
17. Example 7.3.4 Bits to ASCII
18. Exercise 7.3.5 Hello World in Bits
19. Exercise 7.3.6 Create your own Encoding
21. ### 7.4 Pixel Images

22. Video 7.4.1 Pixel Images
23. Check for Understanding 7.4.2 Pixel Images Quiz
24. Resource 7.4.3 Creating Pixel Images
25. Example 7.4.4 CodeHS Logo
26. Exercise 7.4.5 Checkerboard
28. Exercise 7.4.7 Create an Image!

31. Check for Understanding 7.5.2 Hexadecimal Quiz
32. Exercise 7.5.3 Binary to Hex Game
33. ### 7.6 Pixel Colors!

34. Video 7.6.1 Pixel Colors
35. Check for Understanding 7.6.2 Pixel Colors Quiz
36. Example 7.6.3 Colors in Bits
37. Exercise 7.6.4 Exploring RGB
38. Exercise 7.6.5 Making Yellow
39. Exercise 7.6.6 Rainbow
40. Exercise 7.6.7 Create a Color Image!
41. ### 7.7 Image Manipulation

42. Video 7.7.1 Manipulating Images
43. Check for Understanding 7.7.2 Manipulating Images Quiz
44. Video 7.7.3 Programming with WebImage
45. Check for Understanding 7.7.4 Programming with WebImage Quiz
46. Example 7.7.5 Black and White Filter
47. Example 7.7.6 Brighten Filter
48. Example 7.7.7 Saturation Filter
49. Example 7.7.8 Pixel Picker