Computer Programming 1

Summary

Computer Programming 1 is a deep dive into the fundamentals of programming concepts and teaches text-based coding using Python. This introduction to programming course assumes no prior coding experience. Students are exposed to graphics-based problem solving that is visually engaging, allows for multiple correct solutions, and provides visual cues when a solution goes awry.

Syllabus

Computer Programming 1 Syllabus

Class Calendar

2023-2024 Class Calendar

Core Standards

3A-CS-01

Explain how abstractions hide the underlying implementation details of computing systems embedded in everyday objects.


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.​


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


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 realworld phenomena.


3A-DA-12

Create computational models that represent the relationships among different elements of data collected from a phenomenon or process.


3A-AP-13

Create prototypes that use algorithms to solve computational problems by leveraging prior student knowledge and personal interests.


3A-AP-14

Use lists to simplify solutions, generalizing computational problems instead of repeatedly using simple variables.


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.


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.


3A-AP-17

Decompose problems into smaller components through systematic analysis, using constructs such as procedures, modules, and/or objects.


3A-AP-18

Create artifacts by using procedures within a program, combinations of data and procedures, or independent but interrelated programs.


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.


3A-AP-23

Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.


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.


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.