Please enable JavaScript to use CodeHS

Standards Mapping

for Colorado 9-12

83

Standards in this Framework

59

Standards Mapped

71%

Mapped to Course

Standard Lessons
CS.HS.1.1a
Identify and create different types of algorithms (sort, search, etc.).
  1. 1.5 Functions in Karel
  2. 1.20 Karel Challenges
  3. 5.1 Functions and Parameters 1
  4. 5.4 Functions and Return Values 1
  5. 7.6 Finding an Element in a List
CS.HS.1.1b
Predict the outcome of different types of algorithms.
  1. 1.13 If/Else Statements
  2. 1.14 While Loops in Karel
  3. 4.4 If Statements
  4. 4.11 Loop and a Half
CS.HS.1.1c
Create or adapt algorithms to solve problems for multiple purposes (e.g., personal interests, client needs).
  1. 5.1 Functions and Parameters 1
  2. 5.4 Functions and Return Values 1
  3. 18.1 Intro to Design Thinking
  4. 18.4 Project Prep and Development
CS.HS.1.1d
Use an algorithm that involves mathematical operations and functions to solve problems.
  1. 3.6 Basic Math in JavaScript
CS.HS.1.1e
Use an iterative approach to utilizing and/or developing an algorithm.
  1. 4.6 For Loops in JavaScript
  2. 4.7 General For Loops
  3. 4.8 For Loop Practice
  4. 4.10 While Loops
  5. 4.11 Loop and a Half
CS.HS.1.1f
Recognize problems that cannot be solved computationally.
  1. 8.10 Cryptography
CS.HS.1.1g
Identify and describe algorithms that exist within their personal lives.
  1. 1.7 Top Down Design and Decomposition in Karel
  2. 3.2 Uses of Programs
CS.HS.1.2a
Identify and compare different algorithms that can be used to solve the same problem.
  1. 4.11 Loop and a Half
  2. 5.3 Functions and Parameters 3
CS.HS.1.2b
Illustrate the flow of execution of an iterative algorithm (e.g., recursion).
  1. 1.11 For Loops
  2. 4.6 For Loops in JavaScript
  3. 4.10 While Loops
CS.HS.1.2c
Explain the value of heuristic algorithms to model ways to solve problems.
CS.HS.1.2d
Adapt algorithms used in one problem to solve a related or different problem.
  1. 5.4 Functions and Return Values 1
  2. 5.5 Functions and Return Values 2
CS.HS.1.2e
Use multiple methods to represent an algorithm (e.g., diagram, programming language, unplugged).
  1. 1.7 Top Down Design and Decomposition in Karel
  2. 1.17 Karel Algorithms
CS.HS.1.3a
Describe pros and cons of the performance of algorithms for the same task.
  1. 1.20 Karel Challenges
  2. 4.11 Loop and a Half
CS.HS.1.3b
Use an iterative approach to developing an algorithm.
  1. 1.7 Top Down Design and Decomposition in Karel
  2. 1.17 Karel Algorithms
CS.HS.1.3c
Test and troubleshoot so that algorithms produce reasonable results.
  1. 1.7 Top Down Design and Decomposition in Karel
  2. 1.9 Abstraction
  3. 1.16 Debugging Strategies
CS.HS.1.4a
Demonstrate how the process of decomposition is iterative and used to solve problems.
  1. 1.7 Top Down Design and Decomposition in Karel
  2. 1.9 Abstraction
CS.HS.1.4b
Formulate possible solutions based on the decomposition of a problem.
  1. 1.7 Top Down Design and Decomposition in Karel
CS.HS.1.5a
Describe how abstraction is central to computational thinking.
  1. 1.9 Abstraction
CS.HS.1.5b
Identify and prioritize the most relevant parts of a problem while filtering out extraneous details.
  1. 1.7 Top Down Design and Decomposition in Karel
  2. 1.9 Abstraction
CS.HS.1.5c
Demonstrate different ways to represent key problem components.
  1. 1.7 Top Down Design and Decomposition in Karel
  2. 1.20 Karel Challenges
CS.HS.1.6a
Identify different types of data that are exchanged and produced by computers (e.g., protocols).
  1. 11.6 Packets and Protocols
CS.HS.1.6b
Represent data using multiple encoding schemes (e.g., RGB, Hex, HSB, ASCII, Unicode).
  1. 8.1 Intro to Digital Information
  2. 8.3 Encoding Text with Binary
  3. 8.4 Pixel Images
  4. 8.5 Hexadecimal
  5. 8.6 Pixel Colors!
  6. 8.7 Image Manipulation
CS.HS.1.6c
Evaluate the trade-offs for how data elements are organized and where data are stored (e.g., PNG/GIF, structured/unstructured).
  1. 8.8 Data Compression
  2. 8.9 Lossy Compression
CS.HS.1.6d
Compare and contrast various data structures/techniques for storing and processing data (e.g., arrays, lists, tables).
  1. 3.4 Variables
  2. 7.1 Intro to Lists/Arrays
  3. 7.2 Indexing Into an Array
  4. 33.1 Intro to Objects/Maps
CS.HS.1.7a
Analyze computer programs to identify patterns within the program.
  1. 1.5 Functions in Karel
  2. 1.11 For Loops
  3. 4.6 For Loops in JavaScript
CS.HS.1.7b
Provide multiple versions of data visualization in order to deepen problem analysis.
  1. 13.1 Getting Started with Data
  2. 13.2 Visualizing and Interpreting Data
CS.HS.1.7c
Interpret and analyze data to make informed decisions.
  1. 13.2 Visualizing and Interpreting Data
  2. 13.3 Data Collection & Limitations
  3. 14.1 Present a Data-Driven Insight
CS.HS.1.8a
Analyze computer output in different forms (e.g., plain text, CSV, graphs, images).
  1. 13.2 Visualizing and Interpreting Data
  2. 14.1 Present a Data-Driven Insight
CS.HS.1.8b
Design visualizations using the appropriate tool(s) with the end user in mind.
  1. 14.1 Present a Data-Driven Insight
  2. 18.1 Intro to Design Thinking
  3. 18.2 Prototype
  4. 18.3 Test
  5. 18.4 Project Prep and Development
CS.HS.1.8c
Provide multiple versions of data visualization in order to deepen problem analysis.
  1. 13.1 Getting Started with Data
  2. 13.2 Visualizing and Interpreting Data
  3. 14.1 Present a Data-Driven Insight
CS.HS.2.1a
Describe key protocols and underlying processes of internet-based services, (e.g., https) and discuss impact of technology change on communication protocols.
  1. 11.3 Internet Addresses
  2. 11.4 Viewing Websites
  3. 11.5 DNS
  4. 11.6 Packets and Protocols
  5. 11.9 The Impact of the Internet
CS.HS.2.1b
Illustrate and describe the basic components and various network types and topologies (e.g., personal, local, metropolitan, and wide).
  1. 11.2 Internet Hardware
CS.HS.2.1c
Explain the difference between decimal, hexadecimal, octal and binary number formats and how they are used in computing environments.
  1. 8.2 Number Systems
  2. 8.3 Encoding Text with Binary
  3. 8.4 Pixel Images
  4. 8.5 Hexadecimal
  5. 8.6 Pixel Colors!
  6. 8.7 Image Manipulation
CS.HS.2.2a
Explain the difference between memory and disk storage, internal and external storage, Random Access Memory (RAM), flash, cloud.
  1. 11.2 Internet Hardware
CS.HS.2.2b
List and explain the common working parts of a computing device.
  1. 11.2 Internet Hardware
CS.HS.2.2c
Explain how to maintain safety when working on PCs, e.g., electromagnetic precautions.
CS.HS.2.2d
Describe how computing devices are engineered for fault tolerance and reliability, and identify potential sources of weakness (e.g., redundant power supplies, RAID, SAN/NAS connections).
CS.HS.2.3a
Identify and differentiate between different kinds of software (e.g., operating systems vs. applications) and their purposes.
CS.HS.2.3b
Explain what an operating system is, and why it is important for a computer or computing device (e.g., Linux, Windows, iOS).
CS.HS.2.3c
Describe how software interacts with hardware to complete tasks.
CS.HS.2.4a
Explain the integration of hardware, software and network communications components to create a networked system.
  1. 11.2 Internet Hardware
CS.HS.2.4b
Summarize security approaches using a systems approach perspective
  1. 11.8 Cybersecurity
CS.HS.2.5a
Identify client’s problems/needs.
  1. 18.1 Intro to Design Thinking
CS.HS.2.5b
Articulate design requirements back to client.
  1. 18.2 Prototype
  2. 18.3 Test
CS.HS.2.5c
Illustrate options for considerations and develop conceptual model.
  1. 18.2 Prototype
CS.HS.2.5d
Perform system analysis based on client considerations.
CS.HS.2.6a
Identify different ways that systems might lose data or functionality.
  1. 8.8 Data Compression
  2. 8.9 Lossy Compression
  3. 8.10 Cryptography
  4. 11.8 Cybersecurity
CS.HS.2.6b
Describe elements of an effective backup system.
CS.HS.2.6c
Compare backup systems for computer users, or a network.
CS.HS.2.6d
List the various backup methodologies (e.g., full, differential), and why one would pick one over the other, or use all.
CS.HS.2.6e
Explain the ways an organization would continue to operate in light of a systems failure.
CS.HS.2.7a
Identify examples of threats to systems and data.
  1. 8.10 Cryptography
  2. 11.8 Cybersecurity
CS.HS.2.7b
Describe the process by which intruders gain entry into a production system (e.g., reconnaissance).
CS.HS.2.7c
Describe and compare methods to test/validate how well systems and data are protected.
CS.HS.2.7d
Investigate different career pathways relating to systems security.
CS.HS.3.1a
Analyze and apply a design methodology to identify constraints and requirements of an identified problem.
  1. 18.1 Intro to Design Thinking
  2. 18.2 Prototype
  3. 18.3 Test
  4. 18.4 Project Prep and Development
CS.HS.3.1b
Utilize tools and resources such as pseudocode, flowcharts, wireframes, etc., as part of the design process.
  1. 1.7 Top Down Design and Decomposition in Karel
  2. 3.1 What is Code
CS.HS.3.1c
Determine and use graphical or text-based languages.
  1. 1.1 Welcome to AP CSP
  2. 3.1 What is Code
  3. 3.3 Hello World
CS.HS.3.1d
Understand and apply core programming concepts.
  1. 3.4 Variables
  2. 3.5 User Input
  3. 3.6 Basic Math in JavaScript
  4. 4.1 Booleans
  5. 4.2 Logical Operators
  6. 4.3 Comparison Operators
  7. 4.4 If Statements
  8. 4.7 General For Loops
  9. 4.10 While Loops
  10. 5.1 Functions and Parameters 1
  11. 5.2 Functions and Parameters 2
  12. 5.3 Functions and Parameters 3
  13. 5.4 Functions and Return Values 1
  14. 5.5 Functions and Return Values 2
  15. 5.6 Local Variables and Scope
  16. 7.1 Intro to Lists/Arrays
  17. 7.5 Iterating Over an Array
CS.HS.3.2a
Write code per selected design.
  1. 2.1 Practice PT: Pair-Programming Paint!
  2. 6.1 Project: Tell a Story
  3. 10.1 Practice PT: Create an Image Filter!
CS.HS.3.2b
Create code comments to communicate to other developers and ensure documentation of code.
  1. 1.8 Commenting Your Code
CS.HS.3.2c
Use various troubleshooting and debugging techniques to improve code.
  1. 1.7 Top Down Design and Decomposition in Karel
  2. 1.8 Commenting Your Code
  3. 1.16 Debugging Strategies
  4. 1.18 How to Indent Your Code
CS.HS.3.2d
Create appropriate variables to store and retrieve data.
  1. 3.4 Variables
CS.HS.3.3a
Integrate collaborative strategies to improve programming outputs.
  1. 2.1 Practice PT: Pair-Programming Paint!
CS.HS.3.3b
Identify and analyze a variety of collaborative tools (e.g., commenting, development repositories) in order to determine the appropriateness for intended use.
  1. 1.8 Commenting Your Code
  2. 2.1 Practice PT: Pair-Programming Paint!
CS.HS.3.3c
Identify strategies such as peer reviews to test and refine artifacts in development.
  1. 2.1 Practice PT: Pair-Programming Paint!
CS.HS.3.3d
Determine when to use standard software tools like APIs, libraries, version control repositories, etc.
  1. 1.10 Super Karel
  2. 3.7 Using Graphics in JavaScript
CS.HS.3.4a
Understand and apply principles of client-based design.
CS.HS.3.4b
Guide/advise clients on strategies and solutions best suited for their problem (i.e., type of platform).
CS.HS.3.4c
Construct effective methods for gathering feedback from client.
CS.HS.3.4d
Respond to feedback from clients to improve computing solutions.
CS.HS.3.4e
Create and share product support documentation for potential users.
CS.HS.3.4f
Articulate lessons learned as a result of the design and creation process.
  1. 2.1 Practice PT: Pair-Programming Paint!
  2. 6.1 Project: Tell a Story
  3. 10.1 Practice PT: Create an Image Filter!
  4. 18.4 Project Prep and Development
CS.HS.3.5a
Investigate and understand privacy, security and protection laws.
CS.HS.3.5b
Articulate the importance of securing personal data information on encrypted storage systems.
  1. 11.8 Cybersecurity
CS.HS.3.5c
Identify and analyze current events to ensure the safety, security and wellbeing of all potential clients and end users.
CS.HS.3.5d
Identify influential computing innovations, and identify the beneficial and harmful effects they have had, or could have, on society, economy and culture.
  1. 11.9 The Impact of the Internet
CS.HS.3.5e
Discuss and explain how diversity of design and issues of accessibility impact a wide-range of users.
  1. 18.1 Intro to Design Thinking
CS.HS.3.5f
Demonstrate ways to improve the accessibility of computational technologies and artifacts.
  1. 18.2 Prototype
  2. 18.3 Test
  3. 18.4 Project Prep and Development
CS.HS.3.6a
Describe how software licensing influences program development.
CS.HS.3.6b
Investigate and develop solutions that discourage online software piracy.
CS.HS.3.6c
Explore and integrate security measures such as encryption, authentication and verification strategies to secure developed computer programs.
CS.HS.3.6d
Research and abide by intellectual property laws and patents.
  1. 11.9 The Impact of the Internet
  2. 11.10 Creative Credit & Copyright