# CSTA 3A Standards Mapping

to

## Introduction to Computer Science in JavaScript (Bulldog)

30 Standards in this Framework 13 Standards Mapped 43% Mapped to Course

Standard Lessons
3A-AP-13 Create prototypes that use algorithms to solve computational problems by leveraging prior student knowledge and personal interests.
1. 1.1 Introduction to Programming With Karel
2. 1.2 More Basic Karel
3. 1.3 Karel Can't Turn Right
4. 1.4 Functions in Karel
5. 1.5 The Start Function
6. 1.6 Top Down Design and Decomposition in Karel
8. 1.9 For Loops
9. 1.10 If Statements
10. 1.11 If/Else Statements
11. 1.12 While Loops in Karel
12. 1.13 Control Structures Example
13. 1.14 More Karel Examples and Testing
14. 1.15 How to Indent Your Code
15. 3.1 Hello World
16. 3.2 Variables
17. 3.3 User Input
18. 3.4 Basic Math in JavaScript
19. 3.5 Using Graphics in JavaScript
20. 5.1 Booleans
21. 5.2 Logical Operators
22. 5.3 Comparison Operators
23. 5.4 If Statements
24. 5.5 For Loops in JavaScript
25. 5.6 General For Loops
26. 5.7 For Loop Practice
27. 5.8 Random Numbers
28. 5.9 While Loops
29. 5.10 Loop and a Half
30. 7.1 Functions and Parameters 1
31. 7.2 Functions and Parameters 2
32. 7.3 Functions and Parameters 3
33. 8.1 Functions Challenges
34. 9.2 Random Circles
35. 9.3 Random Ghosts
36. 9.4 Bouncing Ball
37. 9.9 Crazy Ball Game
38. 11.1 Breakout
39. 12.8 Intro to Objects/Maps
40. 12.11 When Do I Use an Object?
41. 13.1 Tic Tac Toe
42. 14.1 Game Design: Helicopter
43. 22.1 Fun Snake
44. 23.1 Conway's Game of Life
45. 23.2 Connect Four
46. 24.1 Evolution Simulation
47. 28.1 Visualizing Music
3A-AP-14 Use lists to simplify solutions, generalizing computational problems instead of repeatedly using simple variables.
1. 12.1 Intro to Lists/Arrays
2. 12.2 Indexing Into an Array
3. 12.3 Adding/Removing From an Array
4. 12.4 Array Length and Looping Through Arrays
5. 12.5 Iterating Over an Array
6. 12.6 Finding an Element in a List
7. 12.7 Removing an Element From an Array
8. 12.8 Intro to Objects/Maps
9. 12.9 Basics of Objects
10. 12.10 Iterating Over an Object
11. 12.11 When Do I Use an Object?
12. 12.12 Intro to Sets
13. 12.13 Intro to Grids
14. 12.14 Looping Over a Grid
15. 12.15 Grid Example: Get a Row
16. 12.16 Data Structures Challenges
17. 14.1 Game Design: Helicopter
18. 24.1 Evolution Simulation
3A-AP-15 Justify the selection of specific control structures when tradeoffs involve implementation, readability, and program performance, and explain the benefits and drawbacks of choices made.
1. 5.4 If Statements
2. 5.5 For Loops in JavaScript
3. 5.6 General For Loops
4. 5.7 For Loop Practice
5. 5.9 While Loops
6. 5.10 Loop and a Half
3A-AP-16 Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
1. 9.5 Mouse Events: Mouse Clicked
2. 9.6 Mouse Events: Mouse Moved
3. 9.8 Key Events
4. 9.9 Crazy Ball Game
5. 11.1 Breakout
6. 12.16 Data Structures Challenges
7. 13.1 Tic Tac Toe
8. 14.1 Game Design: Helicopter
9. 22.1 Fun Snake
10. 23.1 Conway's Game of Life
11. 23.2 Connect Four
12. 24.1 Evolution Simulation
13. 28.1 Visualizing Music
3A-AP-17 Decompose problems into smaller components through systematic analysis, using constructs such as procedures, modules, and/or objects.
1. 1.4 Functions in Karel
2. 1.5 The Start Function
3. 1.6 Top Down Design and Decomposition in Karel
5. 1.8 Super Karel
6. 1.9 For Loops
7. 1.10 If Statements
8. 1.11 If/Else Statements
9. 1.12 While Loops in Karel
10. 1.13 Control Structures Example
11. 1.14 More Karel Examples and Testing
12. 1.15 How to Indent Your Code
13. 2.1 Challenge Problems
14. 3.1 Hello World
15. 3.2 Variables
16. 3.3 User Input
17. 3.4 Basic Math in JavaScript
18. 3.5 Using Graphics in JavaScript
19. 5.1 Booleans
20. 5.2 Logical Operators
21. 5.3 Comparison Operators
22. 5.4 If Statements
23. 5.5 For Loops in JavaScript
24. 5.6 General For Loops
25. 5.7 For Loop Practice
26. 5.8 Random Numbers
27. 5.9 While Loops
28. 5.10 Loop and a Half
29. 7.1 Functions and Parameters 1
30. 7.2 Functions and Parameters 2
31. 7.3 Functions and Parameters 3
32. 7.4 Functions and Return Values 1
33. 7.5 Functions and Return Values 2
34. 7.6 Local Variables and Scope
35. 8.1 Functions Challenges
36. 9.1 Timers
37. 9.2 Random Circles
38. 9.3 Random Ghosts
39. 9.4 Bouncing Ball
40. 9.5 Mouse Events: Mouse Clicked
41. 9.6 Mouse Events: Mouse Moved
42. 9.7 Drawing Lines
43. 9.8 Key Events
44. 9.9 Crazy Ball Game
45. 11.1 Breakout
46. 12.1 Intro to Lists/Arrays
47. 12.2 Indexing Into an Array
48. 12.3 Adding/Removing From an Array
49. 12.4 Array Length and Looping Through Arrays
50. 12.5 Iterating Over an Array
51. 12.6 Finding an Element in a List
52. 12.7 Removing an Element From an Array
53. 12.8 Intro to Objects/Maps
54. 12.9 Basics of Objects
55. 12.10 Iterating Over an Object
56. 12.11 When Do I Use an Object?
57. 12.12 Intro to Sets
58. 12.13 Intro to Grids
59. 12.14 Looping Over a Grid
60. 12.15 Grid Example: Get a Row
61. 12.16 Data Structures Challenges
62. 13.1 Tic Tac Toe
63. 14.1 Game Design: Helicopter
64. 18.1 Extra Karel Practice
65. 20.1 Functions and Parameters Practice
66. 21.1 Prime Numbers
67. 22.1 Fun Snake
68. 22.2 Fun Graphics Challenges
69. 23.1 Conway's Game of Life
70. 23.2 Connect Four
71. 24.1 Evolution Simulation
72. 28.1 Visualizing Music
3A-AP-18 Create artifacts by using procedures within a program, combinations of data and procedures, or independent but interrelated programs.
1. 1.1 Introduction to Programming With Karel
2. 1.2 More Basic Karel
3. 1.3 Karel Can't Turn Right
4. 1.4 Functions in Karel
5. 1.5 The Start Function
6. 1.6 Top Down Design and Decomposition in Karel
8. 1.8 Super Karel
9. 1.9 For Loops
10. 1.10 If Statements
11. 1.11 If/Else Statements
12. 3.5 Using Graphics in JavaScript
13. 9.1 Timers
14. 9.2 Random Circles
15. 9.3 Random Ghosts
16. 9.4 Bouncing Ball
17. 9.5 Mouse Events: Mouse Clicked
18. 9.6 Mouse Events: Mouse Moved
19. 9.7 Drawing Lines
20. 9.8 Key Events
21. 9.9 Crazy Ball Game
22. 11.1 Breakout
23. 12.16 Data Structures Challenges
24. 13.1 Tic Tac Toe
25. 14.1 Game Design: Helicopter
26. 22.1 Fun Snake
27. 22.2 Fun Graphics Challenges
28. 23.1 Conway's Game of Life
29. 23.2 Connect Four
30. 24.1 Evolution Simulation
31. 28.1 Visualizing Music
3A-AP-19 Systematically design and develop programs for broad audiences by incorporating feedback from users.
3A-AP-20 Evaluate licenses that limit or restrict use of computational artifacts when using resources such as libraries.
3A-AP-21 Evaluate and refine computational artifacts to make them more usable and accessible.
3A-AP-22 Design and develop computational artifacts working in team roles using collaborative tools.
1. 4.1 Collaborative Programming
3A-AP-23 Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.
2. 1.8 Super Karel
3. 1.9 For Loops
4. 1.10 If Statements
5. 1.11 If/Else Statements
6. 1.12 While Loops in Karel
7. 1.13 Control Structures Example
8. 1.14 More Karel Examples and Testing
9. 1.15 How to Indent Your Code
10. 2.1 Challenge Problems
11. 3.1 Hello World
12. 3.2 Variables
13. 3.3 User Input
14. 3.4 Basic Math in JavaScript
15. 3.5 Using Graphics in JavaScript
16. 5.1 Booleans
17. 5.2 Logical Operators
18. 5.3 Comparison Operators
19. 5.4 If Statements
20. 5.5 For Loops in JavaScript
21. 5.6 General For Loops
22. 5.7 For Loop Practice
23. 5.8 Random Numbers
24. 5.9 While Loops
25. 5.10 Loop and a Half
26. 7.1 Functions and Parameters 1
27. 7.2 Functions and Parameters 2
28. 7.3 Functions and Parameters 3
29. 7.4 Functions and Return Values 1
30. 7.5 Functions and Return Values 2
31. 7.6 Local Variables and Scope
32. 8.1 Functions Challenges
33. 9.1 Timers
34. 9.2 Random Circles
35. 9.3 Random Ghosts
36. 9.4 Bouncing Ball
37. 9.5 Mouse Events: Mouse Clicked
38. 9.6 Mouse Events: Mouse Moved
39. 9.7 Drawing Lines
40. 9.8 Key Events
41. 9.9 Crazy Ball Game
42. 11.1 Breakout
43. 12.1 Intro to Lists/Arrays
44. 12.2 Indexing Into an Array
45. 12.3 Adding/Removing From an Array
46. 12.4 Array Length and Looping Through Arrays
47. 12.5 Iterating Over an Array
48. 12.6 Finding an Element in a List
49. 12.7 Removing an Element From an Array
50. 12.8 Intro to Objects/Maps
51. 12.9 Basics of Objects
52. 12.10 Iterating Over an Object
53. 12.11 When Do I Use an Object?
54. 12.12 Intro to Sets
55. 12.13 Intro to Grids
56. 12.14 Looping Over a Grid
57. 12.15 Grid Example: Get a Row
58. 12.16 Data Structures Challenges
59. 13.1 Tic Tac Toe
60. 14.1 Game Design: Helicopter
61. 18.1 Extra Karel Practice
62. 19.1 Extra Karel Puzzles
63. 20.1 Functions and Parameters Practice
64. 21.1 Prime Numbers
65. 22.1 Fun Snake
66. 22.2 Fun Graphics Challenges
67. 23.1 Conway's Game of Life
68. 23.2 Connect Four
69. 24.1 Evolution Simulation
70. 28.1 Visualizing Music
3A-CS-01 Explain how abstractions hide the underlying implementation details of computing systems embedded in everyday objects.
1. 1.8 Super Karel
3A-CS-02 Compare levels of abstraction and interactions between application software, system software, and hardware layers.
3A-CS-03 Develop guidelines that convey systematic troubleshooting strategies that others can use to identify and fix errors.
1. 1.2 More Basic Karel
3A-DA-09 Translate between different bit representations of real-world phenomena, such as characters, numbers, and images.
3A-DA-10 Evaluate the tradeoffs in how data elements are organized and where data is stored.
3A-DA-11 Create interactive data visualizations using software tools to help others better understand real-world phenomena.
1. 5.8 Random Numbers
3A-DA-12 Create computational models that represent the relationships among different elements of data collected from a phenomenon or process.
1. 5.8 Random Numbers
3A-IC-24 Evaluate the ways computing impacts personal, ethical, social, economic, and cultural practices.
3A-IC-25 Test and refine computational artifacts to reduce bias and equity deficits.
3A-IC-26 Demonstrate ways a given algorithm applies to problems across disciplines.
3A-IC-27 Use tools and methods for collaboration on a project to increase connectivity of people in different cultures and career fields.
1. 4.1 Collaborative Programming
3A-IC-28 Explain the beneficial and harmful effects that intellectual property laws can have on innovation.
3A-IC-29 Explain the privacy concerns related to the collection and generation of data through automated processes that may not be evident to users.
3A-IC-30 Evaluate the social and economic implications of privacy in the context of safety, law, or ethics.
3A-NI-04 Evaluate the scalability and reliability of networks, by describing the relationship between routers, switches, servers, topology, and addressing.
3A-NI-05 Give examples to illustrate how sensitive data can be affected by malware and other attacks.
3A-NI-06 Recommend security measures to address various scenarios based on factors such as efficiency, feasibility, and ethical impacts.
3A-NI-07 Compare various security measures, considering tradeoffs between the usability and security of a computing system.
3A-NI-08 Explain tradeoffs when selecting and implementing cybersecurity recommendations.