Please enable JavaScript to use CodeHS

Utah Computer Programming 1 Standards Mapping


Utah Computer Programming I

39 Standards in this Framework 28 Standards Mapped 71% Mapped to Course

Standard Lessons
UT.CP1.1.1a Describe the difference between an interpreted language vs a compiled language.
UT.CP1.1.1b Identify characteristics of high-level and low-level languages.
UT.CP1.1.2a Use an IDE to develop, compile, and run programs.
  1. 2.1 Introduction to Programming With Karel
  2. 4.1 Hello World
UT.CP1.1.2b Understand the difference between syntax, run-time, and logic errors.
UT.CP1.1.2c Use the debugger to identify errors.
  1. 2.1 Introduction to Programming With Karel
  2. 2.2 More Basic Karel
  3. 3.1 Challenge Problems
UT.CP1.2.1a Demonstrate proper use of white space (between lines and indentation).
  1. 2.15 How to Indent Your Code
UT.CP1.2.1b Use appropriate naming conventions for identifiers (variables, methods, functions, and file names).
  1. 4.2 Variables
  2. 8.1 Functions and Parameters 1
UT.CP1.2.1c Construct identifiers with meaningful format; camelCase and underscore.
  1. 4.2 Variables
  2. 8.1 Functions and Parameters 1
UT.CP1.2.2a Identify specifications and understand requirements to create a solution to a problem.
  1. 3.1 Challenge Problems
  2. 5.2 Graphics Challenges
  3. 7.1 Control Structures Challenges
  4. 9.1 Functions Challenges
UT.CP1.2.2b Develop a program using external documentation (flowcharts, abstracts, and pseudocode) to break down the problem into sub-components.
  1. 2.6 Top Down Design and Decomposition in Karel
UT.CP1.2.2c Design solutions using algorithms.
  1. 3.1 Challenge Problems
UT.CP1.2.2d Write the code to implement the algorithm.
  1. 3.1 Challenge Problems
UT.CP1.2.2e Test program for verification of errors and proper functionality.
  1. 2.14 More Karel Examples and Testing
  2. 5.2 Graphics Challenges
  3. 7.1 Control Structures Challenges
  4. 9.1 Functions Challenges
UT.CP1.2.2f Provide internal comments in the IDE that explain functionality through documentation (i.e comments, notes, program instructions).
  1. 2.7 Commenting Your Code
UT.CP1.2.3a Understand keywords, identifiers, operators, and operands.
  1. 4.2 Variables
  2. 4.3 User Input
  3. 4.4 Basic Math in JavaScript
UT.CP1.2.3b Understand statements and expressions in a program.
  1. 4.2 Variables
  2. 4.4 Basic Math in JavaScript
  3. 6.4 If Statements
UT.CP1.2.3c Understand program components such as functions, methods, or procedures.
  1. 8.1 Functions and Parameters 1
  2. 8.4 Functions and Return Values 1
  3. 8.6 Local Variables and Scope
UT.CP1.3.1a Declare, initialize, and assign values to constants and variables.
  1. 4.2 Variables
UT.CP1.3.1b Demonstrate the ability to use input and output commands.
  1. 4.1 Hello World
  2. 4.3 User Input
UT.CP1.3.1c Declare and use variable types (primitives, reference, or object).
  1. 4.2 Variables
  2. 4.3 User Input
  3. 4.5 Using Graphics in JavaScript
UT.CP1.3.1d Identify proper data types for a specified application (boolean, integer, floating point, strings).
  1. 4.3 User Input
  2. 4.4 Basic Math in JavaScript
  3. 6.1 Booleans
UT.CP1.3.2a Use basic arithmetic operators (modulus, multiplication, division, addition, subtraction).
  1. 4.4 Basic Math in JavaScript
UT.CP1.3.2b Understand order of operation of expressions.
  1. 4.4 Basic Math in JavaScript
UT.CP1.3.2c Write expressions that mix floating-point and integer expressions.
UT.CP1.4.1a Compare values using relational operators (<, >, ==, >=, <=, etc.).
  1. 6.3 Comparison Operators
UT.CP1.4.1b Form complex expressions using logical operators.
  1. 6.2 Logical Operators
UT.CP1.4.2a Employ simple IF structures.
  1. 2.10 If Statements
  2. 6.4 If Statements
UT.CP1.4.2b Use IF-ELSE and nested IF-ELSE structures.
  1. 2.11 If/Else Statements
  2. 6.4 If Statements
UT.CP1.4.3a Demonstrate knowledge between for-loops, while-loops, and do-while loops.
  1. 2.9 For Loops
  2. 2.12 While Loops in Karel
  3. 6.5 For Loops in JavaScript
  4. 6.9 While Loops
  5. 6.10 Loop and a Half
UT.CP1.4.3b Describe the various ways that loops can end (i.e., sentinel, break, condition fail,etc.).
  1. 6.9 While Loops
  2. 6.10 Loop and a Half
UT.CP1.4.3c Design loops so they iterate the correct number of times (i.e., off by one errors, infinite loops, etc.).
  1. 6.6 General For Loops
  2. 6.9 While Loops
  3. 6.10 Loop and a Half
UT.CP1.4.3d Utilize nested loops.
  1. 6.7 For Loop Practice
UT.CP1.5.1a Identify the members of a computer programming/software engineering team: team leader, analyst, senior developer, junior developer, and client/subject matter expert.
UT.CP1.5.1b Describe work performed by each member of the computer programming/software engineering team.
UT.CP1.5.1c Investigate trends and traits associated with computer programming/software engineering careers (creativity, technical, leadership, collaborative, problem solving, design, etc.).
UT.CP1.5.1d Discuss related career pathways.
UT.CP1.5.2a Explain the impact software can have on society (i.e., privacy, piracy, copyright laws, ease of use, etc.).
UT.CP1.5.2b Explain the ethical reasons for creating reliable and robust software.
UT.CP1.5.2c Describe how computer-controlled automation affects a workplace and society.