Please enable JavaScript to use CodeHS

Standards Mapping

for Arkansas Programming Year 1

47

Standards in this Framework

43

Standards Mapped

91%

Mapped to Course

Standard Lessons
CSPG.Y1.1.1
Leverage problem-solving strategies to solve problems of level-appropriate complexity. NOTE: Problem-solving strategies that encompass computational thinking include, but are not limited to, abstraction, algorithm development, decomposition, and pattern recognition.
  1. 2.6 Top Down Design and Decomposition in Karel
  2. 2.8 Abstraction
  3. 2.15 More Karel Examples and Testing
  4. 2.17 Debugging Strategies
  5. 3.1 Collaborative Programming
  6. 3.2 Challenge Problems
CSPG.Y1.1.2
Analyze and utilize multiple representations of problem-solving logic used to solve problems of appropriate complexity. NOTE: Representations may include, but are not limited to, backlog, decision matrix, design brief, documentation, fault tree analysis, flowchart, pseudocode, and sprints.
  1. 3.2 Challenge Problems
  2. 10.1 Intro to Design Thinking
  3. 10.2 Prototype
  4. 10.3 Test
CSPG.Y1.1.3
Analyze and utilize collaborative methods in problem solving of level-appropriate complexity. NOTE: Collaborative methods may include, but are not limited to, distributive (divide and conquer), paired programming, and redundant parallel.
  1. 3.1 Collaborative Programming
  2. 3.2 Challenge Problems
CSPG.Y1.1.4
Analyze and utilize level-appropriate troubleshooting strategies for hardware and software
CSPG.Y1.2.1
Interpret relational and logical expressions of levelappropriate complexity using comparison and Boolean operators
  1. 7.1 Booleans
  2. 7.2 Logical Operators
  3. 7.3 Comparison Operators
CSPG.Y1.2.2
Classify the types of information that can be stored as variables and analyze the appropriateness of each (e.g., Booleans, characters, integers, floating points, strings)
  1. 5.2 Hello World
  2. 5.3 Variables
  3. 5.5 Basic Math in JavaScript
  4. 7.1 Booleans
CSPG.Y1.2.3
Analyze how computer science concepts relate to the field of mathematics. NOTE: Concepts may include, but are not limited to, different division methods (e.g., integer, long, modular), random number generation, domain, maximum, mean, minimum, mode, and range.
  1. 5.5 Basic Math in JavaScript
  2. 7.8 Random Numbers
  3. 9.8 Random Circles
  4. 9.9 Random Ghosts
  5. 9.10 Bouncing Ball
CSPG.Y1.2.4
Discuss and apply concepts of abstraction. NOTE: Abstraction is the process of reducing information and detail to facilitate focus on relevant concepts and functionality (displaying only essential information while hiding the details).
  1. 2.8 Abstraction
CSPG.Y1.2.5
Perform operations of level-appropriate complexity with binary, decimal, and hexadecimal numbers. NOTE: Operations may include, but are not limited to, addition, subtraction, multiplication, division, and conversion.
  1. 4.10 Number Systems
  2. 4.11 Encoding Text with Binary
CSPG.Y1.2.6
Demonstrate operator precedence in expressions and statements. NOTE: Operators include, but are not limited to, addition, subtraction, division, modulus division, concatenation, square root, and exponentiation. Operator precedence may include, but is not limited to, inside-out, order of operations, and the understanding that the assignment statement of “x = 1” is not the same as “1 = x.”
  1. 5.5 Basic Math in JavaScript
CSPG.Y1.3.1
Define, store, access, and manipulate levelappropriate data (e.g., primitive, linear). NOTE: Primitive data may include, but is not limited to, Boolean, character, double, float, and integer. Linear data may include, but is not limited to, arrays, lists, strings, and vectors.
  1. 5.3 Variables
  2. 7.1 Booleans
  3. 9.12 Intro to Lists/Arrays
  4. 9.13 Adding/Removing From an Array
  5. 9.14 Array Length and Looping Through Arrays
CSPG.Y1.3.2
Define and discuss different examples of levelappropriate quantitative and qualitative data
  1. 1.9 Data Collection & Limitations
CSPG.Y1.3.4
Analyze, utilize, and visually represent levelappropriate data. NOTE: Visual representation tools may include, but are not limited to, analytics reports, graphical representations, programming language libraries, and spreadsheets.
  1. 1.8 Visualizing and Interpreting Data
  2. 1.9 Data Collection & Limitations
CSPG.Y1.3.5
Perform level-appropriate data analysis using computing tools. NOTE: Analysis may include, but is not limited to, maximum values, mean values, minimum values, ranges, and string comparisons.
  1. 1.8 Visualizing and Interpreting Data
  2. 1.9 Data Collection & Limitations
CSPG.Y1.4.1
Identify the five pillars of cybersecurity and evaluate the relevance of each pillar to computer science concepts. NOTE: Additional concepts and key terms of the five pillars of cybersecurity (confidentiality, integrity, availability, non-repudiation, and authentication) may include, but are not limited to, access control paradigms, accountability, authorization, least-privilege, and need-to-know.
  1. 1.1 What is Cybersecurity?
  2. 1.2 The CIA Triad
CSPG.Y1.4.2
Research and describe different roles within the hacking community (e.g., white hat, black hat, gray hat hacking), including positive and negative motivations, significant impacts, and social stereotypes. NOTE: White hat hacking may include, but is not limited to, bug bounty programs and contracted penetration testing. A significant impact example may include, but is not limited to, Charlie Miller’s compromisation of Fiat Chrysler vehicles. Black hat hacking may include, but is not limited to, the unauthorized processes of accessing systems to destroy, compromise, or steal data and deny access to services or systems. A significant impact example may include, but is not limited to, Behzad Mesri’s alleged theft of data from Home Box Office (HBO) and subsequent ransom demands. Gray hat hacking may include, but is not limited to, unauthorized processes of accessing systems to report, correct, and draw attention to security vulnerabilities. A significant example of gray hat hacking is intentionally not included; students and teachers are encouraged to explore and discuss the nuances of “right versus wrong” and motivations within this community, including nation-state actions.
  1. 1.12 Hacking Ethics
CSPG.Y1.4.3
Research and describe the impacts of ransomware, trojans, viruses, and other malware
  1. 1.1 What is Cybersecurity?
  2. 1.6 Privacy & Security
  3. 1.12 Hacking Ethics
  4. 1.13 Project: Public Service Announcement
CSPG.Y1.4.4
Explain implications related to identification and responsible reporting of a vulnerability versus exploitation
  1. 1.12 Hacking Ethics
CSPG.Y1.5.1
Design and implement level-appropriate algorithms that use iteration, selection, and sequence
  1. 2.10 For Loops
  2. 2.13 While Loops in Karel
  3. 3.2 Challenge Problems
  4. 7.5 For Loops in JavaScript
  5. 7.6 General For Loops
  6. 7.7 For Loop Practice
  7. 7.9 While Loops
  8. 7.10 Loop and a Half
CSPG.Y1.5.2
Illustrate the flow of execution of algorithms in levelappropriate programs including branching and looping. NOTE: Illustrations may include, but are not limited to, flowcharts and pseudocode.
  1. 3.2 Challenge Problems
  2. 7.7 For Loop Practice
  3. 8.1 Control Structures Challenges
CSPG.Y1.5.3
Evaluate the qualities of level-appropriate student created and non-student-created algorithms. NOTE: Evaluation tools may include, but are not limited to, code review and test cases. Qualities may include, but are not limited to, correctness, efficiency, exception handling, input/data/model validation, portability, readability, scalability, and usability.
  1. 2.11 If Statements
  2. 2.13 While Loops in Karel
  3. 2.14 Control Structures Example
  4. 2.16 How to Indent Your Code
  5. 3.2 Challenge Problems
CSPG.Y1.5.4
Use a systematic approach to detect and resolve errors in a given algorithm
  1. 2.17 Debugging Strategies
CSPG.Y1.6.1
Create programs using procedures to solve problems of level-appropriate complexity. NOTE: “Procedures” is considered interchangeable with “functions” for meeting this standard. Problems may include, but are not limited to, encoding, encryption, finding minimum/maximum values, identifying prime numbers, searching and sorting, and solving classic computer science tasks such as The Towers of Hanoi problem.
  1. 2.4 Functions in Karel
  2. 6.1 Graphics Challenges
  3. 8.1 Control Structures Challenges
  4. 9.14 Array Length and Looping Through Arrays
CSPG.Y1.6.2
Discuss and apply best practices of program design and format (e.g., descriptive names, documentation, indentation, user experience design, whitespace)
  1. 2.7 Commenting Your Code
  2. 2.16 How to Indent Your Code
  3. 5.3 Variables
CSPG.Y1.6.3
Determine the scope and state of variables declared in procedures and control structures over time. NOTE: “Procedures” is considered interchangeable with “functions” for meeting this standard.
  1. 9.6 Local Variables and Scope
CSPG.Y1.6.4
Create programs of level-appropriate complexity that read from standard input, write to standard output, read from a file, write to a file, and append to a file. NOTE: Standard input and output is platform-specific. Standard input and output on personal computers may include, but are not limited to, a keyboard and terminal. Standard input and output on mobile application devices may include, but are not limited to, touchscreen and speakers. Standard input and output on robots may include, but are not limited to, sensors and servos.
  1. 9.11 Mouse Events: Mouse Clicked
CSPG.Y1.6.5
Use a systematic approach to detect logic, runtime, and syntax errors within a program
  1. 2.17 Debugging Strategies
CSPG.Y1.7.1
Identify software and hardware specific to carrying out the mission of regional industries
CSPG.Y1.7.2
Research advancing and emerging technologies (e.g., artificially intelligent agents, blockchain, extended reality, Internet of Things (IoT), machine learning, robotics)
CSPG.Y1.8.1
Utilize the command line to accomplish common network troubleshooting tasks at an introductory level. NOTE: Common network troubleshooting tasks may include, but are not limited to, viewing internal IP address information (e.g., ipconfig /all); viewing external IP address information using an external service (e.g., ifconfig.me, myip.com, whatsmyip.com); validating communication with a remote system (e.g., ping); tracing path of communication to a remote system (e.g., traceroute); and releasing and renewing IP addresses (e.g., ipconfig /renew).
CSPG.Y1.8.2
Research and describe common networking concepts at an introductory level. NOTE: Networking concepts may include, but are not limited to, different types of networks (e.g., local area network (LAN), wide area network (WAN)); various common topologies; the role of a MAC address; local versus public IP and how they are assigned; Internet Protocol version 4 (IPv4) and Internet Protocol version 6 (IPv6) addressing schemes; role of Domain Name System (DNS); the hierarchical nature of networks; purpose of virtual private networks (VPN); signal carriers for networks (e.g., copper, fiber optic, radio); purpose of firewalls; network access roles (e.g., employee versus guest, staff versus student); role of internet service providers (ISP); wireless connectivity; client-server relationship versus peer-to-peer (P2P); role of common internet protocols; and secure versus insecure protocols.
  1. 4.1 Intro to the Internet
  2. 4.5 Internet Hardware
  3. 4.6 Internet Addresses
  4. 4.7 DNS
  5. 4.8 Routing
  6. 4.9 Packets and Protocols
CSPG.Y1.8.3
Research and describe modems, network interface cards, routers (e.g., consumer, industrial), switches, and wireless access points, and identify their purposes within a network
  1. 4.3 Computer Organization
  2. 4.5 Internet Hardware
CSPG.Y1.8.4
Describe the importance of creating and using common rules for communication and the utilization of common network protocols including the relationship between client and server. NOTE: Discussions of common rules for communications may include, but are not limited to, the Open Systems Interconnection (OSI) Model and packet communication. Common network protocols may include, but are not limited to, DNS, Hypertext Transfer Protocol (HTTP)/Secure Hypertext Transfer Protocol (HTTPS), Simple Mail Transfer Protocol (SMTP)/Post Office Protocol (POP)/Internet Message Access Protocol (IMAP), and Telnet/Secure Shell (SSH).
  1. 4.6 Internet Addresses
  2. 4.7 DNS
CSPG.Y1.9.1
Compare and contrast computer programming paradigms (e.g., functional, imperative, objectoriented)
  1. 5.2 Hello World
CSPG.Y1.9.2
Research, describe, and utilize at an appropriate level: ● debugging strategies ● integrated development environments (IDE) ● source-code editors ● version control strategies
  1. 2.17 Debugging Strategies
  2. 3.2 Challenge Problems
  3. 6.1 Graphics Challenges
  4. 8.1 Control Structures Challenges
CSPG.Y1.9.3
Classify layers of software (e.g., applications, drivers, firmware, operating systems) utilized within various platforms (e.g., Android, ChromeOS, iOS, Linux, macOS, Windows)
  1. 4.3 Computer Organization
  2. 4.4 Software
CSPG.Y1.9.4
Identify and describe the purpose of hardware components within various personal computing platforms. NOTE: Hardware components include, but are not limited to, central processing units (CPU), chassis, cooling components, graphics cards, input/output devices, memory, motherboards, power supplies, and storage devices.
  1. 4.3 Computer Organization
CSPG.Y1.10.1
Research and describe the risks and risk mitigation strategies associated with the utilization and implementation of social media and other digital technology implications. NOTE: Risks include, but are not limited to, cyberbullying, identity theft, impersonation, and social engineering attacks. Implications may include, but are not limited to, employability, legal, physical, psychological, and social access
  1. 1.3 Digital Footprint and Reputation
  2. 1.4 Cyberbullying
  3. 1.5 Internet Safety
  4. 1.6 Privacy & Security
  5. 4.12 The Impact of the Internet
CSPG.Y1.10.3
Research and describe the potential benefits associated with the utilization and implementation of social media and other digital technologies. NOTE: Potential benefits may include, but are not limited to, brand building, crowdsourcing, personal promotion awareness, and project funding.
  1. 1.11 Creative Credit & Copyright
  2. 4.1 Intro to the Internet
CSPG.Y1.10.4
Research and describe the relationship between access and security (e.g., active and passive data, convenience, data mining, digital marketing, online wallets, privacy, theft of personal information)
  1. 1.6 Privacy & Security
CSPG.Y1.10.6
Research the history of computing devices and their impact on society
  1. 4.2 History of Computers
  2. 19.1 History of Computers
CSPG.Y1.10.7
Research and identify diverse careers and career opportunities (e.g., accessibility, availability, demand) that are influenced by computer science and the technical and soft skills needed for each
  1. 11.1 Computer Science Careers
CSPG.Y1.11.1
Communicate basic technical information effectively to diverse audiences including, but not limited to, non-technical audience members. NOTE: Technical information may include, but is not limited to, collecting or collected data, computing hardware, cyber hygiene, networking concepts, programming paradigms, and troubleshooting concepts.
  1. 1.13 Project: Public Service Announcement
  2. 10.4 Project Prep and Development
CSPG.Y1.11.2
Describe and utilize the concepts of storytelling with data. NOTE: Storytelling concepts may include, but are not limited to, identifying the knowledge level of the intended audience; developing a compelling narrative; creating appealing visualizations appropriate for the intended audience and that enhance the narrative; remaining objective and avoiding biases; and avoiding the censoring of data.
  1. 1.8 Visualizing and Interpreting Data
CSPG.Y1.11.3
Describe the following common types of data bias: ● confirmation bias ● confounding variables ● outliers ● overfitting/underfitting ● selection bias
  1. 1.9 Data Collection & Limitations
CSPG.Y1.11.4
Compare and contrast causation and correlation
  1. 1.8 Visualizing and Interpreting Data
CSPG.Y1.11.5
Compare and contrast interpreting data, inferring using data, and implicating with data
  1. 1.9 Data Collection & Limitations