Create prototypes that use algorithms to solve computational problems by leveraging prior student knowledge and personal interests.
3.1 Practice PT: Pair-Programming Paint!
7.1 Practice PT: Tell a Story
16.2 Prototype
16.3 Test
16.4 Project Prep and Development
9-12.AP.V.1
Demonstrate the use of both linked lists and arrays to simplify solutions, generalizing computational problems instead of repeatedly using simple variables.
8.1 Intro to Lists/Arrays
8.2 Indexing Into an Array
8.3 Adding/Removing From an Array
8.4 Array Length and Looping Through Arrays
8.5 Iterating Over an Array
8.6 Finding an Element in a List
8.7 Removing an Element From an Array
9-12.AP.C.1
Justify the selection of specific control structures when tradeoffs involve implementation, readability, and program performance, and explain the benefits and drawbacks of choices made.
2.11 For Loops
2.12 If Statements
2.13 If/Else Statements
2.14 While Loops in Karel
2.15 Control Structures Example
2.17 Karel Algorithms
2.18 How to Indent Your Code
2.19 Ultra Karel
2.20 Karel Challenges
5.1 Booleans
5.2 Logical Operators
5.3 Comparison Operators
5.4 If Statements
5.5 For Loops in JavaScript
5.6 General For Loops
5.7 For Loop Practice
5.8 Random Numbers
5.9 While Loops
5.10 Loop and a Half
9-12.AP.C.2
Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
1.16 Your First Website
3.1 Practice PT: Pair-Programming Paint!
7.1 Practice PT: Tell a Story
11.1 Practice PT: Create Your Own Filter!
13.1 Practice PT: The Effects of the Internet
15.1 Practice PT: Present a Data-Driven Insight
16.4 Project Prep and Development
9-12.AP.M.1
Decompose problems into smaller components through systematic analysis, using constructs such as procedures, modules, and/or objects.
2.7 Top Down Design and Decomposition in Karel
6.1 Functions and Parameters 1
6.2 Functions and Parameters 2
6.4 Functions and Return Values 1
6.5 Functions and Return Values 2
9-12.AP.M.2
Create artifacts by using procedures within a program, combinations of data and procedures, or independent but interrelated programs.
6.1 Functions and Parameters 1
6.2 Functions and Parameters 2
6.3 Functions and Parameters 3
6.4 Functions and Return Values 1
6.5 Functions and Return Values 2
15.1 Practice PT: Present a Data-Driven Insight
16.4 Project Prep and Development
9-12.AP.PD.1
Systematically design and develop programs for broad audiences by incorporating feedback from users.
16.1 Intro to Design Thinking
16.2 Prototype
16.3 Test
16.4 Project Prep and Development
9-12.AP.PD.2
Evaluate licenses that limit or restrict use of computational artifacts when using resources such as libraries.
12.8 Cybersecurity
9-12.AP.PD.3
Evaluate and refine computational artifacts to make them more usable by all and accessible to people with disabilities.
16.1 Intro to Design Thinking
9-12.AP.PD.4
Design and develop computational artifacts working in team roles using collaborative tools.
3.1 Practice PT: Pair-Programming Paint!
16.1 Intro to Design Thinking
16.4 Project Prep and Development
9-12.AP.PD.5
Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.
2.7 Top Down Design and Decomposition in Karel
2.8 Commenting Your Code
16.1 Intro to Design Thinking
9-12.CS.D.1
Explain how abstractions hide the underlying implementation details of computing systems embedded in everyday objects.
2.9 Abstraction
9.1 Getting Started
9.2 Number Systems
9.3 Encoding Text with Binary
9.4 Pixel Images
9.5 Hexadecimal
9.6 Pixel Colors!
9.7 Image Manipulation
9.8 Data Compression
9.9 Lossy Compression
9.10 Cryptography
9-12.CS.HS.1
Compare levels of abstraction and interactions between application software, system software, and hardware layers.
9.1 Getting Started
9.3 Encoding Text with Binary
12.7 Sequential, Parallel & Distributed Computing
9-12.CS.T.1
Develop guidelines that convey systematic troubleshooting strategies that others can use to identify and fix errors.
2.7 Top Down Design and Decomposition in Karel
2.8 Commenting Your Code
2.16 Debugging Strategies
9-12.DA.S.1
Translate between different bit representations of real-world phenomena, such as characters, numbers, and images (e.g., convert hexadecimal colors to decimal percentages, ASCII/Unicode representation).
9.1 Getting Started
9.2 Number Systems
9.3 Encoding Text with Binary
9.4 Pixel Images
9.5 Hexadecimal
9.6 Pixel Colors!
9.7 Image Manipulation
9-12.DA.S.2
Evaluate the tradeoffs in how data elements are organized and where data is stored.
9.8 Data Compression
9.9 Lossy Compression
9-12.DA.CVT.1
Create interactive data visualizations or alternative representations using software tools to help others better understand real-world phenomena.
8.8 Simulation
9-12.DA.IM.1
Create computational models that represent the relationships among different elements of data collected from a phenomenon, process, or model.
14.1 Getting Started
14.2 Visualizing and Interpreting Data
15.1 Practice PT: Present a Data-Driven Insight
9-12.IC.C.1
Evaluate the ways computing impacts personal, ethical, social, economic, and cultural practices.
12.9 The Impact of the Internet
9-12.IC.C.2
Test and refine computational artifacts to reduce bias and equity deficits.
16.1 Intro to Design Thinking
16.3 Test
16.4 Project Prep and Development
9-12.IC.C.3
Demonstrate ways a given algorithm applies to problems across disciplines.
9-12.IC.C.4
Explain the potential impacts of artificial intelligence on society.
9-12.IC.SI.1
Use tools and methods for collaboration on a project to increase connectivity of people in different cultures and career fields.
16.1 Intro to Design Thinking
16.2 Prototype
16.3 Test
16.4 Project Prep and Development
9-12.IC.SLE.1
Explain the beneficial and harmful effects that intellectual property laws can have on innovation.
12.8 Cybersecurity
9-12.IC.SLE.2
Explain the privacy concerns related to the collection and generation of data through automated processes that may not be evident to users.
12.8 Cybersecurity
9-12.IC.SLE.3
Evaluate the social and economic implications of privacy in the context of safety, law, or ethics.
9-12.NI.NCO.1
Evaluate the scalability and reliability of networks, by describing the relationship between routers, switches, servers, topology, and addressing.
12.1 Intro to the Internet
12.2 Internet Hardware
12.3 Internet Addresses
12.4 DNS
12.5 Routing
12.6 Packets and Protocols
9-12.NI.C.1
Give examples to illustrate how sensitive data can be affected by malware and other attacks.
12.8 Cybersecurity
9-12.NI.C.2
Recommend security measures to address various scenarios based on factors such as efficiency, feasibility, and ethical impacts.
9-12.NI.C.3
Compare various security measures, considering tradeoffs between the usability and security of a computing system.
12.8 Cybersecurity
9-12.NI.C.4
Explain tradeoffs when selecting and implementing cybersecurity recommendations.