Please enable JavaScript to use CodeHS

Natrona CS Principles Framework


Standard Description
L1.CS.D.01 Explain how abstractions hide the underlying implementation details of computing systems embedded in everyday objects. Lessons
L1.AP.PD.05 Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs. Lessons
L1.IC.SI.01 Use tools and methods for collaboration. Lessons
L1.AP.PD.01 Plan and develop programs by analyzing a problem and/or process, developing and documenting a solution, testing outcomes, and adapting the program for a variety of users. Lessons
L1.AP.C.03 Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions. Lessons
L1.AP.PD.04 Design and develop computational artifacts, working in team roles, using collaborative tools. Lessons
L1.DA.S.01 Translate between different bit representations of real-world phenomena, such as characters, numbers, and images. Lessons
L1.AP.A.02 Describe how artificial intelligence algorithms drive many software and physical systems. Lessons
L2.AP.A.02 Develop an artificial intelligence algorithm to play a game against a human opponent or solve a real-world problem. Lessons
L2.AP.PD.05 Develop and use a series of test cases to verify that a program performs according to its design specifications. Lessons
L1.AP.PD.03 Use debugging tools to identify and fix errors in a program. Lessons
L1.AP.C.02 Trace the execution of loops and conditional statements, illustrating output and changes in values of named variables. Lessons
L1.AP.M.01 Decompose problems into smaller components through systematic analysis, using constructs such as procedures, modules, and/or objects. Lessons
L1.AP.V.01 Use lists to simplify solutions, generalizing computational problems instead of repeatedly using simple variables. Lessons
L1.CS.HS.01 Explain the interactions between application software, system software, and hardware layers. Lessons
L2.CS.HS.01 Categorize the roles of operating system software. Lessons
L1.CS.T.01 Develop guidelines that convey systematic troubleshooting strategies that others can use to identify and resolve errors. Lessons
L2.CS.T.01 Identify how hardware components facilitate logic, input, output, and storage in computing systems, and their common malfunctions. Lessons
L1.NI.NCO.01 Evaluate the scalability and reliability of networks, by describing the relationship between routers, switches, servers, topology, and addressing. Lessons
L2.NI.NCO.01 Describe the issues that impact network functionality (e.g., bandwidth, load, latency, topology). Lessons
L1.NI.C.01 Give examples to illustrate how sensitive data can be affected by malware and other attacks. Lessons
L2.NI.C.01 Compare ways software developers protect devices and information from unauthorized access. Lessons
L1.NI.C.02 Recommend cybersecurity measures to address various scenarios based on factors such as efficiency, feasibility, and ethical impacts. Lessons
L1.NI.C.03 Compare various security measures, considering trade-offs between the usability and security of a computing system. Lessons
L1.NI.C.04 Explain trade-offs when selecting and implementing cybersecurity recommendations. Lessons
L2.AP.M.02 Analyze a large-scale computational problem and identify generalizable patterns that can be applied to a solution. Lessons
L2.AP.PD.08 Compare multiple programming languages and discuss how their features make them suitable for solving different types of problems. Lessons
L1.IC.C.01 Evaluate the ways computing impacts personal, ethical, social, economic, and cultural practices. Lessons
L2.IC.C.01 Evaluate the beneficial and harmful effects that computational artifacts and innovations have on society. Lessons
L1.IC.C.02 Test and refine computational artifacts to reduce bias and equity deficits. Lessons
L1.AP.PD.02 Evaluate licenses that limit or restrict use of computational artifacts when using resources such as libraries. Lessons
L2.IC.C.02 Evaluate the impact of equity, access, and influence on the distribution of computing resources in a global society. Lessons
L1.IC.C.03 Demonstrate how a given algorithm applies to problems across disciplines. (e.g. iterating through a list to find the maximum value for a given data set) Lessons
L2.IC.C.03 Predict how computational innovations that have revolutionized aspects of our culture might evolve. Lessons
L1.IC.SI.02 Practice grade-level appropriate behavior and responsibilities while participating in an online community. Identify and report inappropriate behavior. Lessons
L1.IC.SLE.01 Explain the beneficial and harmful effects that intellectual property laws can have on innovation. Lessons
L2.IC.SLE.01 Debate laws and regulations that impact the development and use of software and technology. Lessons
L1.IC.SLE.02 Explain the privacy concerns related to the collection and generation of data through automated processes that may not be evident to users. Lessons
L1.IC.SLE.03 Evaluate the social and economic implications of privacy in the context of safety, law, or ethics. Lessons
L1.IC.SLE.04 Using grade level appropriate content and complexity, discuss the legal, social, and ethical impacts associated with software development and use, including both positive and malicious intent. Lessons
L2.IC.SLE.02 Using grade level appropriate content and complexity, discuss the legal, social, and ethical impacts associated with software development and use, including both positive and malicious intent. Lessons