Please enable JavaScript to use CodeHS

Standards Mapping

for Virginia Computer Science Foundations 2025

101

Standards in this Framework

35

Standards Mapped

34%

Mapped to Course

Standard Lessons
CSF.AP.1.a
Identify real-world problems that are classification and prediction problems.
CSF.AP.1.b
Decompose a problem or process into sub-components.
  1. 2.5 Top Down Design and Decomposition in Karel
CSF.AP.1.c
Implement abstractions to improve program modularity, reusability, and readability.
  1. 2.7 Abstraction
CSF.AP.1.d
Identify computing-based solutions to address a computational problem.
CSF.AP.2.a
Create programs using a text-based programming language.
CSF.AP.2.b
Document programs to improve the ability to trace, test, and debug.
  1. 2.6 Commenting Your Code
  2. 3.6 Comments
CSF.AP.2.c
Trace the execution of an algorithm and predict its results.
  1. 2.14 Debugging Strategies
CSF.AP.2.d
Analyze the outcomes of programs to identify logic and syntax errors.
  1. 2.14 Debugging Strategies
CSF.AP.2.e
Use multiple test cases to verify and refine the program.
  1. 2.14 Debugging Strategies
CSF.AP.2.f
Revise and improve an algorithm to resolve errors or produce desired outcomes.
  1. 2.14 Debugging Strategies
CSF.AP.2.g
Use version control and incorporate user feedback to refine program.
CSF.AP.3.a
Read and interpret algorithms and programs expressed using plain language, pseudocode, and text-based programming languages.
  1. 2.15 Algorithms
CSF.AP.3.b
Create design documents using plain language, pseudocode, or diagrams.
CSF.AP.3.c
Read and write algorithms and programs that accept multiple input values, use variables, and produce output.
  1. 3.3 User Input
CSF.AP.3.d
Read and write algorithms and programs that include predefined functions and procedures with parameters and returns.
  1. 2.17 Karel Challenges
  2. 9.1 Functions
  3. 9.2 Functions and Parameters
CSF.AP.3.e
Compare several implementations of the same algorithm using different control structures.
  1. 2.13 Control Structures Example
CSF.AP.4.a
Determine appropriate data structures to address program specifications.
  1. 12.2 Lists
CSF.AP.4.b
Apply basic computations on numeric and non-numeric data types.
  1. 3.4 Mathematical Operators
CSF.AP.4.c
Read and write programs that create, store, and manipulate primitive data.
  1. 12.2 Lists
CSF.AP.4.d
Read and write programs that create, store, and manipulate linear collections of primitive data types: arrays or list.
  1. 5.3 Comparison Operators
CSF.AP.4.e
Read and write programs that use relational, logical, and arithmetic expressions.
  1. 5.4 Logical Operators
CSF.AP.4.f
Read and write programs that traverse and manipulate data structures.
  1. 12.4 List Methods
CSF.AP.5.a
Define and describe neural network learning algorithms.
CSF.AP.5.b
Illustrate and describe a neural network structure.
CSF.AP.5.c
Identify and discuss examples of computing technologies that utilize neural networks.
CSF.AP.5.d
Compare and contrast a decision tree learning algorithm and a neural network learning algorithm.
CSF.AP.6.a
Identify and describe characteristics of block-based and text-based coding languages.
  1. 3.7 Programming Languages
CSF.AP.6.b
Analyze the advantages and disadvantages of block-based and text-based coding languages.
  1. 3.7 Programming Languages
CSF.AP.6.c
Analyze the advantages and disadvantages of various text-based coding languages.
  1. 3.7 Programming Languages
CSF.AP.7.a
Define the concept and role of a search algorithm.
CSF.AP.7.b
Define the concept and role of a sort algorithm.
CSF.AP.7.c
Compare and contrast bubble sort, quick sort, and merge sort.
CSF.AP.7.d
Compare and contrast linear search and binary search.
CSF.AP.7.e
Evaluate and determine the best search or sort algorithm to use based on intended results.
CSF.AP.8.a
Identify project management frameworks and methodologies that emphasize iteration.
  1. 16.1 Software Engineer
CSF.AP.8.b
Discuss the significance of communication and methods of communication when working collaboratively.
  1. 16.1 Software Engineer
CSF.AP.8.c
Distribute roles and responsibilities and adhere to predetermined timeline and/or project scope.
  1. 16.1 Software Engineer
CSF.AP.8.d
Collaboratively plan, design, and revise programs.
  1. 16.1 Software Engineer
CSF.AP.8.e
Provide constructive feedback through peer review.
  1. 16.1 Software Engineer
CSF.AP.8.f
Use project management tools to support collaboration.
  1. 16.1 Software Engineer
CSF.AP.8.g
Justify and explain design choices, including constraints, and audiences.
  1. 16.1 Software Engineer
CSF.AP.8.h
Reflect and discuss collaborative experience with team.
  1. 16.1 Software Engineer
CSF.CSY.1.a
Provide real-world examples of abstraction in computing.
  1. 2.7 Abstraction
CSF.CSY.1.b
Explain the role of abstraction to simplify complex systems.
  1. 2.7 Abstraction
CSF.CSY.1.c
Identify and describe levels of abstraction between application software, system software, and hardware layers.
  1. 2.7 Abstraction
CSF.CSY.2.a
Describe how computers receive visual data from various sensors and tools.
CSF.CSY.2.b
Describe image processing techniques to include filtering, segmentation, and feature extraction.
CSF.CSY.2.c
Explain how computers use pattern recognition and classify data to interpret and make decisions.
CSF.CSY.2.d
Discuss ethical considerations related to the use of visual data and computer vision technologies.
CSF.CSY.3.a
Describe the parts of a network diagram and how they are related.
CSF.CSY.3.b
Explain the relationship between nodes, links, and other components of graphs.
CSF.CSY.3.c
Explain how a computer can solve a maze, find a route on a map, and use reasoning to solve problems.
CSF.CSY.4.a
Compare and contrast the learning process of humans and computers.
CSF.CSY.4.b
Identify mathematical models used by supervised learning to produce classifications and predictions.
CSF.CYB.1.a
Describe ways data and computing systems can be threatened by malware, ransomware, social engineering, phishing, and other cyberattacks.
CSF.CYB.1.b
Compare strategies to protect data and computing systems from malware, ransomware, social engineering, phishing, and other cyberattacks.
CSF.CYB.2.a
Identify common targets and perpetrators of cyberattacks.
CSF.CYB.2.b
Identify ways data is automatically collected and generated that may or may not be evident to users.
CSF.CYB.2.c
Describe potential vulnerabilities when using publicly available networks.
CSF.CYB.2.d
Assess the impact of cyber threats on systems and people with diverse backgrounds, technical knowledge, or threat profiles.
CSF.CYB.3.a
Evaluate tradeoffs between usability and security.
CSF.CYB.3.b
Analyze scenarios to determine tradeoffs between usability and security.
CSF.CYB.3.c
Propose recommendations for optimizing balance between usability and security in a given computing system.
CSF.DA.1.a
Describe the types of data that business, industry, and government entities collect and maintain.
CSF.DA.1.b
Identify privacy and consumer protection issues that impact data representation.
CSF.DA.1.c
Identify real-world problems that can be addressed through data analysis.
CSF.DA.1.d
Compare two real-world datasets to identify how the values of features are encoded and represented.
CSF.DA.1.e
Formulate questions to decompose a problem and develop a data project plan.
CSF.DA.2a
Identify methods for collecting and storing data of different data sizes.
CSF.DA.2b
Evaluate the technical and ethical implications of collecting and storing data from the perspectives of users, programmers, companies, and communities.
CSF.DA.2c
Identify impacts of bias in data collection and storage practices.
CSF.DA.2d
Analyze the impact of data quality, quantity, diversity, and other factors on the accuracy and reliability of data visualizations.
CSF.DA.2e
Research emerging technologies that have the capability to construct reasoning from stakeholder data.
CSF.DA.3a
Evaluate the quality of training data: completeness, accuracy, consistency, and relevance.
CSF.DA.3b
Analyze and discuss the ethical implications and social and economic impact of training data choices.
CSF.DA.4a
Explain the use of training data and the role it has in the development of machine learning models.
CSF.DA.4b
Explain the use of reasoning models and the role it has in the development of machine learning models.
CSF.DA.4c
Identify and discuss the similarities and differences between training data and reasoning models in artificial intelligence systems.
CSF.DA.5a
Formulate questions that require data collection.
CSF.DA.5b
Identify appropriate data to address a predetermined question.
CSF.DA.5c
Define the stages of the data cycle and the interrelationship between each stage.
CSF.DA.5d
Identify and explain constraints of a data-driven approach.
CSF.DA.5e
Create a computational artifact of the data analysis results.
CSF.IC.1a
Identify the societal impacts of computing technologies and the various aspects of daily life and industry.
  1. 16.1 Software Engineer
CSF.IC.1b
Evaluate the effect of advances in information technology on the economy, environment, and ethics, including advancements of AI, quantum computing, and technologies.
  1. 16.1 Software Engineer
CSF.IC.1c
Examine the environmental impact of computing technologies.
  1. 16.1 Software Engineer
CSF.IC.1d
Propose strategies to address the ethical impacts and potential challenges of computing technologies.
  1. 16.1 Software Engineer
CSF.IC.2a
Identify digital tools and applications designed to monitor or regulate screen time usage.
CSF.IC.2b
Evaluate the impact of screen time management on productivity and well-being.
CSF.IC.2c
Examine and discuss the impact of screen time and social media on academic or workplace performance.
CSF.IC.3a
Examine correlations between historical developments in computing technologies and changes in society.
CSF.IC.3b
Appraise contributions of pioneers in the field of computer science.
CSF.IC.3c
Explore the impact of Moore’s Law on scientific and mathematical advancements.
CSF.IC.4a
Research and explain the preparation and job outlook for computer science careers.
CSF.IC.4b
Examine current and future computer science career pathways involving emerging technologies.
CSF.NI.1a
Identify the roles of computing devices: routers, switches, servers, and clients.
CSF.NI.1b
Explain the role of Internet protocols: Hypertext Transfer Protocol Secure (HTTPS) and Transmission Control Protocol/Internet Protocol (TCP/IP) to provide reliable and secure data.
CSF.NI.1c
Analyze and create network topology diagrams.
CSF.NI.1d
Model how computing devices communicate via networks using TCP/IP protocols.
CSF.NI.1e
Identify common problems that impact network functionality.
CSF.NI.1f
Identify solutions to resolve common network issues.