Please enable JavaScript to use CodeHS

Standards Mapping

for Iowa 3B


Standards in this Framework


Standards Mapped


Mapped to Course

Standard Lessons
Describe how artificial intelligence drives many software and physical systems.
Implement an artificial intelligence algorithm to play a game against a human opponent or solve a problem.
Use and adapt classic algorithms to solve computational problems.
  1. 7.4 Array Length and Looping Through Arrays
Evaluate algorithms in terms of their efficiency, correctness, and clarity.
Compare and contrast fundamental data structures and their uses.
  1. 7.1 Intro to Lists/Arrays
  2. 7.2 Indexing Into an Array
  3. 7.3 Adding/Removing From an Array
  4. 7.4 Array Length and Looping Through Arrays
  5. 7.5 Iterating Over an Array
  6. 7.6 Finding an Element in a List
  7. 7.7 Removing an Element From an Array
Illustrate the flow of execution of a recursive algorithm.
Construct solutions to problems using student-created components, such as procedures, modules and/or objects.
  1. 1.4 Karel Can't Turn Right
  2. 1.5 Functions in Karel
  3. 5.1 Functions and Parameters 1
  4. 5.2 Functions and Parameters 2
  5. 5.3 Functions and Parameters 3
  6. 5.4 Functions and Return Values 1
  7. 5.5 Functions and Return Values 2
  8. 5.7 JavaScript vs Karel
  9. 5.8 Basic JavaScript and Graphics Challenges
Analyze a large-scale computational problem and identify generalizable patterns that can be applied to a solution.
Demonstrate code reuse by creating programming solutions using libraries and APIs.
  1. 1.10 Super Karel
  2. 1.19 Ultra Karel
  3. 2.1 Practice PT: Pair-Programming Paint!
  4. 4.9 Random Numbers
  5. 5.7 JavaScript vs Karel
Plan and develop programs for broad audiences using a software life cycle process.
  1. 18.1 Intro to Design Thinking
  2. 18.2 Prototype
  3. 18.3 Test
  4. 18.4 Project Prep and Development
Explain security issues that might lead to compromised computer programs.
  1. 11.9 Cybersecurity
Develop programs for multiple computing platforms.
  1. 4.5 Key Events
Use version control systems, integrated development environments (IDEs), and collaborative tools and practices (code documentation) in a group software project.
Develop and use a series of test cases to verify that a program performs according to its design specifications.
Modify an existing program to add additional functionality and discuss intended and unintended implications (e.g., breaking other functionality).
  1. 1.4 Karel Can't Turn Right
Evaluate key qualities of a program through a process such as a code review.
Compare multiple programming languages and discuss how their features make them suitable for solving different types of problems.
Categorize the roles of operating system software.
Illustrate ways computing systems implement logic, input, and output through hardware components.
  1. 1.9 Abstraction
Use data analysis tools and techniques to identify patterns in data representing complex systems.
  1. 13.2 Visualizing and Interpreting Data
Select data collection tools and techniques to generate data sets that support a claim or communicate information.
  1. 13.3 Data Collection & Limitations
Evaluate the ability of models and simulations to test and support the refinement of hypotheses.
  1. 7.8 Simulation
Evaluate computational artifacts to maximize their beneficial effects and minimize harmful effects on society.
  1. 11.11 Creative Credit & Copyright
  2. 15.1 The Impacts of Computing
Evaluate the impact of equity, access, and influence on the distribution of computing resources in a global society.
  1. 11.10 The Impact of the Internet
  2. 12.1 The Effects of the Internet
Predict how computational innovations that have revolutionized aspects of our culture might evolve.
  1. 3.2 Uses of Programs
  2. 8.10 Cryptography
  3. 11.2 Internet Hardware
  4. 11.10 The Impact of the Internet
  5. 11.11 Creative Credit & Copyright
  6. 12.1 The Effects of the Internet
Debate laws and regulations that impact the development and use of software.
  1. 11.11 Creative Credit & Copyright
Describe the issues that impact network functionality (e.g., bandwidth, load, delay, topology).
  1. 11.2 Internet Hardware
Compare ways software developers protect devices and information from unauthorized access.
  1. 8.10 Cryptography
  2. 9.1 Practice PT: Steganography
  3. 11.9 Cybersecurity