Please enable JavaScript to use CodeHS


Indiana Computer Science I

Lessons

  1. Programming With Karel

    1. 1.1 Introduction to Programming With Karel

    2. Description
    3. Objective
    4. 1.2 More Basic Karel

    5. Description
    6. Objective
    7. 1.3 Karel Can't Turn Right

    8. Description
    9. Objective
    10. 1.4 Functions in Karel

    11. Description
    12. Objective
    13. 1.5 The Start Function

    14. Description
    15. Objective
    16. 1.6 Top Down Design and Decomposition in Karel

    17. Description
    18. Objective
    19. 1.7 Commenting Your Code

    20. Description
    21. Objective
    22. 1.8 Super Karel

    23. Description
    24. Objective
    25. 1.9 For Loops

    26. Description
    27. Objective
    28. 1.10 If Statements

    29. Description
    30. Objective
    31. 1.11 If/Else Statements

    32. Description
    33. Objective
    34. 1.12 While Loops in Karel

    35. Description
    36. Objective
    37. 1.13 Control Structures Example

    38. Description
    39. Objective
    40. 1.14 More Karel Examples and Testing

    41. Description
    42. Objective
    43. 1.15 How to Indent Your Code

    44. Description
    45. Objective
    46. 1.16 Debugging Strategies

    47. Description
    48. Objective
    49. 1.17 Computer Science Careers

    50. Description
    51. Objective
  2. Karel Challenges

    1. 2.1 Challenge Problems

    2. Description
    3. Objective
  3. Cybersecurity

    1. 3.1 Intro to Cybersecurity

    2. Description
    3. Objective
    4. 3.2 Digital Footprint and Reputation

    5. Description
    6. Objective
    7. 3.3 Privacy & Security

    8. Description
    9. Objective
    10. 3.4 Information Literacy

    11. Description
    12. Objective
    13. 3.5 Creative Credit & Copyright

    14. Description
    15. Objective
    16. 3.6 Hacking Ethics

    17. Description
    18. Objective
    19. 3.7 Cybersecurity Unit Test

    20. Description
    21. Objective
  4. JavaScript and Graphics

    1. 4.1 Hello World

    2. Description
    3. Objective
    4. 4.2 Variables

    5. Description
    6. Objective
    7. 4.3 User Input

    8. Description
    9. Objective
    10. 4.4 Basic Math in JavaScript

    11. Description
    12. Objective
    13. 4.5 Using Graphics in JavaScript

    14. Description
    15. Objective
    16. 4.6 Pixel Images

    17. Description
    18. Objective
    19. 4.7 Using RGB to Create Colors

    20. Description
    21. Objective
  5. Graphics Challenges

    1. 5.1 Collaborative Programming

    2. Description
    3. Objective
    4. 5.2 Graphics Challenges

    5. Description
    6. Objective
  6. JavaScript Control Structures

    1. 6.1 Booleans

    2. Description
    3. Objective
    4. 6.2 Logical Operators

    5. Description
    6. Objective
    7. 6.3 Comparison Operators

    8. Description
    9. Objective
    10. 6.4 If Statements

    11. Description
    12. Objective
    13. 6.5 For Loops in JavaScript

    14. Description
    15. Objective
    16. 6.6 General For Loops

    17. Description
    18. Objective
    19. 6.7 For Loop Practice

    20. Description
    21. Objective
    22. 6.8 Random Numbers

    23. Description
    24. Objective
    25. 6.9 While Loops

    26. Description
    27. Objective
    28. 6.10 Loop and a Half

    29. Description
    30. Objective
  7. Control Structures Challenges

    1. 7.1 Control Structures Challenges

    2. Description
    3. Objective
  8. Functions and Parameters

    1. 8.1 Functions and Parameters 1

    2. Description
    3. Objective
    4. 8.2 Functions and Parameters 2

    5. Description
    6. Objective
    7. 8.3 Functions and Parameters 3

    8. Description
    9. Objective
    10. 8.4 Functions and Return Values 1

    11. Description
    12. Objective
    13. 8.5 Functions and Return Values 2

    14. Description
    15. Objective
    16. 8.6 Local Variables and Scope

    17. Description
    18. Objective
  9. Functions Challenges

    1. 9.1 Functions Challenges

    2. Description
    3. Objective
  10. Animation and Games

    1. 10.1 Timers

    2. Description
    3. Objective
    4. 10.2 Random Circles

    5. Description
    6. Objective
    7. 10.3 Random Ghosts

    8. Description
    9. Objective
    10. 10.4 Bouncing Ball

    11. Description
    12. Objective
    13. 10.5 Mouse Events: Mouse Clicked

    14. Description
    15. Objective
    16. 10.6 Mouse Events: Mouse Moved

    17. Description
    18. Objective
    19. 10.7 Drawing Lines

    20. Description
    21. Objective
    22. 10.8 Key Events

    23. Description
    24. Objective
    25. 10.9 Crazy Ball Game

    26. Description
    27. Objective
  11. Animation Challenges

    1. 11.1 Animation Challenges

    2. Description
    3. Objective
  12. Project: Breakout

    1. 12.1 Breakout

    2. Description
    3. Objective
  13. Final Project

    1. 13.1 Project Prep and Development

    2. Description
    3. Objective
  14. Final Exam

    1. 14.1 Final Exam

    2. Description
    3. Objective
  15. Midterm

    1. 15.1 Midterm

    2. Description
    3. Objective
  16. Extra Karel Practice

    1. 16.1 Extra Karel Practice

    2. Description
    3. Objective
  17. Extra Karel Puzzles

    1. 17.1 Extra Karel Puzzles

    2. Description
    3. Objective
  18. Functions and Parameters Practice

    1. 18.1 Functions and Parameters Practice

    2. Description
    3. Objective
  19. Extra Console Challenges

    1. 19.1 Prime Numbers

    2. Description
    3. Objective
  20. More Graphics and Animation

    1. 20.1 Fun Snake

    2. Description
    3. Objective
    4. 20.2 Fun Graphics Challenges

    5. Description
    6. Objective
  21. Data Structures Challenge Problems

    1. 21.1 Conway's Game of Life

    2. Description
    3. Objective
    4. 21.2 Connect Four

    5. Description
    6. Objective
  22. Evolution Simulation

    1. 22.1 Evolution Simulation

    2. Description
    3. Objective
  23. Demo Problems

    1. 23.1 Lesson 1

    2. Description
    3. Objective
  24. Extra Quiz Questions

    1. 24.1 Basic Javascript and Graphics

    2. Description
    3. Objective
    4. 24.2 Animation and Games

    5. Description
    6. Objective
    7. 24.3 Basic Data Structures

    8. Description
    9. Objective
  25. Visualizing Music

    1. 25.1 Visualizing Music

    2. Description
    3. Objective
  26. Data Structures

    1. 26.1 Intro to Lists/Arrays

    2. Description
    3. Objective
    4. 26.2 Indexing Into an Array

    5. Description
    6. Objective
    7. 26.3 Adding/Removing From an Array

    8. Description
    9. Objective
    10. 26.4 Array Length and Looping Through Arrays

    11. Description
    12. Objective
    13. 26.5 Iterating Over an Array

    14. Description
    15. Objective
    16. 26.6 Finding an Element in a List

    17. Description
    18. Objective
    19. 26.7 Removing an Element From an Array

    20. Description
    21. Objective
    22. 26.8 Intro to Objects/Maps

    23. Description
    24. Objective
    25. 26.9 Basics of Objects

    26. Description
    27. Objective
    28. 26.10 Iterating Over an Object

    29. Description
    30. Objective
    31. 26.11 When Do I Use an Object?

    32. Description
    33. Objective
    34. 26.12 Intro to Sets

    35. Description
    36. Objective
    37. 26.13 Intro to Grids

    38. Description
    39. Objective
    40. 26.14 Looping Over a Grid

    41. Description
    42. Objective
    43. 26.15 Grid Example: Get a Row

    44. Description
    45. Objective
    46. 26.16 Data Structures Challenges

    47. Description
    48. Objective
  27. Project: Tic Tac Toe

    1. 27.1 Tic Tac Toe

    2. Description
    3. Objective
  28. Project: Helicopter Game

    1. 28.1 Game Design: Helicopter

    2. Description
    3. Objective
    4. 28.2 Basics

    5. Description
    6. Objective
    7. 28.3 Improvements

    8. Description
    9. Objective
    10. 28.4 Polish

    11. Description
    12. Objective
    13. 28.5 Intro to Computer Science Completed

    14. Description
    15. Objective