Please enable JavaScript to use CodeHS

Standards Mapping

for IA

120

Standards in this Framework

41

Standards Mapped

34%

Mapped to Course

Standard Lessons
1A-AP-08
Model daily processes by creating and following algorithms (sets of step-by-step instructions) to complete tasks.
1A-AP-09
Model the way programs store and manipulate data by using numbers or other symbols to represent information.
1A-AP-10
Develop programs with sequences and simple loops, to express ideas or address a problem.
1A-AP-11
Decompose (break down) the steps needed to solve a problem into a precise sequence of instructions.
1A-AP-12
Develop plans that describe a program’s sequence of events, goals, and expected outcomes.
1A-AP-13
Give attribution when using the ideas and creations of others while developing programs.
1A-AP-14
Debug (identify and fix) errors in an algorithm or program that includes sequences and simple loops.
1A-AP-15
Using correct terminology, describe steps taken and choices made during the iterative process of program development.
1A-CS-01
Select and operate appropriate software to perform a variety of tasks, and recognize that users have different needs and preferences for the technology they use.
1A-CS-02
Use appropriate terminology in identifying and describing the function of common physical components of computing systems (hardware).
1A-CS-03
Describe basic hardware and software problems using accurate terminology.
1A-DA-05
Store, copy, search, retrieve, modify, and delete information using a computing device and define the information stored as data.
1A-DA-06
Collect and present the same data in various visual formats.
1A-DA-07
Identify and describe patterns in data visualizations, such as charts or graphs, to make predictions.
1A-IC-16
Compare how people live and work before and after the implementation or adoption of new computing technology.
1A-IC-17
Work respectfully and responsibly with others online.
1A-IC-18
Keep login information private, and log off of devices appropriately.
1A-NI-04
Explain what passwords are and why we use them, and use strong passwords to protect devices and information from unauthorized access.
1B-AP-08
Compare and refine multiple algorithms for the same task and determine which is the most appropriate.
1B-AP-09
Create programs that use variables to store and modify data.
1B-AP-10
Create programs that include sequences, events, loops, and conditionals.
1B-AP-11
Decompose (break down) problems into smaller, manageable subproblems to facilitate the program development process.
1B-AP-12
Modify, remix, or incorporate portions of an existing program into one's own work, to develop something new or add more advanced features.
1B-AP-13
Use an iterative process to plan the development of a program by including others' perspectives and considering user preferences.
1B-AP-14
Observe intellectual property rights and give appropriate attribution when creating or remixing programs.
1B-AP-15
Test and debug (identify and fix errors) a program or algorithm to ensure it runs as intended.
1B-AP-16
Take on varying roles, with teacher guidance, when collaborating with peers during the design, implementation, and review stages of program development.
1B-AP-17
Describe choices made during program development using code comments, presentations, and demonstrations.
1B-CS-01
Describe how internal and external parts of computing devices function to form a system.
1B-CS-02
Model how computer hardware and software work together as a system to accomplish tasks.
1B-CS-03
Determine potential solutions to solve simple hardware and software problems using common troubleshooting strategies.
1B-DA-06
Organize and present collected data visually to highlight relationships and support a claim.
1B-DA-07
Use data to highlight or propose cause-and-effect relationships, predict outcomes, or communicate an idea.
1B-IC-18
Discuss computing technologies that have changed the world, and express how those technologies influence, and are influenced by, cultural practices.
1B-IC-19
Brainstorm ways to improve the accessibility and usability of technology products for the diverse needs and wants of users.
1B-IC-20
Seek diverse perspectives for the purpose of improving computational artifacts.
1B-IC-21
Use public domain or creative commons media, and refrain from copying or using material created by others without permission.
1B-NI-04
Model how information is broken down into smaller pieces, transmitted as packets through multiple devices over networks and the Internet, and reassembled at the destination.
1B-NI-05
Discuss real-world cybersecurity problems and how personal information can be protected.
2-AP-10
Use flowcharts and/or pseudocode to address complex problems as algorithms.
  1. 2.4 Functions in Karel
  2. 2.5 The Start Function
  3. 2.6 Top Down Design and Decomposition in Karel
  4. 2.7 Commenting Your Code
2-AP-11
Create clearly named variables that represent different data types and perform operations on their values.
  1. 6.2 Variables
  2. 6.3 User Input
  3. 6.4 Basic Math in JavaScript
  4. 6.5 Using Graphics in JavaScript
  5. 9.1 Booleans
  6. 9.2 Logical Operators
  7. 9.3 Comparison Operators
  8. 9.4 If Statements
  9. 9.5 For Loops in JavaScript
  10. 9.6 General For Loops
  11. 9.7 For Loop Practice
  12. 9.8 Random Numbers
  13. 9.9 While Loops
  14. 9.10 Loop and a Half
  15. 11.1 Functions and Parameters 1
  16. 11.2 Functions and Parameters 2
  17. 11.3 Functions and Parameters 3
  18. 11.4 Functions and Return Values 1
  19. 11.5 Functions and Return Values 2
  20. 11.6 Timers
  21. 11.7 Random Circles
  22. 11.8 Random Ghosts
  23. 11.9 Bouncing Ball
  24. 11.10 Mouse Events: Mouse Clicked
  25. 11.11 Intro to Lists/Arrays
  26. 11.12 Adding/Removing From an Array
  27. 11.13 Array Length and Looping Through Arrays
  28. 11.14 Iterating Over an Array
  29. 14.1 Extra Karel Practice
  30. 15.1 Extra Karel Puzzles
  31. 16.1 Functions and Parameters Practice
  32. 17.1 Mouse Events: Mouse Moved
  33. 17.2 Drawing Lines
  34. 17.3 Key Events
  35. 17.4 Crazy Ball Game
  36. 18.1 Indexing Into an Array
  37. 18.2 Finding an Element in a List
  38. 18.3 Removing an Element From an Array
  39. 19.1 Intro to Objects/Maps
  40. 19.2 Basics of Objects
  41. 19.3 Iterating Over an Object
  42. 19.4 When Do I Use an Object?
  43. 19.5 Intro to Sets
  44. 19.6 Intro to Grids
  45. 19.7 Looping Over a Grid
  46. 19.8 Grid Example: Get a Row
  47. 19.9 Data Structures Challenges
2-AP-12
Design and iteratively develop programs that combine control structures, including nested loops and compound conditionals.
  1. 2.13 While Loops in Karel
  2. 2.14 Control Structures Example
  3. 11.8 Random Ghosts
  4. 11.9 Bouncing Ball
  5. 11.10 Mouse Events: Mouse Clicked
  6. 11.11 Intro to Lists/Arrays
  7. 11.12 Adding/Removing From an Array
  8. 11.13 Array Length and Looping Through Arrays
  9. 11.14 Iterating Over an Array
  10. 14.1 Extra Karel Practice
  11. 15.1 Extra Karel Puzzles
  12. 16.1 Functions and Parameters Practice
  13. 17.1 Mouse Events: Mouse Moved
  14. 17.2 Drawing Lines
  15. 17.3 Key Events
  16. 17.4 Crazy Ball Game
  17. 18.1 Indexing Into an Array
  18. 18.2 Finding an Element in a List
  19. 18.3 Removing an Element From an Array
  20. 19.1 Intro to Objects/Maps
  21. 19.2 Basics of Objects
  22. 19.3 Iterating Over an Object
  23. 19.4 When Do I Use an Object?
  24. 19.5 Intro to Sets
  25. 19.6 Intro to Grids
  26. 19.7 Looping Over a Grid
  27. 19.8 Grid Example: Get a Row
  28. 19.9 Data Structures Challenges
2-AP-13
Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs.
2-AP-14
Create procedures with parameters to organize code and make it easier to reuse.
  1. 9.4 If Statements
  2. 9.5 For Loops in JavaScript
  3. 9.6 General For Loops
  4. 9.7 For Loop Practice
  5. 9.8 Random Numbers
  6. 9.9 While Loops
  7. 9.10 Loop and a Half
  8. 11.1 Functions and Parameters 1
  9. 11.2 Functions and Parameters 2
  10. 11.3 Functions and Parameters 3
  11. 11.4 Functions and Return Values 1
  12. 11.5 Functions and Return Values 2
  13. 11.7 Random Circles
  14. 11.8 Random Ghosts
  15. 11.9 Bouncing Ball
  16. 11.10 Mouse Events: Mouse Clicked
  17. 11.13 Array Length and Looping Through Arrays
  18. 11.14 Iterating Over an Array
  19. 14.1 Extra Karel Practice
  20. 15.1 Extra Karel Puzzles
  21. 16.1 Functions and Parameters Practice
  22. 17.1 Mouse Events: Mouse Moved
  23. 17.2 Drawing Lines
  24. 17.3 Key Events
  25. 17.4 Crazy Ball Game
  26. 18.2 Finding an Element in a List
  27. 18.3 Removing an Element From an Array
  28. 19.1 Intro to Objects/Maps
  29. 19.2 Basics of Objects
  30. 19.3 Iterating Over an Object
  31. 19.4 When Do I Use an Object?
  32. 19.5 Intro to Sets
  33. 19.6 Intro to Grids
  34. 19.7 Looping Over a Grid
  35. 19.8 Grid Example: Get a Row
  36. 19.9 Data Structures Challenges
2-AP-15
Seek and incorporate feedback from team members and users to refine a solution that meets user needs.
2-AP-16
Incorporate existing code, media, and libraries into original programs, and give attribution.
2-AP-17
Systematically test and refine programs using a range of test cases.
2-AP-18
Distribute tasks and maintain a project timeline when collaboratively developing computational artifacts.
2-AP-19
Document programs in order to make them easier to follow, test, and debug.
  1. 6.2 Variables
  2. 6.3 User Input
  3. 6.4 Basic Math in JavaScript
  4. 6.5 Using Graphics in JavaScript
  5. 9.1 Booleans
  6. 9.2 Logical Operators
  7. 9.3 Comparison Operators
  8. 9.4 If Statements
  9. 9.5 For Loops in JavaScript
  10. 9.6 General For Loops
  11. 9.7 For Loop Practice
  12. 9.8 Random Numbers
  13. 9.9 While Loops
  14. 9.10 Loop and a Half
  15. 11.1 Functions and Parameters 1
  16. 11.2 Functions and Parameters 2
  17. 11.3 Functions and Parameters 3
  18. 11.6 Timers
  19. 11.7 Random Circles
  20. 11.8 Random Ghosts
  21. 11.9 Bouncing Ball
  22. 11.10 Mouse Events: Mouse Clicked
  23. 11.11 Intro to Lists/Arrays
  24. 11.12 Adding/Removing From an Array
  25. 11.13 Array Length and Looping Through Arrays
  26. 11.14 Iterating Over an Array
  27. 14.1 Extra Karel Practice
  28. 15.1 Extra Karel Puzzles
  29. 16.1 Functions and Parameters Practice
  30. 17.1 Mouse Events: Mouse Moved
  31. 17.2 Drawing Lines
  32. 17.3 Key Events
  33. 17.4 Crazy Ball Game
  34. 18.1 Indexing Into an Array
  35. 18.2 Finding an Element in a List
  36. 18.3 Removing an Element From an Array
  37. 19.1 Intro to Objects/Maps
  38. 19.2 Basics of Objects
  39. 19.3 Iterating Over an Object
  40. 19.4 When Do I Use an Object?
  41. 19.5 Intro to Sets
  42. 19.6 Intro to Grids
  43. 19.7 Looping Over a Grid
  44. 19.8 Grid Example: Get a Row
  45. 19.9 Data Structures Challenges
2-CS-01
Recommend improvements to the design of computing devices, based on an analysis of how users interact with the devices.
2-CS-02
Design projects that combine hardware and software components to collect and exchange data.
2-CS-03
Systematically identify and fix problems with computing devices and their components.
2-DA-07
Represent data using multiple encoding schemes.
2-DA-08
Collect data using computational tools and transform the data to make it more useful and reliable.
2-DA-09
Refine computational models based on the data they have generated.
2-IC-20
Compare tradeoffs associated with computing technologies that affect people's everyday activities and career options.
  1. 1.1 What is Cybersecurity?
  2. 1.3 Digital Footprint and Reputation
  3. 1.4 Cyberbullying
  4. 1.5 Internet Safety
  5. 1.6 Privacy & Security
  6. 1.7 Information Literacy
  7. 1.11 Creative Credit & Copyright
  8. 1.12 Hacking Ethics
  9. 1.13 Project: Public Service Announcement
  10. 4.1 History of Computers
  11. 4.5 Future of Computing
  12. 21.1 History of Computers
2-IC-21
Discuss issues of bias and accessibility in the design of existing technologies.
  1. 1.4 Cyberbullying
  2. 1.13 Project: Public Service Announcement
2-IC-22
Collaborate with many contributors through strategies such as crowdsourcing or surveys when creating a computational artifact.
2-IC-23
Describe tradeoffs between allowing information to be public and keeping information private and secure.
  1. 1.1 What is Cybersecurity?
  2. 1.2 The CIA Triad
  3. 1.3 Digital Footprint and Reputation
  4. 1.4 Cyberbullying
  5. 1.5 Internet Safety
  6. 1.6 Privacy & Security
  7. 1.11 Creative Credit & Copyright
  8. 1.13 Project: Public Service Announcement
2-NI-04
Model the role of protocols in transmitting data across networks and the Internet.
2-NI-05
Explain how physical and digital security measures protect electronic information.
  1. 1.5 Internet Safety
  2. 1.6 Privacy & Security
  3. 1.12 Hacking Ethics
  4. 1.13 Project: Public Service Announcement
2-NI-06
Apply multiple methods of encryption to model the secure transmission of information.
3A-AP-13
Create prototypes that use algorithms to solve computational problems by leveraging prior student knowledge and personal interests.
  1. 11.7 Random Circles
  2. 11.8 Random Ghosts
  3. 11.9 Bouncing Ball
  4. 17.4 Crazy Ball Game
  5. 19.1 Intro to Objects/Maps
  6. 19.4 When Do I Use an Object?
3A-AP-14
Use lists to simplify solutions, generalizing computational problems instead of repeatedly using simple variables.
  1. 11.11 Intro to Lists/Arrays
  2. 11.12 Adding/Removing From an Array
  3. 11.13 Array Length and Looping Through Arrays
  4. 11.14 Iterating Over an Array
  5. 18.1 Indexing Into an Array
  6. 18.2 Finding an Element in a List
  7. 18.3 Removing an Element From an Array
  8. 19.1 Intro to Objects/Maps
  9. 19.2 Basics of Objects
  10. 19.3 Iterating Over an Object
  11. 19.4 When Do I Use an Object?
  12. 19.5 Intro to Sets
  13. 19.6 Intro to Grids
  14. 19.7 Looping Over a Grid
  15. 19.8 Grid Example: Get a Row
  16. 19.9 Data Structures Challenges
3A-AP-15
Justify the selection of specific control structures when tradeoffs involve implementation, readability, and program performance, and explain the benefits and drawbacks of choices made.
3A-AP-16
Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
  1. 1.10 Simulation
  2. 11.10 Mouse Events: Mouse Clicked
  3. 17.1 Mouse Events: Mouse Moved
  4. 17.3 Key Events
  5. 17.4 Crazy Ball Game
  6. 19.9 Data Structures Challenges
3A-AP-17
Decompose problems into smaller components through systematic analysis, using constructs such as procedures, modules, and/or objects.
  1. 1.10 Simulation
  2. 2.4 Functions in Karel
  3. 2.5 The Start Function
  4. 2.6 Top Down Design and Decomposition in Karel
  5. 2.7 Commenting Your Code
  6. 2.8 Abstraction
  7. 2.9 Super Karel
  8. 2.10 For Loops
  9. 2.11 If Statements
  10. 2.12 If/Else Statements
  11. 2.13 While Loops in Karel
  12. 2.14 Control Structures Example
  13. 2.15 More Karel Examples and Testing
  14. 2.16 How to Indent Your Code
  15. 3.2 Challenge Problems
  16. 6.1 Hello World
  17. 6.2 Variables
  18. 6.3 User Input
  19. 6.4 Basic Math in JavaScript
  20. 6.5 Using Graphics in JavaScript
  21. 9.1 Booleans
  22. 9.2 Logical Operators
  23. 9.3 Comparison Operators
  24. 9.4 If Statements
  25. 9.5 For Loops in JavaScript
  26. 9.6 General For Loops
  27. 9.7 For Loop Practice
  28. 9.8 Random Numbers
  29. 9.9 While Loops
  30. 9.10 Loop and a Half
  31. 11.1 Functions and Parameters 1
  32. 11.2 Functions and Parameters 2
  33. 11.3 Functions and Parameters 3
  34. 11.4 Functions and Return Values 1
  35. 11.5 Functions and Return Values 2
  36. 11.6 Timers
  37. 11.7 Random Circles
  38. 11.8 Random Ghosts
  39. 11.9 Bouncing Ball
  40. 11.10 Mouse Events: Mouse Clicked
  41. 11.11 Intro to Lists/Arrays
  42. 11.12 Adding/Removing From an Array
  43. 11.13 Array Length and Looping Through Arrays
  44. 11.14 Iterating Over an Array
  45. 14.1 Extra Karel Practice
  46. 16.1 Functions and Parameters Practice
  47. 17.1 Mouse Events: Mouse Moved
  48. 17.2 Drawing Lines
  49. 17.3 Key Events
  50. 17.4 Crazy Ball Game
  51. 18.1 Indexing Into an Array
  52. 18.2 Finding an Element in a List
  53. 18.3 Removing an Element From an Array
  54. 19.1 Intro to Objects/Maps
  55. 19.2 Basics of Objects
  56. 19.3 Iterating Over an Object
  57. 19.4 When Do I Use an Object?
  58. 19.5 Intro to Sets
  59. 19.6 Intro to Grids
  60. 19.7 Looping Over a Grid
  61. 19.8 Grid Example: Get a Row
  62. 19.9 Data Structures Challenges
3A-AP-18
Create artifacts by using procedures within a program, combinations of data and procedures, or independent but interrelated programs.
  1. 1.10 Simulation
  2. 2.1 Introduction to Programming With Karel
  3. 2.2 More Basic Karel
  4. 2.3 Karel Can't Turn Right
  5. 2.4 Functions in Karel
  6. 2.5 The Start Function
  7. 2.6 Top Down Design and Decomposition in Karel
  8. 2.7 Commenting Your Code
  9. 2.8 Abstraction
  10. 2.9 Super Karel
  11. 2.10 For Loops
  12. 2.11 If Statements
  13. 2.12 If/Else Statements
  14. 6.5 Using Graphics in JavaScript
  15. 11.6 Timers
  16. 11.7 Random Circles
  17. 11.8 Random Ghosts
  18. 11.9 Bouncing Ball
  19. 11.10 Mouse Events: Mouse Clicked
  20. 17.1 Mouse Events: Mouse Moved
  21. 17.2 Drawing Lines
  22. 17.3 Key Events
  23. 17.4 Crazy Ball Game
  24. 19.9 Data Structures Challenges
3A-AP-19
Systematically design and develop programs for broad audiences by incorporating feedback from users.
3A-AP-20
Evaluate licenses that limit or restrict use of computational artifacts when using resources such as libraries.
3A-AP-21
Evaluate and refine computational artifacts to make them more usable and accessible.
3A-AP-22
Design and develop computational artifacts working in team roles using collaborative tools.
3A-AP-23
Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.
  1. 2.7 Commenting Your Code
  2. 2.9 Super Karel
  3. 2.10 For Loops
  4. 2.11 If Statements
  5. 2.12 If/Else Statements
  6. 2.13 While Loops in Karel
  7. 2.14 Control Structures Example
  8. 2.15 More Karel Examples and Testing
  9. 2.16 How to Indent Your Code
  10. 3.2 Challenge Problems
  11. 6.1 Hello World
  12. 6.2 Variables
  13. 6.3 User Input
  14. 6.4 Basic Math in JavaScript
  15. 6.5 Using Graphics in JavaScript
  16. 9.1 Booleans
  17. 9.2 Logical Operators
  18. 9.3 Comparison Operators
  19. 9.4 If Statements
  20. 9.5 For Loops in JavaScript
  21. 9.6 General For Loops
  22. 9.7 For Loop Practice
  23. 9.8 Random Numbers
  24. 9.9 While Loops
  25. 9.10 Loop and a Half
  26. 11.1 Functions and Parameters 1
  27. 11.2 Functions and Parameters 2
  28. 11.3 Functions and Parameters 3
  29. 11.4 Functions and Return Values 1
  30. 11.5 Functions and Return Values 2
  31. 11.6 Timers
  32. 11.7 Random Circles
  33. 11.8 Random Ghosts
  34. 11.9 Bouncing Ball
  35. 11.10 Mouse Events: Mouse Clicked
  36. 11.11 Intro to Lists/Arrays
  37. 11.12 Adding/Removing From an Array
  38. 11.13 Array Length and Looping Through Arrays
  39. 11.14 Iterating Over an Array
  40. 14.1 Extra Karel Practice
  41. 15.1 Extra Karel Puzzles
  42. 16.1 Functions and Parameters Practice
  43. 17.1 Mouse Events: Mouse Moved
  44. 17.2 Drawing Lines
  45. 17.3 Key Events
  46. 17.4 Crazy Ball Game
  47. 18.1 Indexing Into an Array
  48. 18.2 Finding an Element in a List
  49. 18.3 Removing an Element From an Array
  50. 19.1 Intro to Objects/Maps
  51. 19.2 Basics of Objects
  52. 19.3 Iterating Over an Object
  53. 19.4 When Do I Use an Object?
  54. 19.5 Intro to Sets
  55. 19.6 Intro to Grids
  56. 19.7 Looping Over a Grid
  57. 19.8 Grid Example: Get a Row
  58. 19.9 Data Structures Challenges
3A-CS-01
Explain how abstractions hide the underlying implementation details of computing systems embedded in everyday objects.
  1. 2.8 Abstraction
  2. 2.9 Super Karel
3A-CS-02
Compare levels of abstraction and interactions between application software, system software, and hardware layers.
  1. 2.8 Abstraction
  2. 4.2 Computer Organization
  3. 4.3 Software
  4. 4.4 Hardware
3A-CS-03
Develop guidelines that convey systematic troubleshooting strategies that others can use to identify and fix errors.
3A-DA-09
Translate between different bit representations of real-world phenomena, such as characters, numbers, and images.
3A-DA-10
Evaluate the tradeoffs in how data elements are organized and where data is stored.
  1. 1.6 Privacy & Security
  2. 1.13 Project: Public Service Announcement
3A-DA-11
Create interactive data visualizations using software tools to help others better understand real-world phenomena.
3A-DA-12
Create computational models that represent the relationships among different elements of data collected from a phenomenon or process.
3A-IC-24
Evaluate the ways computing impacts personal, ethical, social, economic, and cultural practices.
  1. 1.1 What is Cybersecurity?
  2. 1.2 The CIA Triad
  3. 1.3 Digital Footprint and Reputation
  4. 1.4 Cyberbullying
  5. 1.5 Internet Safety
  6. 1.6 Privacy & Security
  7. 1.7 Information Literacy
  8. 1.11 Creative Credit & Copyright
  9. 1.12 Hacking Ethics
  10. 1.13 Project: Public Service Announcement
  11. 5.8 The Impact of the Internet
3A-IC-25
Test and refine computational artifacts to reduce bias and equity deficits.
  1. 1.4 Cyberbullying
  2. 1.7 Information Literacy
  3. 1.13 Project: Public Service Announcement
  4. 13.1 Computer Science Careers
3A-IC-26
Demonstrate ways a given algorithm applies to problems across disciplines.
  1. 5.8 The Impact of the Internet
  2. 13.1 Computer Science Careers
3A-IC-27
Use tools and methods for collaboration on a project to increase connectivity of people in different cultures and career fields.
  1. 3.1 Collaborative Programming
3A-IC-28
Explain the beneficial and harmful effects that intellectual property laws can have on innovation.
  1. 1.7 Information Literacy
  2. 1.11 Creative Credit & Copyright
  3. 1.13 Project: Public Service Announcement
  4. 5.8 The Impact of the Internet
3A-IC-29
Explain the privacy concerns related to the collection and generation of data through automated processes that may not be evident to users.
  1. 1.1 What is Cybersecurity?
  2. 1.2 The CIA Triad
  3. 1.3 Digital Footprint and Reputation
  4. 1.5 Internet Safety
  5. 1.6 Privacy & Security
  6. 1.13 Project: Public Service Announcement
3A-IC-30
Evaluate the social and economic implications of privacy in the context of safety, law, or ethics.
  1. 1.2 The CIA Triad
  2. 1.3 Digital Footprint and Reputation
  3. 1.5 Internet Safety
  4. 1.6 Privacy & Security
  5. 1.12 Hacking Ethics
  6. 1.13 Project: Public Service Announcement
  7. 5.8 The Impact of the Internet
3A-NI-04
Evaluate the scalability and reliability of networks, by describing the relationship between routers, switches, servers, topology, and addressing.
  1. 5.1 Intro to the Internet
  2. 5.2 Internet Hardware
  3. 5.3 Internet Addresses
  4. 5.4 DNS
  5. 5.5 Routing
  6. 5.6 Packets and Protocols
3A-NI-05
Give examples to illustrate how sensitive data can be affected by malware and other attacks.
  1. 1.1 What is Cybersecurity?
  2. 1.6 Privacy & Security
  3. 1.13 Project: Public Service Announcement
3A-NI-06
Recommend security measures to address various scenarios based on factors such as efficiency, feasibility, and ethical impacts.
  1. 1.1 What is Cybersecurity?
  2. 1.3 Digital Footprint and Reputation
  3. 1.5 Internet Safety
  4. 1.6 Privacy & Security
  5. 1.13 Project: Public Service Announcement
3A-NI-07
Compare various security measures, considering tradeoffs between the usability and security of a computing system.
3A-NI-08
Explain tradeoffs when selecting and implementing cybersecurity recommendations.
  1. 1.3 Digital Footprint and Reputation
  2. 1.6 Privacy & Security
  3. 1.13 Project: Public Service Announcement
3B-AP-08
Describe how artificial intelligence drives many software and physical systems.
  1. 4.5 Future of Computing
3B-AP-09
Implement an artificial intelligence algorithm to play a game against a human opponent or solve a problem.
3B-AP-10
Use and adapt classic algorithms to solve computational problems.
3B-AP-11
Evaluate algorithms in terms of their efficiency, correctness, and clarity.
3B-AP-12
Compare and contrast fundamental data structures and their uses.
  1. 9.2 Logical Operators
  2. 9.3 Comparison Operators
  3. 9.4 If Statements
  4. 9.5 For Loops in JavaScript
  5. 9.6 General For Loops
  6. 9.7 For Loop Practice
  7. 9.8 Random Numbers
  8. 9.9 While Loops
  9. 9.10 Loop and a Half
  10. 11.1 Functions and Parameters 1
  11. 11.2 Functions and Parameters 2
  12. 11.3 Functions and Parameters 3
  13. 11.4 Functions and Return Values 1
  14. 11.5 Functions and Return Values 2
  15. 11.8 Random Ghosts
  16. 11.9 Bouncing Ball
  17. 11.10 Mouse Events: Mouse Clicked
  18. 11.14 Iterating Over an Array
  19. 14.1 Extra Karel Practice
  20. 15.1 Extra Karel Puzzles
  21. 16.1 Functions and Parameters Practice
  22. 17.1 Mouse Events: Mouse Moved
  23. 17.3 Key Events
  24. 18.2 Finding an Element in a List
  25. 18.3 Removing an Element From an Array
  26. 19.3 Iterating Over an Object
  27. 19.4 When Do I Use an Object?
  28. 19.5 Intro to Sets
  29. 19.6 Intro to Grids
  30. 19.8 Grid Example: Get a Row
  31. 19.9 Data Structures Challenges
3B-AP-13
Illustrate the flow of execution of a recursive algorithm.
3B-AP-14
Construct solutions to problems using student-created components, such as procedures, modules and/or objects.
  1. 2.3 Karel Can't Turn Right
  2. 2.4 Functions in Karel
  3. 2.5 The Start Function
  4. 2.6 Top Down Design and Decomposition in Karel
  5. 2.7 Commenting Your Code
  6. 2.8 Abstraction
  7. 2.9 Super Karel
  8. 2.10 For Loops
  9. 2.11 If Statements
  10. 2.12 If/Else Statements
  11. 2.13 While Loops in Karel
  12. 2.14 Control Structures Example
  13. 2.15 More Karel Examples and Testing
  14. 2.16 How to Indent Your Code
  15. 3.2 Challenge Problems
  16. 11.1 Functions and Parameters 1
  17. 11.2 Functions and Parameters 2
  18. 11.3 Functions and Parameters 3
  19. 11.4 Functions and Return Values 1
  20. 11.5 Functions and Return Values 2
  21. 11.7 Random Circles
  22. 11.8 Random Ghosts
  23. 11.9 Bouncing Ball
  24. 11.10 Mouse Events: Mouse Clicked
  25. 11.13 Array Length and Looping Through Arrays
  26. 11.14 Iterating Over an Array
  27. 14.1 Extra Karel Practice
  28. 15.1 Extra Karel Puzzles
  29. 16.1 Functions and Parameters Practice
  30. 17.1 Mouse Events: Mouse Moved
  31. 17.2 Drawing Lines
  32. 17.3 Key Events
  33. 17.4 Crazy Ball Game
  34. 18.2 Finding an Element in a List
  35. 18.3 Removing an Element From an Array
  36. 19.1 Intro to Objects/Maps
  37. 19.2 Basics of Objects
  38. 19.3 Iterating Over an Object
  39. 19.4 When Do I Use an Object?
  40. 19.5 Intro to Sets
  41. 19.6 Intro to Grids
  42. 19.7 Looping Over a Grid
  43. 19.8 Grid Example: Get a Row
  44. 19.9 Data Structures Challenges
3B-AP-15
Analyze a large-scale computational problem and identify generalizable patterns that can be applied to a solution.
3B-AP-16
Demonstrate code reuse by creating programming solutions using libraries and APIs.
  1. 1.10 Simulation
  2. 2.1 Introduction to Programming With Karel
  3. 2.2 More Basic Karel
  4. 2.3 Karel Can't Turn Right
  5. 2.4 Functions in Karel
  6. 2.5 The Start Function
  7. 2.6 Top Down Design and Decomposition in Karel
  8. 2.7 Commenting Your Code
  9. 2.8 Abstraction
  10. 2.9 Super Karel
  11. 2.10 For Loops
  12. 2.11 If Statements
  13. 2.12 If/Else Statements
  14. 2.13 While Loops in Karel
  15. 2.14 Control Structures Example
  16. 2.15 More Karel Examples and Testing
  17. 2.16 How to Indent Your Code
  18. 3.2 Challenge Problems
  19. 6.1 Hello World
  20. 6.2 Variables
  21. 6.3 User Input
  22. 6.4 Basic Math in JavaScript
  23. 6.5 Using Graphics in JavaScript
  24. 9.1 Booleans
  25. 9.2 Logical Operators
  26. 9.3 Comparison Operators
  27. 9.4 If Statements
  28. 9.5 For Loops in JavaScript
  29. 9.6 General For Loops
  30. 9.7 For Loop Practice
  31. 9.8 Random Numbers
  32. 9.9 While Loops
  33. 9.10 Loop and a Half
  34. 11.1 Functions and Parameters 1
  35. 11.2 Functions and Parameters 2
  36. 11.3 Functions and Parameters 3
  37. 11.4 Functions and Return Values 1
  38. 11.5 Functions and Return Values 2
  39. 11.6 Timers
  40. 11.7 Random Circles
  41. 11.8 Random Ghosts
  42. 11.9 Bouncing Ball
  43. 11.10 Mouse Events: Mouse Clicked
  44. 11.11 Intro to Lists/Arrays
  45. 11.12 Adding/Removing From an Array
  46. 11.13 Array Length and Looping Through Arrays
  47. 11.14 Iterating Over an Array
  48. 14.1 Extra Karel Practice
  49. 15.1 Extra Karel Puzzles
  50. 16.1 Functions and Parameters Practice
  51. 17.1 Mouse Events: Mouse Moved
  52. 17.2 Drawing Lines
  53. 17.3 Key Events
  54. 17.4 Crazy Ball Game
  55. 18.1 Indexing Into an Array
  56. 18.2 Finding an Element in a List
  57. 18.3 Removing an Element From an Array
  58. 19.1 Intro to Objects/Maps
  59. 19.2 Basics of Objects
  60. 19.3 Iterating Over an Object
  61. 19.4 When Do I Use an Object?
  62. 19.5 Intro to Sets
  63. 19.6 Intro to Grids
  64. 19.7 Looping Over a Grid
  65. 19.8 Grid Example: Get a Row
  66. 19.9 Data Structures Challenges
3B-AP-17
Plan and develop programs for broad audiences using a software life cycle process.
3B-AP-18
Explain security issues that might lead to compromised computer programs.
  1. 1.12 Hacking Ethics
  2. 1.13 Project: Public Service Announcement
3B-AP-19
Develop programs for multiple computing platforms.
  1. 11.6 Timers
  2. 11.7 Random Circles
  3. 11.8 Random Ghosts
  4. 11.9 Bouncing Ball
  5. 11.10 Mouse Events: Mouse Clicked
  6. 17.1 Mouse Events: Mouse Moved
  7. 17.2 Drawing Lines
  8. 17.3 Key Events
  9. 17.4 Crazy Ball Game
3B-AP-20
Use version control systems, integrated development environments (IDEs), and collaborative tools and practices (code documentation) in a group software project.
3B-AP-21
Develop and use a series of test cases to verify that a program performs according to its design specifications.
3B-AP-22
Modify an existing program to add additional functionality and discuss intended and unintended implications (e.g., breaking other functionality).
3B-AP-23
Evaluate key qualities of a program through a process such as a code review.
3B-AP-24
Compare multiple programming languages and discuss how their features make them suitable for solving different types of problems.
3B-CS-01
Categorize the roles of operating system software.
3B-CS-02
Illustrate ways computing systems implement logic, input, and output through hardware components.
  1. 2.8 Abstraction
3B-DA-05
Use data analysis tools and techniques to identify patterns in data representing complex systems.
3B-DA-06
Select data collection tools and techniques to generate data sets that support a claim or communicate information.
3B-DA-07
Evaluate the ability of models and simulations to test and support the refinement of hypotheses.
3B-IC-25
Evaluate computational artifacts to maximize their beneficial effects and minimize harmful effects on society.
  1. 1.5 Internet Safety
  2. 1.6 Privacy & Security
  3. 1.7 Information Literacy
  4. 1.11 Creative Credit & Copyright
  5. 1.12 Hacking Ethics
  6. 1.13 Project: Public Service Announcement
3B-IC-26
Evaluate the impact of equity, access, and influence on the distribution of computing resources in a global society.
  1. 1.2 The CIA Triad
  2. 1.5 Internet Safety
  3. 1.13 Project: Public Service Announcement
  4. 5.8 The Impact of the Internet
3B-IC-27
Predict how computational innovations that have revolutionized aspects of our culture might evolve.
  1. 1.1 What is Cybersecurity?
  2. 1.2 The CIA Triad
  3. 1.5 Internet Safety
  4. 1.6 Privacy & Security
  5. 1.7 Information Literacy
  6. 1.11 Creative Credit & Copyright
  7. 1.13 Project: Public Service Announcement
  8. 4.5 Future of Computing
  9. 5.2 Internet Hardware
  10. 5.8 The Impact of the Internet
3B-IC-28
Debate laws and regulations that impact the development and use of software.
  1. 1.4 Cyberbullying
  2. 1.6 Privacy & Security
  3. 1.11 Creative Credit & Copyright
  4. 1.12 Hacking Ethics
  5. 1.13 Project: Public Service Announcement
3B-NI-03
Describe the issues that impact network functionality (e.g., bandwidth, load, delay, topology).
3B-NI-04
Compare ways software developers protect devices and information from unauthorized access.
  1. 1.2 The CIA Triad
  2. 1.3 Digital Footprint and Reputation
  3. 1.6 Privacy & Security
  4. 1.12 Hacking Ethics
  5. 1.13 Project: Public Service Announcement