Please enable JavaScript to use CodeHS

Praxis CS Exam Prep (2022) - Outline

  1. Welcome to the CodeHS Praxis Prep Course!

    1. 1.1 Welcome to the CodeHS Praxis Course

    2. Video 1.1.1 Welcome to the CodeHS Praxis CS Exam Prep Course
    3. Video 1.1.2 The Praxis Exam
    4. Notes 1.1.3 How to Take This Course
    5. Video 1.1.4 How to Get Help!
    6. Video 1.1.5 Creativity and Innovation in Computing
  2. Introduction to Programming in Java with Karel the Dog

    1. 2.1 Introduction to Programming With Karel

    2. Video 2.1.1 In this Unit...
    3. Video 2.1.2 Introduction to Programming With Karel
    4. Example 2.1.3 Our First Karel Program
    5. Exercise 2.1.4 Your First Karel Program
    6. Check for Understanding 2.1.5 Quiz: Karel Commands
    7. 2.2 More Basic Karel

    8. Video 2.2.1 More Basic Karel
    9. Example 2.2.2 Tennis Ball Square
    10. Exercise 2.2.3 Make a Tower
    11. Check for Understanding 2.2.4 More Basic Karel
    12. 2.3 Java Programs and the Run Method

    13. Video 2.3.1 Writing a Java Program
    14. Example 2.3.2 Square Karel
    15. Exercise 2.3.3 Maze Karel
    16. Check for Understanding 2.3.4 Run Method
    17. 2.4 Karel Can't Turn Right

    18. Video 2.4.1 Karel Can't Turn Right
    19. Example 2.4.2 Tower and Turn Right
    20. Exercise 2.4.3 Fireman Karel
    21. Check for Understanding 2.4.4 Karel Can't Turn Right
    22. Badge 2.4.5 Right Turn Karel Badge
    23. 2.5 Methods in Karel

    24. Video 2.5.1 Methods in Karel
    25. Example 2.5.2 Turn Around
    26. Exercise 2.5.3 Planting Bushes
    27. Check for Understanding 2.5.4 Methods in Karel
    28. 2.6 Top Down Design and Decomposition in Karel

    29. Video 2.6.1 Top Down Design and Decomposition in Karel
    30. Example 2.6.2 Hurdle Karel
    31. Exercise 2.6.3 The Two Towers
    32. Check for Understanding 2.6.4 Top Down Design and Decomposition
    33. 2.7 Commenting Your Code

    34. Video 2.7.1 Commenting Your Code
    35. Example 2.7.2 Hurdle Karel (Comments)
    36. Check for Understanding 2.7.3 Commenting Your Code
    37. 2.8 Super Karel

    38. Video 2.8.1 Super Karel
    39. Example 2.8.2 Hurdle Karel (with SuperKarel)
    40. Exercise 2.8.3 The Two Towers + SuperKarel
    41. Check for Understanding 2.8.4 Super Karel
    42. Badge 2.8.5 Super Karel Badge
    43. 2.9 For Loops

    44. Video 2.9.1 For Loops
    45. Example 2.9.2 Repeated Move
    46. Example 2.9.3 Put Down Tennis Balls
    47. Exercise 2.9.4 Take 'em All
    48. Exercise 2.9.5 Dizzy Karel
    49. Check for Understanding 2.9.6 For Loops
    50. 2.10 While Loops in Karel

    51. Video 2.10.1 While Loops in Karel
    52. Example 2.10.2 Move to Wall
    53. Exercise 2.10.3 Follow The Yellow Ball Road
    54. Exercise 2.10.4 Big Tower
    55. Check for Understanding 2.10.5 While Loops in Karel
    56. 2.11 If Statements

    57. Video 2.11.1 If Statements
    58. Example 2.11.2 If Statements
    59. Example 2.11.3 Safe Take Ball
    60. Exercise 2.11.4 Is There a Ball?
    61. Check for Understanding 2.11.5 If Statements Quiz
    62. 2.12 If/Else Statements

    63. Video 2.12.1 If/Else Statements
    64. Example 2.12.2 Flip Karel
    65. Exercise 2.12.3 Fix It Karel
    66. Check for Understanding 2.12.4 If/Else Statements
    67. Badge 2.12.5 Conditional Karel Badge
    68. 2.13 Control Structures Example

    69. Video 2.13.1 Control Structures Example
    70. Example 2.13.2 Cleanup Karel
    71. Exercise 2.13.3 Random Hurdles
    72. Check for Understanding 2.13.4 Control Structures Example
    73. 2.14 More Karel Examples and Testing

    74. Video 2.14.1 More Karel Examples and Testing
    75. Example 2.14.2 Move Tennis Ball Stack
    76. Example 2.14.3 Climbing Karel
    77. 2.15 How to Indent Your Code

    78. Video 2.15.1 How to Indent Your Code
    79. Example 2.15.2 Dance and Clean Karel
    80. Check for Understanding 2.15.3 How to Indent Your Code
    81. Badge 2.15.4 Karel Exercises Badge
    82. 2.16 Unit 1 Quiz

    83. Unit Quiz 2.16.1 Java Unit 1
  3. Basic Java

    1. 3.1 Programming Languages

    2. Video 3.1.1 In this Unit...
    3. Video 3.1.2 Programming Languages
    4. Connection 3.1.3 Compilers vs. Interpreters
    5. Check for Understanding 3.1.4 Programming Languages Quiz
    6. 3.2 Organizational Techniques

    7. Video 3.2.1 Organizational Techniques
    8. Example 3.2.2 Hurdle
    9. Example 3.2.3 Interactive Sequence Diagram
    10. Exercise 3.2.4 One Ball in Each Spot
    11. Check for Understanding 3.2.5 Organizational Techniques
    12. 3.3 Printing in Java

    13. Video 3.3.1 Printing in Java
    14. Example 3.3.2 Hello world
    15. Example 3.3.3 Printing Multiple Lines
    16. Exercise 3.3.4 Welcome Program
    17. Video 3.3.5 Syntax Errors
    18. Exercise 3.3.6 Where's the Error?
    19. Check for Understanding 3.3.7 Printing in Java
    20. 3.4 Variables and Types

    21. Video 3.4.1 Variables and Types
    22. Example 3.4.2 Variables
    23. Exercise 3.4.3 Initializing Variables
    24. Check for Understanding 3.4.4 Variables and Types
    25. 3.5 User Input

    26. Video 3.5.1 User Input
    27. Example 3.5.2 UserInput
    28. Exercise 3.5.3 About You
    29. Check for Understanding 3.5.4 User Input
    30. 3.6 Arithmetic Expressions

    31. Video 3.6.1 Arithmetic Expressions
    32. Example 3.6.2 Calculator
    33. Example 3.6.3 Tricky Java
    34. Exercise 3.6.4 Area of a Rectangle
    35. Check for Understanding 3.6.5 Arithmetic Expressions
    36. 3.7 Casting

    37. Video 3.7.1 Casting
    38. Example 3.7.2 Casting
    39. Example 3.7.3 Casting Order of Operations
    40. Example 3.7.4 Rounding using Casting
    41. Exercise 3.7.5 Casting to an Int
    42. Exercise 3.7.6 Casting to a Double
    43. Check for Understanding 3.7.7 Casting
    44. 3.8 Mid Unit Quiz

    45. Unit Quiz 3.8.1 Mid Unit Quiz
    46. 3.9 Booleans

    47. Video 3.9.1 Booleans
    48. Example 3.9.2 Boolean Example
    49. Exercise 3.9.3 Ice Cream
    50. Check for Understanding 3.9.4 Booleans
    51. 3.10 Logical Operators

    52. Video 3.10.1 Logical Operators
    53. Example 3.10.2 Light Switch
    54. Exercise 3.10.3 Roller Coaster
    55. Check for Understanding 3.10.4 Logical Operators
    56. 3.11 Comparison Operators

    57. Video 3.11.1 Comparison Operators
    58. Example 3.11.2 Grade Range
    59. Video 3.11.3 Logic Errors and Data Test Sets
    60. Exercise 3.11.4 Triple Double
    61. Check for Understanding 3.11.5 Comparison Operators
    62. 3.12 For Loops

    63. Video 3.12.1 For Loops
    64. Example 3.12.2 The For Loop
    65. Exercise 3.12.3 Repeat 1000 Times
    66. Video 3.12.4 General For Loop
    67. Example 3.12.5 Countdown
    68. Example 3.12.6 Count By Twos
    69. Video 3.12.7 For Loop Examples
    70. Example 3.12.8 For Loop Sum
    71. Exercise 3.12.9 Pseudocode Activity [For Loops]
    72. Check for Understanding 3.12.10 For Loops
    73. 3.13 While Loops

    74. Video 3.13.1 While Loops
    75. Example 3.13.2 While Loop Countdown
    76. Exercise 3.13.3 Making Taffy
    77. Exercise 3.13.4 Pseudocode Activity [While Loops]
    78. Check for Understanding 3.13.5 While Loops
    79. 3.14 If Statements

    80. Video 3.14.1 If Statements
    81. Example 3.14.2 Negative Numbers
    82. Example 3.14.3 Even and Odd
    83. Exercise 3.14.4 Parking Discount
    84. Exercise 3.14.5 Find the Minimum
    85. Exercise 3.14.6 Pseudocode Activity [IF Statements]
    86. Check for Understanding 3.14.7 If Statements
    87. Quiz 3.14.8 Flowchart [If Statements]
    88. 3.15 Nested Iterations

    89. Video 3.15.1 Nested Iteration
    90. Example 3.15.2 Make a Rectangle
    91. Example 3.15.3 Nested Loop Iteration Counts
    92. Example 3.15.4 Inverted Triangle
    93. Exercise 3.15.5 Pseudocode Activity [Nested Loops Statements]
    94. Check for Understanding 3.15.6 Nested Iteration
    95. Quiz 3.15.7 Flowchart [Nesting]
    96. 3.16 Loop-and-a-Half

    97. Video 3.16.1 Loop-and-a-Half
    98. Example 3.16.2 Running Average
    99. Exercise 3.16.3 Guess the Number
    100. Exercise 3.16.4 Pseudocode Activity [Loop and Half]
    101. Check for Understanding 3.16.5 Loop-and-a-Half Quiz
    102. Quiz 3.16.6 Flowchart [Loop And a Half]
    103. 3.17 Short-Circuit Evaluation

    104. Video 3.17.1 Short-Circuit Evaluation
    105. Example 3.17.2 Pizza Slices
    106. Exercise 3.17.3 Divisibility
    107. Check for Understanding 3.17.4 Short-Circuit Evaluation Quiz
    108. 3.18 DeMorgan's Laws

    109. Video 3.18.1 De Morgan's Laws
    110. Example 3.18.2 De Morgan AND
    111. Example 3.18.3 De Morgan OR
    112. Exercise 3.18.4 Amusement Park
    113. Check for Understanding 3.18.5 De Morgan's Laws Quiz
    114. 3.19 String Types

    115. Video 3.19.1 Strings
    116. Example 3.19.2 Comparing Strings
    117. Exercise 3.19.3 Three Strings
    118. Check for Understanding 3.19.4 Strings
    119. 3.20 Basic Java Quiz

    120. Unit Quiz 3.20.1 Basic Java Quiz
  4. Methods

    1. 4.1 Java Methods

    2. Video 4.1.1 In this Unit
    3. Video 4.1.2 Java Methods
    4. Example 4.1.3 Print Line Break
    5. Exercise 4.1.4 Print Karel
    6. Check for Understanding 4.1.5 Java Methods
    7. 4.2 Methods and Parameters

    8. Video 4.2.1 Methods and Parameters
    9. Example 4.2.2 Line Breaks with Parameters
    10. Example 4.2.3 Sum
    11. Exercise 4.2.4 Product
    12. Check for Understanding 4.2.5 Methods and Parameters
    13. 4.3 Methods and Return Values

    14. Video 4.3.1 Methods and Return Values
    15. Example 4.3.2 Methods and Return Values
    16. Exercise 4.3.3 Average
    17. Exercise 4.3.4 Sum Range
    18. Check for Understanding 4.3.5 Return Value
    19. 4.4 Javadocs & More Methods

    20. Video 4.4.1 Javadocs
    21. Example 4.4.2 Javadoc Sum
    22. Badge 4.4.3 Methods Badge
    23. 4.5 String Methods

    24. Video 4.5.1 String Methods
    25. Example 4.5.2 Looping Over a String
    26. Exercise 4.5.3 Yelling
    27. Check for Understanding 4.5.4 String Methods
    28. 4.6 Exceptions

    29. Video 4.6.1 Exceptions
    30. Example 4.6.2 Arithmetic Exception
    31. Example 4.6.3 Index Out Of Bounds Exception
    32. Exercise 4.6.4 Bug Hunter
    33. Check for Understanding 4.6.5 Exceptions Quiz
    34. 4.7 Methods Quiz

    35. Unit Quiz 4.7.1 Methods Quiz
  5. Classes and Object-Oriented Programming

    1. 5.1 Intro to Classes and Objects

    2. Video 5.1.1 In this Unit
    3. Video 5.1.2 What is a Class?
    4. Example 5.1.3 The Rectangle Class
    5. Example 5.1.4 The Point Class
    6. Example 5.1.5 The Student Class
    7. Check for Understanding 5.1.6 Quiz: Classes and Objects
    8. 5.2 Classes vs. Objects

    9. Video 5.2.1 Classes and Objects
    10. Example 5.2.2 Classes, Objects, and Instances
    11. Example 5.2.3 Creating Rectangle Objects
    12. Check for Understanding 5.2.4 Classes vs. Objects vs. Instances
    13. 5.3 Using a Class as a Client

    14. Video 5.3.1 How to Use a Class
    15. Example 5.3.2 Using the Rectangle Class as a Client
    16. Example 5.3.3 Using the Randomizer Class as a Client
    17. Example 5.3.4 Testing the GeoLocation Class
    18. Exercise 5.3.5 Make Rectangle Grow
    19. Check for Understanding 5.3.6 Quiz: Client of a Class
    20. 5.4 Writing Classes

    21. Video 5.4.1 Constructors
    22. Example 5.4.2 Rectangle Class
    23. Example 5.4.3 Student Class
    24. Exercise 5.4.4 Instance Variables for Your Dog
    25. Check for Understanding 5.4.5 Quiz: Constructors & Instance Variables
    26. 5.5 Writing Classes and Instance Methods

    27. Video 5.5.1 Writing Instance Methods
    28. Example 5.5.2 Area of a Rectangle
    29. Example 5.5.3 Moving a Point
    30. Exercise 5.5.4 Writing getPerimeter()
    31. Check for Understanding 5.5.5 Quiz: Writing Methods
    32. 5.6 Getter and Setter Methods

    33. Video 5.6.1 Getter and Setter Methods
    34. Example 5.6.2 Rectangle Getter (Accessor) Methods
    35. Example 5.6.3 Student Setter (Mutator) Method
    36. Exercise 5.6.4 Complete the Dragon Class
    37. Check for Understanding 5.6.5 Quiz: Getter and Setter Methods
    38. 5.7 Class Methods and Class Variables

    39. Video 5.7.1 Class Methods and Class Variables
    40. Example 5.7.2 Student Class Variables and Methods
    41. Example 5.7.3 Using the Math Class
    42. Debugging 5.7.4 Static SuperHero
    43. Debugging 5.7.5 Batteries
    44. Check for Understanding 5.7.6 Quiz: Static Methods
    45. 5.8 Method Overloading

    46. Video 5.8.1 Method Overloading
    47. Example 5.8.2 Sum Method Overloading
    48. Example 5.8.3 Constructor Overloading
    49. Check for Understanding 5.8.4 Method Overloading Quiz
    50. 5.9 Local Variables and Scope

    51. Video 5.9.1 Scope and Access
    52. Example 5.9.2 Instance Variable Scope
    53. Example 5.9.3 Local Variable Scope
    54. Example 5.9.4 Variable Shadowing
    55. Check for Understanding 5.9.5 Local Variables and Scope Quiz
    56. 5.10 Key Terms for Classes

    57. Video 5.10.1 Key Terms for Classes
    58. Example 5.10.2 Rectangles and this
    59. Debugging 5.10.3 Dog with this
    60. Check for Understanding 5.10.4 Quiz: Key Terms
    61. 5.11 Objects vs. Primitives

    62. Video 5.11.1 Objects vs Primitives
    63. Example 5.11.2 Comparing Rectangles
    64. Example 5.11.3 Changing Dogs
    65. Example 5.11.4 Null Pointer Exception
    66. Exercise 5.11.5 Comparing Circles
    67. Check for Understanding 5.11.6 Objects vs Primitives Quiz
    68. 5.12 Inheritance

    69. Video 5.12.1 Inheritance
    70. Example 5.12.2 Square is a Rectangle
    71. Check for Understanding 5.12.3 Quiz: Subclasses and Superclasses
    72. 5.13 Polymorphism

    73. Video 5.13.1 Polymorphism
    74. Example 5.13.2 Animal Sounds
    75. Example 5.13.3 Shape Areas
    76. Check for Understanding 5.13.4 Quiz: Polymorphism
    77. 5.14 Classes and OOP Quiz

    78. Unit Quiz 5.14.1 Classes and Object-Oriented Programming Quiz
  6. Data Structures

    1. 6.1 What are Data Structures

    2. Video 6.1.1 In this Unit
    3. Video 6.1.2 What are Data Structures?
    4. Check for Understanding 6.1.3 Quiz: Data Structures
    5. 6.2 Introduction to Arrays

    6. Video 6.2.1 Introduction to Arrays
    7. Example 6.2.2 Making an Array
    8. Example 6.2.3 Make an Empty Array
    9. Example 6.2.4 Indexing Into an Array
    10. Check for Understanding 6.2.5 Quiz: Arrays
    11. 6.3 Using Arrays

    12. Video 6.3.1 Using Arrays
    13. Example 6.3.2 Iterating Over an Array
    14. Example 6.3.3 Sum Array
    15. Example 6.3.4 Array Out of Bounds
    16. Example 6.3.5 Array References
    17. Debugging 6.3.6 Print Odd Array Indices
    18. Check for Understanding 6.3.7 Quiz: Using Arrays
    19. 6.4 Enhanced for Loops

    20. Video 6.4.1 Enhanced For Loops
    21. Example 6.4.2 Enhanced For Loop
    22. Example 6.4.3 Classroom Array
    23. Example 6.4.4 Updating Values in a Loop
    24. Debugging 6.4.5 Largest Value
    25. Check for Understanding 6.4.6 Enhanced For Loop
    26. 6.5 Wrapper Classes

    27. Video 6.5.1 Wrapper Classes
    28. Check for Understanding 6.5.2 Quiz: Wrapper Classes
    29. 6.6 ArrayLists & Methods

    30. Video 6.6.1 ArrayLists
    31. Example 6.6.2 Hello World ArrayList
    32. Example 6.6.3 ArrayList and Java Primitives
    33. Example 6.6.4 ArrayList Size Method
    34. Example 6.6.5 Reading List
    35. Exercise 6.6.6 Get First Element
    36. Check for Understanding 6.6.7 Quiz: ArrayList
    37. 6.7 Arrays vs ArrayLists

    38. Video 6.7.1 Arrays vs ArrayLists
    39. Exercise 6.7.2 Where does it belong?
    40. Check for Understanding 6.7.3 Quiz: Arrays vs ArrayList
    41. 6.8 2D Arrays

    42. Video 6.8.1 2D Arrays
    43. Example 6.8.2 Initializing a 2D Array
    44. Free Response 6.8.3 Initializing a 2D Array
    45. Check for Understanding 6.8.4 Quiz: 2D Arrays
    46. 6.9 Traversing 2D Arrays

    47. Video 6.9.1 Traversing 2D Arrays
    48. Example 6.9.2 Traversing Gradebook
    49. Example 6.9.3 Linear Search 2D Arrays
    50. Free Response 6.9.4 Linear Search 2D Arrays
    51. Check for Understanding 6.9.5 Quiz: Traversing 2D Arrays
    52. 6.10 HashMaps

    53. Video 6.10.1 HashMaps
    54. Example 6.10.2 The Phonebook
    55. Debugging 6.10.3 Debug The Phonebook
    56. Check for Understanding 6.10.4 Quiz: HashMaps
    57. 6.11 Data Structures Quiz

    58. Unit Quiz 6.11.1 Data Structures Quiz
  7. Algorithms and Recursion

    1. 7.1 What is an Algorithm?

    2. Video 7.1.1 What is an Algorithm?
    3. 7.2 Linear Search

    4. Video 7.2.1 Linear Search
    5. Example 7.2.2 Linear Search
    6. Example 7.2.3 Linear Search on ArrayList
    7. 7.3 Binary Search

    8. Video 7.3.1 Binary Search
    9. Example 7.3.2 Binary Search
    10. Example 7.3.3 Comparing Binary Search and Linear Search
    11. Check for Understanding 7.3.4 Binary Search
    12. Badge 7.3.5 Binary Search Badge
    13. 7.4 Selection Sort

    14. Video 7.4.1 Selection Sort
    15. Example 7.4.2 Selection Sort
    16. Example 7.4.3 Visualizing Algorithms
    17. Example 7.4.4 Explore Selection Sort
    18. Check for Understanding 7.4.5 Selection Sort
    19. 7.5 Insertion Sort

    20. Video 7.5.1 Insertion Sort
    21. Example 7.5.2 Visualizing Algorithms
    22. Example 7.5.3 Insertion Sort
    23. Check for Understanding 7.5.4 Insertion Sort
    24. 7.6 Recursion

    25. Video 7.6.1 Recursion
    26. Example 7.6.2 Factorial
    27. Video 7.6.3 Recursion Walkthrough
    28. Example 7.6.4 Recursion Example
    29. Example 7.6.5 Recursive Binary Search
    30. Example 7.6.6 Fibonacci Recursive
    31. AP Practice 7.6.7 Recursion
    32. 7.7 Mergesort

    33. Video 7.7.1 Mergesort
    34. Example 7.7.2 Visualizing Algorithms
    35. Example 7.7.3 Merge Sort
    36. Badge 7.7.4 Algorithms Badge
    37. 7.8 Informal Code Analysis

    38. Video 7.8.1 Informal Code Analysis
    39. Example 7.8.2 Loop Execution Count
    40. Example 7.8.3 While Loop Time
    41. Example 7.8.4 For Loop Time
    42. Check for Understanding 7.8.5 Informal Code Analysis
    43. 7.9 Algorithms and Recursion Quiz

    44. Unit Quiz 7.9.1 Algorithms and Recursion Quiz
  8. What is Computing?

    1. 8.1 History of Computers

    2. Video 8.1.1 In the Upcoming Units
    3. Video 8.1.2 History of Computers
    4. Notes 8.1.3 Who invented the computer?
    5. Connection 8.1.4 Exhibit A: Charles Babbage
    6. Connection 8.1.5 Exhibit B: Ada Lovelace
    7. Connection 8.1.6 Exhibit C: Alan Turing
    8. Connection 8.1.7 Exhibit D: Mauchly and Eckert
    9. Connection 8.1.8 Exhibit E: ENIAC Programmers
    10. Connection 8.1.9 Exhibit F: Grace Hopper
    11. Connection 8.1.10 Exhibit G: Mark Dean
    12. Connection 8.1.11 Bonus Exhibit: Computer Inventors
    13. Check for Understanding 8.1.12 Video Quiz
    14. 8.2 Computer Organization

    15. Video 8.2.1 Computer Organization
    16. Check for Understanding 8.2.2 Computer Organization Quiz
    17. 8.3 Software

    18. Video 8.3.1 Software
    19. Connection 8.3.2 Software Explained
    20. Check for Understanding 8.3.3 Software Quiz
    21. 8.4 Hardware

    22. Video 8.4.1 Hardware
    23. Check for Understanding 8.4.2 Hardware Quiz
    24. Badge 8.4.3 Hardware Badge
    25. 8.5 Future of Computing

    26. Video 8.5.1 Future of Computing
    27. Connection 8.5.2 Using DNA for Storage
    28. Connection 8.5.3 Pros and Cons of AI
    29. Check for Understanding 8.5.4 Future of Computing
    30. 8.6 Ethical and Social Implications of Computing

    31. Video 8.6.1 Implications of Computing Systems
    32. Free Response 8.6.2 ACM General Ethical Principles
    33. Connection 8.6.3 Bias in Facial Recognition
    34. Connection 8.6.4 Self-driving Cars
    35. Check for Understanding 8.6.5 Quiz: Ethical and Social Impact
    36. 8.7 What is Computing? Quiz

    37. Unit Quiz 8.7.1 What is Computing? Quiz
  9. Digital Information

    1. 9.1 What is Code?

    2. Video 9.1.1 What is Code?
    3. Connection 9.1.2 What is Software
    4. 9.2 Intro to Digital Information

    5. Video 9.2.1 What is Digital Information?
    6. Example 9.2.2 Fast Food Menu
    7. Example 9.2.3 DNA
    8. Check for Understanding 9.2.4 What is Digital Information Quiz
    9. 9.3 Number Systems

    10. Video 9.3.1 Binary to Decimal
    11. Video 9.3.2 Decimal to Binary
    12. Notes 9.3.3 Number Base Tool
    13. Exercise 9.3.4 Decimal to Binary Practice
    14. Check for Understanding 9.3.5 Number Systems Quiz
    15. 9.4 Encoding Text with Binary

    16. Video 9.4.1 Encoding Text with Binary
    17. Video 9.4.2 Encoding Text with Binary, Pt. 2
    18. Example 9.4.3 Morse Code
    19. Example 9.4.4 Decoding a Binary Message
    20. Example 9.4.5 2-bit Custom Encoding
    21. Example 9.4.6 Bits to ASCII
    22. Check for Understanding 9.4.7 Encoding Text with Binary Quiz
    23. Badge 9.4.8 Encoding Badge
    24. 9.5 Pixel Images

    25. Video 9.5.1 Pixel Images
    26. Resource 9.5.2 Creating Pixel Images
    27. Example 9.5.3 CodeHS Logo
    28. Exercise 9.5.4 Checkerboard
    29. Check for Understanding 9.5.5 Pixel Images Quiz
    30. 9.6 Hexadecimal

    31. Video 9.6.1 Hexadecimal
    32. Example 9.6.2 Hexadecimal to Decimal
    33. Exercise 9.6.3 Binary to Hex Game
    34. Check for Understanding 9.6.4 Hexadecimal Quiz
    35. 9.7 Pixel Colors

    36. Video 9.7.1 Pixel Colors
    37. Example 9.7.2 Colors in Bits
    38. Example 9.7.3 Colors in Text
    39. Example 9.7.4 Colors in RGB
    40. Check for Understanding 9.7.5 Pixel Colors Quiz
    41. 9.8 Data Compression

    42. Video 9.8.1 Data Compression
    43. Video 9.8.2 Run Length Encoding
    44. Example 9.8.3 Run Length Encoding
    45. Example 9.8.4 Custom Image Compression
    46. Check for Understanding 9.8.5 Data Compression Quiz
    47. 9.9 Lossy Compression

    48. Video 9.9.1 Lossy Compression
    49. Example 9.9.2 Remove the Vowels
    50. Exercise 9.9.3 Decreasing Resolution
    51. Connection 9.9.4 Analog to Digital
    52. Check for Understanding 9.9.5 Lossy Compression Quiz
    53. 9.10 Cryptography

    54. Video 9.10.1 Cryptography
    55. Video 9.10.2 Implementing Caesar's Cipher
    56. Example 9.10.3 Encrypting with a Caesar Cipher
    57. Example 9.10.4 Cracking a Caesar Cipher
    58. Check for Understanding 9.10.5 Cryptography Quiz
    59. 9.11 Digital Information Quiz

    60. Unit Quiz 9.11.1 Digital Information Quiz
  10. The Internet

    1. 10.1 Welcome to the Internet

    2. Video 10.1.1 Welcome to the Internet
    3. Check for Understanding 10.1.2 Welcome to the Internet Quiz
    4. 10.2 Internet Hardware

    5. Video 10.2.1 Devices and Networks
    6. Video 10.2.2 Hardware of the Internet
    7. Connection 10.2.3 The Internet is in the Ocean
    8. Check for Understanding 10.2.4 Internet Hardware Quiz
    9. 10.3 Internet Addresses

    10. Video 10.3.1 Internet Addresses
    11. Check for Understanding 10.3.2 Internet Addresses Quiz
    12. 10.4 DNS

    13. Video 10.4.1 DNS
    14. Connection 10.4.2 How Does DNS Work?
    15. Check for Understanding 10.4.3 DNS Quiz
    16. Badge 10.4.4 DNS Badge
    17. 10.5 Routing

    18. Video 10.5.1 Routing
    19. Traceroute 10.5.2 Route Tracing
    20. Check for Understanding 10.5.3 Routing Quiz
    21. 10.6 Packets and Protocols

    22. Video 10.6.1 Packets and Protocols
    23. Resource 10.6.2 Passing Notes
    24. Connection 10.6.3 How the Internet Works
    25. Check for Understanding 10.6.4 Packets and Protocols Quiz
    26. 10.7 Cybersecurity

    27. Video 10.7.1 Cybersecurity
    28. Example 10.7.2 You Can Be Tracked!
    29. Connection 10.7.3 Website Cookies
    30. Connection 10.7.4 Password Strength
    31. Example 10.7.5 Multifactor Authentication
    32. Example 10.7.6 Phishing Simulator
    33. Connection 10.7.7 Rogue Access Points
    34. Check for Understanding 10.7.8 Cybersecurity Quiz
    35. 10.8 The Impact of the Internet

    36. Video 10.8.1 The Impact of the Internet
    37. Connection 10.8.2 Crucial Steps to Close the Digital Divide
    38. Connection 10.8.3 Pokemon Go: Unintended Effects
    39. Check for Understanding 10.8.4 The Impact of the Internet Quiz
    40. 10.9 Creative Credit & Copyright

    41. Video 10.9.1 Creative Credit and Copyright
    42. Connection 10.9.2 Exploring Creative Commons
    43. Check for Understanding 10.9.3 Creative Credit and Copyright
    44. 10.10 The Internet Quiz

    45. Unit Quiz 10.10.1 The Internet Quiz
    46. Badge 10.10.2 The Internet Badge
  11. Data

    1. 11.1 Getting Started with Data

    2. Video 11.1.1 Getting Started with Data
    3. Connection 11.1.2 What Do We Do With Data?
    4. Check for Understanding 11.1.3 Getting Started with Data Quiz
    5. 11.2 Visualizing and Interpreting Data

    6. Video 11.2.1 The Value of Data
    7. Video 11.2.2 Visualizing Data
    8. Notes 11.2.3 Exploring Data Visualizations
    9. Connection 11.2.4 US Recorded Music Revenue
    10. Connection 11.2.5 National Parks
    11. Connection 11.2.6 March Madness
    12. Connection 11.2.7 Captain Marvel
    13. Check for Understanding 11.2.8 Visualizing & Interpreting Data
    14. 11.3 Using Spreadsheets with Data

    15. Video 11.3.1 Using Spreadsheets with Data
    16. Notes 11.3.2 Working with Formulas & Functions
    17. Resource 11.3.3 Working with Formulas & Functions
    18. Free Response 11.3.4 Working with Formulas
    19. Quiz 11.3.5 Using Spreadsheets with Data Quiz
    20. 11.4 Data Collection & Limitations

    21. Video 11.4.1 Collecting Data
    22. Video 11.4.2 Data Limitations
    23. Example 11.4.3 Line Graph
    24. Example 11.4.4 Bar Graph
    25. Example 11.4.5 Pie Chart
    26. Check for Understanding 11.4.6 Data Collection Quiz
    27. 11.5 Simulation

    28. Video 11.5.1 Simulation
    29. Example 11.5.2 Gravity Simulation
    30. Example 11.5.3 Conway's Game of Life
    31. Exercise 11.5.4 Simulating a Coin Flip
    32. Connection 11.5.5 Wolf Sheep Predation Simulation
    33. Badge 11.5.6 Data Structures Exercises Badge
    34. 11.6 Data Quiz

    35. Unit Quiz 11.6.1 Data Quiz
  12. Intro to System Administration

    1. 12.1 Start Here

    2. Notes 12.1.1 Intro to Sys Admin - Unit Overview
    3. 12.2 Operating Systems Software

    4. Video 12.2.1 Operating Systems
    5. Example 12.2.2 Detect My OS
    6. Connection 12.2.3 Upgrading a Mac OS
    7. Example 12.2.4 Windows OS Installation Simulation
    8. Check for Understanding 12.2.5 Operating Systems Quiz
    9. 12.3 Comparing Operating Systems

    10. Video 12.3.1 Comparing Operating Systems
    11. Example 12.3.2 Windows Simulation
    12. Example 12.3.3 MacOS Simulation
    13. Connection 12.3.4 Choose a Linux Distro!
    14. Check for Understanding 12.3.5 Comparing Operating Systems Quiz
    15. 12.4 Software and Applications

    16. Video 12.4.1 Software and Applications
    17. Example 12.4.2 Spreadsheet Simulation
    18. Example 12.4.3 Messaging Simulation
    19. Example 12.4.4 Kanban Board Simulation
    20. Check for Understanding 12.4.5 Software and Applications Quiz
    21. 12.5 Browser Configuration

    22. Video 12.5.1 Browser Configuration
    23. Connection 12.5.2 Cached CodeHS
    24. Example 12.5.3 Is Your Popup Blocker On?
    25. Check for Understanding 12.5.4 Browser Configuration
    26. 12.6 System Admin Quiz

    27. Unit Quiz 12.6.1 System Administration Quiz
  13. IT Infrastructure

    1. 13.1 Start Here

    2. Notes 13.1.1 IT Infrastructure - Unit Overview
    3. 13.2 Internal Components

    4. Video 13.2.1 Internal Components
    5. Connection 13.2.2 Build a Computer
    6. Example 13.2.3 Test Your Brain's RAM!
    7. Check for Understanding 13.2.4 Internal Components
    8. 13.3 Peripheral Devices

    9. Video 13.3.1 Peripheral Devices
    10. Check for Understanding 13.3.2 Peripheral Devices
    11. 13.4 Network Devices

    12. Video 13.4.1 Network Devices
    13. Connection 13.4.2 Speed Test
    14. Connection 13.4.3 Fiber Optics Bend Light!
    15. Connection 13.4.4 Ethernet Standards
    16. Check for Understanding 13.4.5 Network Devices
    17. 13.5 Storage Options

    18. Video 13.5.1 Storage Options
    19. Connection 13.5.2 Security of Cloud Storage
    20. Check for Understanding 13.5.3 Storage Options Quiz
    21. 13.6 Network Options

    22. Video 13.6.1 Network Options
    23. Connection 13.6.2 What is an SSID?
    24. Check for Understanding 13.6.3 Network Options Quiz
    25. 13.7 Network Communication

    26. Video 13.7.1 Network Communication
    27. Example 13.7.2 Setting up a Firewall
    28. Notes 13.7.3 iptables simulation
    29. Check for Understanding 13.7.4 Network Communication Quiz
    30. 13.8 IT Infrastructure Quiz

    31. Unit Quiz 13.8.1 IT Infrastructure Quiz
  14. Cybersecurity

    1. 14.1 What is Cyber?

    2. Video 14.1.1 What is Cybersecurity?
    3. Connection 14.1.2 WannaCry Ransomware Attack
    4. Example 14.1.3 Ransomware Simulator
    5. Connection 14.1.4 Internet of Things
    6. Connection 14.1.5 Cybersecurity and Connected Cars
    7. Check for Understanding 14.1.6 What is Cybersecurity?
    8. 14.2 Impact of Cyber

    9. Video 14.2.1 Impact of Cybersecurity
    10. Example 14.2.2 Phishing Simulator
    11. Connection 14.2.3 Yahoo! Attack
    12. Connection 14.2.4 Fighting Cyber Crime
    13. Connection 14.2.5 FBI Cyber Crime
    14. Check for Understanding 14.2.6 Impact of Cybersecurity
    15. 14.3 The CIA Triad

    16. Video 14.3.1 CIA Triad
    17. Free Response 14.3.2 Breach of Confidentiality
    18. Free Response 14.3.3 Breach of Availability
    19. Check for Understanding 14.3.4 CIA Triad
    20. 14.4 Privacy and Security

    21. Video 14.4.1 What is Data Privacy & Security?
    22. Connection 14.4.2 Google Privacy Policy Search
    23. Example 14.4.3 Guess: Password List
    24. Example 14.4.4 Guess: Using an Algorithm
    25. Example 14.4.5 Guess: Brute Force
    26. Connection 14.4.6 How Strong is your Password?
    27. Example 14.4.7 You Can Be Tracked!
    28. Check for Understanding 14.4.8 Privacy & Security Quiz
    29. 14.5 Hacking Ethics

    30. Video 14.5.1 Hacking Ethics & Legality
    31. Connection 14.5.2 Penetration Testing
    32. Connection 14.5.3 Hack the Pentagon?
    33. Check for Understanding 14.5.4 Hacking Ethics & Legality
    34. Check for Understanding 14.5.5 Ethical Hacker Agreement
    35. 14.6 Databases

    36. Video 14.6.1 Databases
    37. Connection 14.6.2 Database Administrator Career
    38. Video 14.6.3 Parts of a Database
    39. Connection 14.6.4 SQL Database Diagram
    40. Check for Understanding 14.6.5 Databases
    41. 14.7 Common Security Problems

    42. Video 14.7.1 Common Security Problems
    43. Connection 14.7.2 Meet Security Engineers at Google
    44. Video 14.7.3 Living in a Digital World
    45. Check for Understanding 14.7.4 Common Security Problem
    46. 14.8 Environmental Controls

    47. Video 14.8.1 Environmental Controls
    48. Connection 14.8.2 Infographic
    49. Check for Understanding 14.8.3 Environmental Controls Quiz
    50. 14.9 Digital Certificates

    51. Video 14.9.1 Digital Certificates
    52. Connection 14.9.2 SSL Explained
    53. Connection 14.9.3 In The News
    54. Check for Understanding 14.9.4 Digital Certificates
    55. 14.10 Data and Licenses

    56. Video 14.10.1 Data and Licenses
    57. Connection 14.10.2 FTC Data Security Guide
    58. 14.11 Cybersecurity Quiz

    59. Unit Quiz 14.11.1 Cybersecurity Quiz
  15. Creative Development

    1. 15.1 Intro to Design Thinking

    2. Video 15.1.1 Intro to Design Thinking
    3. Connection 15.1.2 Case Study: Helping Blind People See
    4. Demo 15.1.3 Tell a Story Demo
    5. Check for Understanding 15.1.4 Intro to Design Thinking
    6. 15.2 Prototype

    7. Video 15.2.1 Prototype
    8. Connection 15.2.2 Wizard of Oz Prototyping
    9. Connection 15.2.3 Example Wizard of Oz Paper Prototype
    10. Check for Understanding 15.2.4 Prototype Quiz
    11. 15.3 Test

    12. Video 15.3.1 Test
    13. Connection 15.3.2 Testing with Users
    14. Connection 15.3.3 Example: How to User Test
    15. Connection 15.3.4 Example: How NOT to User Test
    16. Resource 15.3.5 How to Make Accessible Programs
    17. Check for Understanding 15.3.6 Testing Quiz
  16. Collaboration in Computer Science

    1. 16.1 Collaboration in Computer Science

    2. Video 16.1.1 Collaboration in Computer Science
    3. Notes 16.1.2 Collaboration Practices
    4. Connection 16.1.3 Essential Elements of a Successful Team
    5. Connection 16.1.4 Deeper Learning: A Collaborative Classroom is Key
    6. Connection 16.1.5 Handout: Collaboration Reflection
    7. 16.2 Whiteboarding

    8. Video 16.2.1 Whiteboarding
    9. Notes 16.2.2 Whiteboarding Tips
    10. Notes 16.2.3 Notes: Example Coding / Engineering Video
    11. Video 16.2.4 Example Coding/Engineering Interview
    12. 16.3 Pair-Programming

    13. Video 16.3.1 Pair-Programming
    14. Connection 16.3.2 Pair-Programming in the Industry
    15. Notes 16.3.3 Pair-Programming Practices
    16. 16.4 Pop Coding

    17. Video 16.4.1 Pop Coding
    18. Badge 16.4.2 Student Collaboration Badge
    19. 16.5 Storytelling through Code

    20. Video 16.5.1 Storytelling through Code
    21. Connection 16.5.2 Making a Story out of Code
    22. Free Response 16.5.3 Making a Story out of Code
    23. Free Response 16.5.4 Find a CodeHS Exercise!
    24. Badge 16.5.5 Student Collaboration Badge
  17. Debugging in Java

    1. 17.1 Basic Debugging in Java

    2. Notes 17.1.1 Start Here
    3. Video 17.1.2 Introduction to Debugging in Java
    4. Video 17.1.3 Basic Debugging Skills
    5. 17.2 Debugging Tools

    6. Video 17.2.1 Debugging Tools
    7. Debugging 17.2.2 Debug Fahrenheit to Celsius
    8. Exercise 17.2.3 Debug Add10
    9. Exercise 17.2.4 Debug Multiply
    10. Quiz 17.2.5 What Error?
    11. 17.3 Debugging Techniques

    12. Video 17.3.1 Debugging with Print Statements
    13. Video 17.3.2 Debugging with Comments and Questions
    14. Quiz 17.3.3 Debug with Print Statements, Comments & Questions
    15. 17.4 Common Java Errors

    16. Video 17.4.1 Common Java Errors
    17. Example 17.4.2 Common Java Errors
    18. Example 17.4.3 Debugging Syntax Errors
    19. Example 17.4.4 Debugging Logic Errors
    20. Debugging 17.4.5 Debug Print an Array
    21. Debugging 17.4.6 Debug Is it an Integer?
    22. Debugging 17.4.7 Debug Factorial
    23. Debugging 17.4.8 Debug Three Strings
    24. Quiz 17.4.9 Common Java Errors
    25. 17.5 Common Compiler Errors

    26. Video 17.5.1 Common Compiler Errors
    27. Example 17.5.2 Debugging Compiler Errors
    28. Debugging 17.5.3 Debug Text Messages
    29. Debugging 17.5.4 Debug Double Number
    30. Debugging 17.5.5 Debug Fix the Sum String
    31. Quiz 17.5.6 Common Compiler Errors
    32. Badge 17.5.7 Debugging in Java Badge
    33. 17.6 Java Outside of CodeHS

    34. Video 17.6.1 Java Outside of CodeHS
    35. Video 17.6.2 Hello World in Eclipse
    36. Video 17.6.3 Hello World in BlueJ
    37. Video 17.6.4 Hello World in Terminal
    38. Video 17.6.5 Java main vs run
    39. Example 17.6.6 Hello World with main Method
  18. Practice Tests

    1. 18.1 Practice Exam - All Topics

    2. Quiz 18.1.1 Practice Exam [All Topics]
    3. 18.2 Practice Exam - Java

    4. Quiz 18.2.1 Java Practice Exam
    5. 18.3 Review Quizzes - Part 1

    6. Quiz 18.3.1 What Does this Algorithm Do?
    7. Quiz 18.3.2 Choose the Right Algorithm
    8. Quiz 18.3.3 Drawing Insights from Data
    9. Quiz 18.3.4 Changing Bits
    10. Quiz 18.3.5 Encoding Data
    11. Quiz 18.3.6 Fill in Missing Code
    12. Quiz 18.3.7 Programming Style
    13. Quiz 18.3.8 Modifying Programs
    14. Quiz 18.3.9 For Loops
    15. Quiz 18.3.10 Boolean Expressions
    16. Quiz 18.3.11 While Loops
    17. Quiz 18.3.12 List Operations
    18. Quiz 18.3.13 Bits
    19. Quiz 18.3.14 Randomized Programs
    20. 18.4 Review Quizzes - Part 2

    21. Quiz 18.4.1 Robot Questions
    22. Quiz 18.4.2 Flowchart Algorithms
    23. Quiz 18.4.3 Simulation and Modeling
    24. Quiz 18.4.4 Algorithm Efficiency
    25. Quiz 18.4.5 IP
    26. Quiz 18.4.6 DNS
    27. Quiz 18.4.7 Routing
    28. Quiz 18.4.8 Packets and Protocols
    29. Quiz 18.4.9 Cybersecurity
    30. Quiz 18.4.10 Data Compression
    31. Quiz 18.4.11 Solvable vs Unsolvable Problems
    32. Quiz 18.4.12 Computing Ethics
    33. Quiz 18.4.13 Impacts of Computing
    34. Quiz 18.4.14 Programming Language Abstraction
  19. Final Task

    1. 19.1 Congratulations!

    2. Free Response 19.1.1 Congratulations!