Please enable JavaScript to use CodeHS

Utah Computer Programming 1 and 2 - Outline

  1. Karel in Python

    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 Quiz: Karel Commands
    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. Debugging 1.1.6 Dancing Karel
    8. 1.2 More Basic Karel

    9. Video 1.2.1 More Basic Karel
    10. Check for Understanding 1.2.2 More Basic Karel Quiz
    11. Example 1.2.3 Tennis Ball Square
    12. Exercise 1.2.4 Make a Tower
    13. Exercise 1.2.5 Pyramid of Karel
    14. Debugging 1.2.6 Go Through the Door
    15. 1.3 Karel Can't Turn Right

    16. Video 1.3.1 Karel Can't Turn Right
    17. Check for Understanding 1.3.2 Karel Can't Turn Right Quiz
    18. Example 1.3.3 Tower and Turn Right
    19. Exercise 1.3.4 Fireman Karel
    20. Exercise 1.3.5 Slide Karel
    21. Free Response 1.3.6 Reflection: Teaching Karel New Commands
    22. Badge 1.3.7 Right Turn Karel Badge
    23. 1.4 Functions in Karel

    24. Video 1.4.1 Functions in Karel
    25. Check for Understanding 1.4.2 Functions in Karel Quiz
    26. Example 1.4.3 Turn Around
    27. Exercise 1.4.4 Pancakes
    28. Exercise 1.4.5 Backflip
    29. Exercise 1.4.6 Digging Karel
    30. Debugging 1.4.7 Build a Shelter
    31. 1.5 Top Down Design and Decomposition in Karel

    32. Video 1.5.1 Top Down Design and Decomposition in Karel
    33. Check for Understanding 1.5.2 Top Down Design and Decomposition Quiz
    34. Example 1.5.3 Hurdle Karel
    35. Exercise 1.5.4 The Two Towers
    36. Debugging 1.5.5 Make a 'Z'
    37. Free Response 1.5.6 Reflection: Top Down Design
    38. 1.6 Commenting Your Code

    39. Video 1.6.1 Commenting Your Code
    40. Check for Understanding 1.6.2 Commenting Your Code Quiz
    41. Example 1.6.3 Hurdle Karel
    42. Exercise 1.6.4 The Two Towers + Comments
    43. Free Response 1.6.5 Reflection: Commenting
    44. 1.7 Abstraction

    45. Video 1.7.1 Abstraction
    46. Check for Understanding 1.7.2 Abstraction Quiz
    47. Example 1.7.3 Abstracting Away build_tower
    48. Free Response 1.7.4 Abstracting Your Day
    49. Free Response 1.7.5 Reflection: Abstraction
    50. Free Response 1.7.6 Reflection: Abstraction in Karel
    51. 1.8 Super Karel

    52. Video 1.8.1 Super Karel
    53. Check for Understanding 1.8.2 Super Karel Quiz
    54. Example 1.8.3 Hurdle Karel (with SuperKarel)
    55. Exercise 1.8.4 The Two Towers + SuperKarel
    56. Badge 1.8.5 Super Karel Badge
    57. 1.9 For Loops

    58. Video 1.9.1 For Loops
    59. Check for Understanding 1.9.2 For Loops Quiz
    60. Example 1.9.3 Repeated Move
    61. Example 1.9.4 Put Down Tennis Balls
    62. Exercise 1.9.5 Take 'em All
    63. Exercise 1.9.6 Dizzy Karel
    64. Exercise 1.9.7 For Loop Square
    65. Exercise 1.9.8 Lots of Hurdles
    66. 1.10 If Statements

    67. Video 1.10.1 If Statements
    68. Check for Understanding 1.10.2 If Statements Quiz
    69. Example 1.10.3 If Statements
    70. Example 1.10.4 Safe Take Ball
    71. Exercise 1.10.5 Is There a Ball?
    72. Survey 1.10.6 Mindsets
    73. 1.11 If/Else Statements

    74. Video 1.11.1 If/Else Statements
    75. Check for Understanding 1.11.2 If/Else Statements Quiz
    76. Example 1.11.3 If/Else Statements
    77. Example 1.11.4 One Ball in Each Spot
    78. Exercise 1.11.5 Right Side Up
    79. Badge 1.11.6 Conditional Karel Badge
    80. 1.12 While Loops in Karel

    81. Video 1.12.1 While Loops in Karel
    82. Check for Understanding 1.12.2 While Loops in Karel Quiz
    83. Example 1.12.3 Move to Wall
    84. Exercise 1.12.4 Follow The Yellow Ball Road
    85. Exercise 1.12.5 Lay Row of Tennis Balls
    86. Exercise 1.12.6 Big Tower
    87. 1.13 Control Structures Example

    88. Video 1.13.1 Control Structures Example
    89. Check for Understanding 1.13.2 Control Structures Example Quiz
    90. Example 1.13.3 Cleanup Karel
    91. Exercise 1.13.4 Random Hurdles
    92. 1.14 Debugging Strategies

    93. Video 1.14.1 Debugging Basics
    94. Check for Understanding 1.14.2 Debugging Basics
    95. Debugging 1.14.3 Debug: The Two Towers
    96. Debugging 1.14.4 Debug: Lots of Hurdles
    97. Video 1.14.5 Debugging From Error Messages
    98. Check for Understanding 1.14.6 Debugging with Error Messages
    99. Debugging 1.14.7 Debug: Big Tower
    100. Debugging 1.14.8 Debug: Random Hurdles
    101. 1.15 Algorithms

    102. Video 1.15.1 Karel Algorithms
    103. Check for Understanding 1.15.2 Quiz: Which Control Structure?
    104. Video 1.15.3 Algorithms Example: Move Stack
    105. Example 1.15.4 Move Tennis Ball Stack
    106. Example 1.15.5 Climbing Karel
    107. Exercise 1.15.6 Decorate the Fence
    108. 1.16 Ultra Karel

    109. Video 1.16.1 Ultra Karel
    110. Check for Understanding 1.16.2 Ultra Karel Quiz
    111. Example 1.16.3 Red Frame
    112. Example 1.16.4 Slip 'n Slide
    113. Exercise 1.16.5 Invert Colors
    114. Exercise 1.16.6 Checkerboard Karel
    115. Badge 1.16.7 Karel Exercises Badge
    116. 1.17 Karel Challenges

    117. Challenge 1.17.1 Fetch
    118. Challenge 1.17.2 Racing Karel
    119. Challenge 1.17.3 Tower Builder
    120. Challenge 1.17.4 Super Cleanup Karel
    121. Challenge 1.17.5 Double Tennis Balls
    122. Badge 1.17.6 Programming with Karel Bootcamp Badge
    123. 1.18 Introduction to Programming Quiz

    124. Unit Quiz 1.18.1 Introduction to Programming Quiz
  2. Basic Python and Console Interaction

    1. 2.1 Printing in Python

    2. Video 2.1.1 Printing in Python
    3. Check for Understanding 2.1.2 Printing in Python
    4. Example 2.1.3 Hello, world!
    5. Example 2.1.4 Printing Multiple Lines
    6. Exercise 2.1.5 Introduce Yourself
    7. Debugging 2.1.6 Fix This Program!
    8. Exercise 2.1.7 Vertical name
    9. 2.2 Variables and Types

    10. Video 2.2.1 Variables and Types
    11. Check for Understanding 2.2.2 Variables and Types
    12. Example 2.2.3 Variables in Action
    13. Example 2.2.4 Variable Types
    14. Example 2.2.5 Variable Naming
    15. Exercise 2.2.6 Make Some Variables!
    16. Debugging 2.2.7 Undefined Variables
    17. Badge 2.2.8 Variables Badge
    18. 2.3 User Input

    19. Video 2.3.1 User Input
    20. Check for Understanding 2.3.2 User Input
    21. Example 2.3.3 Basic User Input
    22. Example 2.3.4 Type Conversion
    23. Example 2.3.5 Type Conversion, Part 2
    24. Exercise 2.3.6 Hello <name>
    25. Exercise 2.3.7 Age
    26. 2.4 Mathematical Operators

    27. Video 2.4.1 Mathematical Operators
    28. Check for Understanding 2.4.2 Mathematical Operators
    29. Example 2.4.3 Operators and Integers
    30. Example 2.4.4 Operator Precedence
    31. Exercise 2.4.5 Add Parentheses
    32. Example 2.4.6 Division in Python
    33. Example 2.4.7 Operators and Floats
    34. Exercise 2.4.8 Rectangle
    35. 2.5 String Operators

    36. Video 2.5.1 String Operators
    37. Check for Understanding 2.5.2 String Operators
    38. Example 2.5.3 Operators and Strings
    39. Debugging 2.5.4 Fix This Program
    40. Example 2.5.5 Team Sizes
    41. Exercise 2.5.6 Introduce Yourself, Part 2
    42. Exercise 2.5.7 Rectangle, Part 2
    43. Exercise 2.5.8 Rectangle, Part 3
    44. Challenge 2.5.9 Recipe
    45. 2.6 Comments

    46. Video 2.6.1 Comments
    47. Check for Understanding 2.6.2 Comments
    48. Example 2.6.3 Commented Program
    49. Example 2.6.4 Trapezoid
    50. Exercise 2.6.5 Add Comments!
    51. 2.7 Programming Languages

    52. Video 2.7.1 Programming Languages
    53. Example 2.7.2 Dynamically Typed Languages
    54. Example 2.7.3 Statically Typed Languages
    55. Free Response 2.7.4 Dynamically Typed vs. Statically Typed Languages
    56. Video 2.7.5 Compiled Languages
    57. Video 2.7.6 Interpreted Languages
    58. Free Response 2.7.7 Compiled vs. Interpreted Languages
    59. Video 2.7.8 How Do Computers Read Code
    60. 2.8 Basic Python and Console Interaction Quiz

    61. Unit Quiz 2.8.1 Basic Python and Console Interaction Quiz
    62. Badge 2.8.2 Basic Python and Console Interaction Badge
  3. Project: Mad Libs

    1. 3.1 Project: Mad Libs

    2. Exercise 3.1.1 Project: Mad Libs
  4. Conditionals

    1. 4.1 Booleans

    2. Video 4.1.1 Booleans
    3. Check for Understanding 4.1.2 Booleans
    4. Example 4.1.3 Boolean Variables
    5. Debugging 4.1.4 Fix This Program
    6. Exercise 4.1.5 Plants
    7. 4.2 If Statements

    8. Video 4.2.1 If Statements
    9. Check for Understanding 4.2.2 If Statements
    10. Example 4.2.3 Your First If Statement
    11. Example 4.2.4 If/Else Statement
    12. Debugging 4.2.5 Fix This Program
    13. Exercise 4.2.6 Is It Raining?
    14. Badge 4.2.7 Conditional Badge
    15. 4.3 Comparison Operators

    16. Video 4.3.1 Comparison Operators
    17. Check for Understanding 4.3.2 Comparison Operators
    18. Example 4.3.3 Comparison Operators
    19. Example 4.3.4 High Jump
    20. Example 4.3.5 Roller Coaster
    21. Exercise 4.3.6 Old Enough to Vote?
    22. Exercise 4.3.7 Positive, Zero, or Negative?
    23. Example 4.3.8 Age Group
    24. Exercise 4.3.9 Table Reservation
    25. Challenge 4.3.10 Transaction
    26. 4.4 Logical Operators

    27. Video 4.4.1 Logical Operators
    28. Check for Understanding 4.4.2 Logical Operators
    29. Example 4.4.3 Logical Operators
    30. Exercise 4.4.4 Administrators, Teachers, and Students
    31. Exercise 4.4.5 Presidential Eligibility
    32. Challenge 4.4.6 Presidential Eligibility- Extended
    33. 4.5 Floating Point Numbers and Rounding

    34. Video 4.5.1 Floating Point Numbers and Rounding
    35. Check for Understanding 4.5.2 Floating Point Numbers and Rounding
    36. Example 4.5.3 Rounding Error
    37. Exercise 4.5.4 Correct Portion
    38. 4.6 Conditionals Quiz

    39. Unit Quiz 4.6.1 Conditionals Quiz
  5. Project: Quiz Game

    1. 5.1 Project: Quiz Game

    2. Exercise 5.1.1 Project: Quiz Game
  6. Looping

    1. 6.1 While Loops

    2. Video 6.1.1 While Loops
    3. Check for Understanding 6.1.2 While Loops
    4. Example 6.1.3 Guess My Number
    5. Example 6.1.4 Program Tracing
    6. Example 6.1.5 Program Tracing, Part 2
    7. Exercise 6.1.6 2 Through 20 Even
    8. Exercise 6.1.7 Divisibility
    9. 6.2 For Loops

    10. Video 6.2.1 For Loops
    11. Check for Understanding 6.2.2 For Loops
    12. Example 6.2.3 Print 10 Numbers
    13. Example 6.2.4 1 Through 10, Part 2
    14. Exercise 6.2.5 Counting 10 to 100 by Tens
    15. Example 6.2.6 Running Total
    16. Example 6.2.7 Running Total, Part 2
    17. Exercise 6.2.8 Average Test Score
    18. Exercise 6.2.9 How Many Names?
    19. Badge 6.2.10 Loops Badge
    20. Survey 6.2.11 Mindset Survey 2
    21. 6.3 Break and Continue

    22. Video 6.3.1 Break and Continue
    23. Check for Understanding 6.3.2 Break and Continue
    24. Example 6.3.3 Break
    25. Example 6.3.4 Continue
    26. Example 6.3.5 Bike Frame Size
    27. Example 6.3.6 Loop and a Half
    28. Exercise 6.3.7 Higher/ Lower
    29. Challenge 6.3.8 Higher / Lower 2.0
    30. 6.4 Nested Control Structures

    31. Video 6.4.1 Nested Control Structures
    32. Check for Understanding 6.4.2 Nested Control Structures
    33. Example 6.4.3 Double For Loop
    34. Example 6.4.4 Average Test Score, Part 2
    35. Example 6.4.5 For Loop + While Loop
    36. Exercise 6.4.6 Rolling Dice
    37. Exercise 6.4.7 Categories
    38. 6.5 Looping Quiz

    39. Unit Quiz 6.5.1 Looping Unit Test
  7. Project: Password Authenticator

    1. 7.1 Project: Password Authenticator

    2. Exercise 7.1.1 Project: Password Authenticator
  8. Roles in a Software Development Team

    1. 8.1 Software Engineer

    2. Video 8.1.1 A Day as a Software Developer
    3. Video 8.1.2 Development Life Cycle
    4. Check for Understanding 8.1.3 Development Life Cycle
    5. Video 8.1.4 A Day in the Life of a Software Engineer at Meta
    6. Connection 8.1.5 Scrum Framework
    7. Free Response 8.1.6 SCRUM Response
    8. Connection 8.1.7 Using Flowcharts
    9. Notes 8.1.8 Project: Software Development
    10. Resource 8.1.9 Creating a Plan
    11. 8.2 QA Engineer

    12. Video 8.2.1 A Day as a QA Engineer
    13. Video 8.2.2 Define Acceptance Criteria
    14. Video 8.2.3 Outline Test Cases
    15. Video 8.2.4 Report Bugs
    16. Video 8.2.5 Part 1: Bug Hunt
    17. Free Response 8.2.6 Part 2: Report the Bug
    18. 8.3 Designer

    19. Video 8.3.1 A Day as a Designer
    20. Video 8.3.2 Create Wireframes
    21. Video 8.3.3 Research Typography
    22. Video 8.3.4 Choose Colors
    23. Connection 8.3.5 Create a Color Palette
    24. Video 8.3.6 Check Accessibility
    25. Presentation 8.3.7 Design a Mood Board
    26. 8.4 Project Manager

    27. Video 8.4.1 A Day as a Project Manager
    28. Video 8.4.2 Plan Project
    29. Video 8.4.3 Organize Tasks
    30. Video 8.4.4 Set Deadlines
    31. None 8.4.5 Create a Task Board
  9. Functions and Exceptions

    1. 9.1 Functions

    2. Video 9.1.1 Functions
    3. Check for Understanding 9.1.2 Functions
    4. Example 9.1.3 Greeting
    5. Example 9.1.4 Extended Greeting
    6. Exercise 9.1.5 Weather
    7. 9.2 Functions and Parameters

    8. Video 9.2.1 Functions and Parameters
    9. Check for Understanding 9.2.2 Functions and Parameters
    10. Example 9.2.3 Print a Value
    11. Example 9.2.4 Name and Age
    12. Exercise 9.2.5 Print Product
    13. Exercise 9.2.6 Print Multiple Times
    14. Example 9.2.7 Default Parameter Values
    15. Exercise 9.2.8 Area of a Square with Default Parameters
    16. 9.3 Namespaces in Functions

    17. Video 9.3.1 Namespaces in Functions
    18. Check for Understanding 9.3.2 Namespaces in Functions
    19. Example 9.3.3 Functions and Variables
    20. Example 9.3.4 Functions and Variables, Part 2
    21. Debugging 9.3.5 Fix This Program!
    22. Exercise 9.3.6 Adding to a Value
    23. Exercise 9.3.7 Add, Subtract, or Multiply
    24. 9.4 Functions and Return Values

    25. Video 9.4.1 Functions and Return Values
    26. Check for Understanding 9.4.2 Functions and Return Values
    27. Example 9.4.3 Return 10
    28. Exercise 9.4.4 Add One
    29. Example 9.4.5 Negate
    30. Example 9.4.6 Functions Calling Functions
    31. Example 9.4.7 Function Calls As Parameters
    32. Exercise 9.4.8 Sum Two Numbers
    33. Exercise 9.4.9 Temperature Converter
    34. Badge 9.4.10 Functions Badge
    35. 9.5 Exceptions

    36. Video 9.5.1 Exceptions
    37. Check for Understanding 9.5.2 Exceptions
    38. Example 9.5.3 Enter a Number
    39. Example 9.5.4 Enter Name and Age
    40. Exercise 9.5.5 Temperature Converter, Part 2
    41. Exercise 9.5.6 Enter a Positive Number
    42. 9.6 Functions & Exceptions Quiz

    43. Unit Quiz 9.6.1 Functions and Exceptions Quiz
    44. Badge 9.6.2 Control Flow Badge
  10. Strings

    1. 10.1 Indexing

    2. Video 10.1.1 Indexing
    3. Check for Understanding 10.1.2 Indexing
    4. Example 10.1.3 Characters in a String
    5. Video 10.1.4 Unit Tests
    6. Practice 10.1.5 Initials
    7. Practice 10.1.6 Sandwich Sandwiches
    8. 10.2 Slicing

    9. Video 10.2.1 Slicing
    10. Check for Understanding 10.2.2 Slicing
    11. Example 10.2.3 Groups of Characters
    12. Example 10.2.4 String Collage
    13. Example 10.2.5 Room Names
    14. Practice 10.2.6 If You're Not First, You're Last
    15. Practice 10.2.7 Part 1, Replace a Letter
    16. Practice 10.2.8 Part 2, Replace a Letter
    17. Badge 10.2.9 Slicing Badge
    18. 10.3 Immutability

    19. Video 10.3.1 Immutability
    20. Check for Understanding 10.3.2 Immutability
    21. Example 10.3.3 String Immutability
    22. Exercise 10.3.4 Find the Error
    23. 10.4 Strings and For Loops

    24. Video 10.4.1 Strings and For Loops
    25. Check for Understanding 10.4.2 Strings and For Loops
    26. Example 10.4.3 The len Function
    27. Practice 10.4.4 Length of User's Name
    28. Example 10.4.5 String For Loop with Indices
    29. Example 10.4.6 String For Loop with Characters
    30. Exercise 10.4.7 Spelling Bee
    31. Practice 10.4.8 Keeping Count
    32. 10.5 The in Keyword

    33. Video 10.5.1 The in Keyword
    34. Check for Understanding 10.5.2 The in Keyword
    35. Example 10.5.3 Contains a Letter
    36. Example 10.5.4 Contains a Substring
    37. Practice 10.5.5 Contains a Vowel
    38. 10.6 String Methods

    39. Video 10.6.1 String Methods
    40. Check for Understanding 10.6.2 String Methods
    41. Example 10.6.3 upper and lower
    42. Practice 10.6.4 ENTHUSIASM!
    43. Example 10.6.5 swapcase
    44. Example 10.6.6 strip
    45. Example 10.6.7 find
    46. Practice 10.6.8 What's in a Name?
    47. Practice 10.6.9 Part 1, Remove All From String
    48. Exercise 10.6.10 Part 2, Remove All From String
    49. Survey 10.6.11 Mindset Survey 3
    50. 10.7 Strings Quiz

    51. Unit Quiz 10.7.1 Strings Quiz
    52. Badge 10.7.2 Strings Badge
  11. Project: The Game of Pig

    1. 11.1 Project: The Game of Pig

    2. Free Response 11.1.1 The Game of Pig
    3. Exercise 11.1.2 Build the Basic Program
    4. Exercise 11.1.3 Adding a Computer Opponent
  12. Creating and Altering Data Structures

    1. 12.1 Tuples

    2. Video 12.1.1 Tuples
    3. Check for Understanding 12.1.2 Tuples
    4. Example 12.1.3 A Tuple Is a Sequence
    5. Example 12.1.4 A Tuple is Heterogenous
    6. Example 12.1.5 Tuples With a Single Element
    7. Example 12.1.6 Concatenating Tuples
    8. Exercise 12.1.7 Fix This Tuple
    9. Practice 12.1.8 Citation
    10. Practice 12.1.9 Diving Contest
    11. Practice 12.1.10 Coordinate Pairs
    12. 12.2 Lists

    13. Video 12.2.1 Lists
    14. Check for Understanding 12.2.2 Lists
    15. Example 12.2.3 A List Is Like a Mutable Tuple
    16. Example 12.2.4 String <--> List
    17. Practice 12.2.5 Spell It Out
    18. Example 12.2.6 Splitting a String
    19. Practice 12.2.7 Listed Greeting
    20. Example 12.2.8 List of Tuples, Tuples of Lists
    21. 12.3 For Loops and Lists

    22. Video 12.3.1 For Loops and Lists
    23. Check for Understanding 12.3.2 For Loops and Lists
    24. Example 12.3.3 For Loops and Lists
    25. Example 12.3.4 For Loops and Lists, Part 2
    26. Practice 12.3.5 Max In List
    27. Practice 12.3.6 Owls
    28. Practice 12.3.7 Exclamat!on Po!nts
    29. Challenge 12.3.8 Word Ladder
    30. Challenge 12.3.9 Owls, Part 2
    31. 12.4 List Methods

    32. Video 12.4.1 List Methods
    33. Check for Understanding 12.4.2 List Methods
    34. Example 12.4.3 append and extend
    35. Exercise 12.4.4 How Many Names?
    36. Exercise 12.4.5 Five Numbers
    37. Example 12.4.6 sort
    38. Exercise 12.4.7 Librarian
    39. Example 12.4.8 reverse
    40. Example 12.4.9 count
    41. Example 12.4.10 remove
    42. Practice 12.4.11 Take a Thing Out, Sort It and Reverse It
    43. Challenge 12.4.12 Librarian, Part 2
    44. Badge 12.4.13 Lists Badge
    45. 12.5 Creating and Altering Data Structures Quiz

    46. Unit Quiz 12.5.1 Creating and Altering Data Structures Quiz
  13. Extending Data Structures

    1. 13.1 2d Lists

    2. Video 13.1.1 2d Lists
    3. Check for Understanding 13.1.2 2d Lists
    4. Example 13.1.3 A List of Lists
    5. Example 13.1.4 Grid
    6. Example 13.1.5 2d Lists and Slices
    7. Exercise 13.1.6 Checkerboard, v1
    8. Exercise 13.1.7 Checkerboard, v2
    9. Exercise 13.1.8 Checkerboard, v3
    10. Challenge 13.1.9 Tic Tac Toe
    11. 13.2 List Comprehensions

    12. Video 13.2.1 List Comprehensions
    13. Check for Understanding 13.2.2 List Comprehensions
    14. Example 13.2.3 List of Consecutive Numbers
    15. Example 13.2.4 List of Squares
    16. Exercise 13.2.5 Divisible by 3
    17. Example 13.2.6 Digits of Pi
    18. Example 13.2.7 List of Booleans
    19. Exercise 13.2.8 Last Names
    20. Exercise 13.2.9 Strings To Integers
    21. Survey 13.2.10 Mindset Survey 4
    22. 13.3 Packing and Unpacking

    23. Video 13.3.1 Packing and Unpacking
    24. Check for Understanding 13.3.2 Packing and Unpacking
    25. Example 13.3.3 Packing
    26. Example 13.3.4 Unpacking
    27. Example 13.3.5 Unpacking Parameters
    28. Exercise 13.3.6 Coordinate Pair
    29. Exercise 13.3.7 Slopes
    30. Example 13.3.8 Swapping
    31. Exercise 13.3.9 Full Name & Citation
    32. Badge 13.3.10 Packing Badge
    33. 13.4 Dictionaries

    34. Video 13.4.1 Dictionaries
    35. Check for Understanding 13.4.2 Dictionaries
    36. Example 13.4.3 Keys and Values
    37. Example 13.4.4 The in Keyword
    38. Exercise 13.4.5 Phone Book
    39. Exercise 13.4.6 Word Counts
    40. 13.5 Extending Data Structures Quiz

    41. Unit Quiz 13.5.1 Extending Data Structures Quiz
    42. Badge 13.5.2 Data Structures Badge
  14. Project: Guess the Word

    1. 14.1 Project: Guess the Word

    2. Demo 14.1.1 Guess the Word Demo
    3. Exercise 14.1.2 Guess the Word, Part 1
    4. Exercise 14.1.3 Guess the Word, Part 2
    5. Exercise 14.1.4 Guess the Word, Part 3
    6. Exercise 14.1.5 Guess the Word, Part 4
  15. File I/O

    1. 15.1 What is File I/O

    2. Video 15.1.1 What is File I/O
    3. Quiz 15.1.2 What is File I/O
    4. Example 15.1.3 What is a TXT File?
    5. Example 15.1.4 What is a CSV File?
    6. Free Response 15.1.5 Choosing a File Format: TXT vs. CSV
    7. Example 15.1.6 File I/O in Data Science
    8. Example 15.1.7 File I/O in Image Processing
    9. Free Response 15.1.8 File I/O and Social Media
    10. 15.2 Reading Character from File

    11. Video 15.2.1 Reading Character from File
    12. Video 15.2.2 Reading Characters from File: Example Walkthrough
    13. Quiz 15.2.3 Reading Characters from File
    14. Example 15.2.4 Read Specific Characters
    15. Example 15.2.5 Read All Characters
    16. Debugging 15.2.6 Fix This: Reading Characters
    17. Debugging 15.2.7 Fix This: Unable to Read
    18. Exercise 15.2.8 Validating Tweet Length
    19. 15.3 Reading Line from File

    20. Video 15.3.1 Reading Line From File
    21. Video 15.3.2 Reading Line from File: Example Walkthrough
    22. Quiz 15.3.3 Read Line from File
    23. Example 15.3.4 Reading and Printing Lines
    24. Exercise 15.3.5 Counting Lines in a File
    25. Exercise 15.3.6 Summing Numbers from File
    26. Exercise 15.3.7 Formatting Movie Titles
    27. 15.4 Reading All Lines from File

    28. Video 15.4.1 Reading All Lines from File
    29. Video 15.4.2 Reading All Lines from File: Example Walkthrough
    30. Quiz 15.4.3 Reading All Lines from File
    31. Example 15.4.4 Using readlines()
    32. Exercise 15.4.5 Finding the Needle in the Haystack
    33. Exercise 15.4.6 Extract Quotes from a Text File
    34. 15.5 Writing to File

    35. Video 15.5.1 Writing to File
    36. Video 15.5.2 Write to End of File: Example Walkthrough
    37. Quiz 15.5.3 Writing to File
    38. Example 15.5.4 Write to File
    39. Example 15.5.5 Append to File
    40. Exercise 15.5.6 Activity Tracker
    41. Exercise 15.5.7 Guest Book
    42. Exercise 15.5.8 Write the Sum
    43. 15.6 Move File Pointer Position

    44. Video 15.6.1 Move File Pointer Position
    45. Video 15.6.2 Move File Pointer Position: Example Walkthrough
    46. Quiz 15.6.3 Move File Pointer Position
    47. Example 15.6.4 Using tell()
    48. Example 15.6.5 Reading from a Position in File
    49. Example 15.6.6 Write to a Position in File
    50. Exercise 15.6.7 Read from Middle
    51. Exercise 15.6.8 Reverse a File
    52. 15.7 File I/O Quiz

    53. Quiz 15.7.1 File I/O Quiz
  16. Classes and Objects

    1. 16.1 Classes and Objects

    2. Video 16.1.1 Classes and Objects
    3. Check for Understanding 16.1.2 Classes and Objects
    4. Example 16.1.3 The Point Class
    5. Exercise 16.1.4 The Rectangle Class, Part 1
    6. Example 16.1.5 The Point Class, Part 2
    7. Exercise 16.1.6 The Rectangle Class, Part 2
    8. 16.2 Methods

    9. Video 16.2.1 Methods
    10. Check for Understanding 16.2.2 Methods
    11. Example 16.2.3 The Point Class, Part 3
    12. Example 16.2.4 The Point Class, Part 4
    13. Exercise 16.2.5 The Rectangle Class, Part 3
    14. Exercise 16.2.6 The Rectangle Class, Part 4
    15. 16.3 Built-In Methods

    16. Video 16.3.1 Built-In Methods
    17. Check for Understanding 16.3.2 Built-In Methods
    18. Example 16.3.3 The __repr__ method
    19. Example 16.3.4 The __eq__ method
    20. Example 16.3.5 The Point Class, Part 5
    21. Exercise 16.3.6 The Rectangle Class, Part 5
    22. Exercise 16.3.7 The Rectangle Class, Part 6
    23. Example 16.3.8 Sheet Music
    24. Challenge 16.3.9 Names In a Hat
    25. 16.4 Operator Overloading

    26. Video 16.4.1 Operator Overloading
    27. Check for Understanding 16.4.2 Operator Overloading
    28. Example 16.4.3 The __add__ method
    29. Example 16.4.4 The Point Class, Part 6
    30. Exercise 16.4.5 The Rectangle Class, Part 7
    31. Exercise 16.4.6 The Rectangle Class, Part 8
    32. Exercise 16.4.7 Contact Merge
    33. 16.5 Class Variables vs. Instance Variables

    34. Video 16.5.1 Class Variables vs. Instance Variables
    35. Check for Understanding 16.5.2 Class Variables vs. Instance Variables
    36. Example 16.5.3 The Point Class, Part 7
    37. Exercise 16.5.4 The Rectangle Class, Part 9
    38. Example 16.5.5 Cars
    39. Exercise 16.5.6 Cars, Part 2
    40. Example 16.5.7 Cars, Part 3
  17. Exploring CS Careers

    1. 17.1 Computer Science Careers

    2. Video 17.1.1 Computer Science All Around Us
    3. Quiz 17.1.2 Computer Science All Around Us
    4. Connection 17.1.3 CS Careers
    5. Free Response 17.1.4 CS Career Response
    6. Connection 17.1.5 Coding in the Wild
    7. Free Response 17.1.6 Coding in the Wild Response
    8. Connection 17.1.7 Inclusive Coding
    9. Free Response 17.1.8 Inclusive Coding Response
    10. 17.2 Explore a Career

    11. Connection 17.2.1 How to Choose the Right Career Path
    12. Free Response 17.2.2 Step 1: Your Hobbies
    13. Free Response 17.2.3 Step 2: Your Talents
    14. Free Response 17.2.4 Step 3: Your Personality
    15. Free Response 17.2.5 Step 4: Your Career Aspirations
    16. Free Response 17.2.6 Step 5: Do Your Research
    17. Notes 17.2.7 Career Exploration Presentation Guidelines
    18. Presentation 17.2.8 Career Exploration Presentation
  18. Midterm

    1. 18.1 Midterm

    2. Final 18.1.1 Intro to Python Midterm Pt. 1- Multiple Choice
  19. Final Exam

    1. 19.1 Final Exam

    2. Midterm 19.1.1 Final Exam Pt 1: Multiple Choice