Students explore the history of computer science and are introduced to the Python language.
History of Computers Timeline
Python Introduction
2-IC-20; 3B-IC-25; 3B-IC-27; 3B-IC-27; 3B-IC-26; 3A-IC-24
Students explore the parts and pieces that make up a computer. They discover the role each computer part has to play in the whole as examples of abstraction. Students learn about Python Variables.
Computer Parts & Pieces
Python Variables
3B-CS-02; 3B-CS-01; 3A-CS-01; 2-CS-03; 2-CS-02; 3A-CS-02
Students explore what makes up an input and what makes an output. They practice adding input statments into their code.
Input/Output
3B-AP-24; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13; 2-AP-11
Students discuss what makes a good digital citizen and explore approaches they could take to be respectful to others in a digital environment. They practice adding comments to their Python code.
Python Comments
Digital Citizenship
2-AP-17; 2-AP-11; 2-NI-05; 2-IC-20; 3B-IC-27; 3B-IC-26; 3B-IC-25; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11
Students review inputs/outputs and use a creative activity to demonstrate how the inputs and outputs can vary. They learn about the different variable types available in Python.
Input/Output
Variable Types
3B-CS-02; 2-CS-03; 2-CS-02; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13; 3A-AP-16; 3A-AP-13
Students discover how the internet works and learn about the different parts that make up a network. They learn how to use numbers in the Python language.
Numbers
How the Internet Works
3A-AP-17; 2-NI-04; 2-AP-11; 2-AP-17; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-16; 3A-AP-13
Students learn how internet packets work and how data gets transferred across the internet. They learn how to convert between data types in their code.
Internet Packets
Converting
2-NI-04; 2-AP-11; 2-AP-17; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13
Students learn about different internet topologies and the pros and cons of each. They learn how to concatenate strings together in Python.
Internet Topologies
Python Concatenation
3A-NI-04; 3B-NI-03; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13
Students explore different strategies to safe in a digital environment. They explore options that Python provides in math.
Digital Safety
Python Math
3B-AP-18; 3B-NI-04; 3A-NI-08; 3A-NI-07; 3A-NI-06; 3A-NI-05; 3B-AP-22; 3B-AP-21; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13
Students discuss how technology affects the world around them and how computer innovations affect various aspects of their lives. They learn how the modulus works.
Computers and Your World
Modulus
3B-IC-27; 3B-IC-26; 3B-IC-25; 3A-IC-28; 3B-IC-28; 3A-AP-20; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13; 2-AP-11; 2-AP-17; 2-IC-20
Students examine how technology affects their mental health and discuss possible boundaries they might want to implement in their lives. They learn more about Python strings.
Computer Boundaries
Strings
2-IC-20; 2-AP-17; 2-AP-11; 3A-IC-24; 3B-IC-26; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13
Students learn what a digital footprint is and explore how permanent information on the internet really is. They learn about various methods to manipulate strings in Python.
String Methods
Digital Footprint
2-AP-11; 2-IC-20; 3B-IC-26; 3B-IC-25; 3A-IC-24; 2-AP-17; 3B-AP-22; 3B-AP-21; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13
Students discuss different ways that people and computers communicate. They explore further methods available in Python for strings.
Communication Styles
String Methods Continued
3A-IC-26; 2-IC-20; 2-AP-17; 2-AP-13; 2-AP-11; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13
Students explore different strategies for effective and creative problem solving. They learn how to check strings for information.
Problem Solving
Checking Strings
3B-NI-04; 3B-AP-18; 3A-NI-08; 3A-NI-07; 3A-NI-06; 3A-NI-05; 2-AP-17; 2-AP-11; 3B-AP-22; 3B-AP-21; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13
Students practice creative problem solving as they work together to make it through an unplugged minefield activity. They learn how to use concatenation for numbers in Python.
Concatenating Numbers
Problem Solving
Minefield Unplugged Activity
3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-AP-11; 2-AP-13; 2-AP-17
Students exercise further problem solving skills as they work together in teams to create skits to perform for the class. They learn more approaches to concatenating with numbers in Python.
Problem Solving
Concatenating Numbers Continued
2-AP-17; 2-AP-13; 2-AP-11; 3B-AP-22; 3B-AP-21; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13
Student learn some strategies for taking large projects and breaking them down into more manageable tasks. They learn how to create lists in Python
Break Down Big Projects
Lists
3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-AP-11; 2-AP-13; 2-AP-17
Students practice breaking down a big project (planning a party) into smaller, more manageable tasks. They learn how to add an If statement to their Python code.
Break Down Big Projects
If Statements
3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-21; 3B-AP-22; 2-AP-11; 2-AP-17; 3A-NI-05; 3A-AP-15
Students explore the role and effect social media has in their life. They discuss ways to mitigate the effects of social media. They learn how to add conditionals to their Python code.
Social Media
Python Conditionals
2-IC-20; 3B-IC-27; 3B-IC-26; 3B-IC-25; 2-AP-17; 2-AP-11; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13
Students discover different careers in computer science and examine how they feel about various career paths. They learn how to add else if statements to their Python code.
Careers in Computing
Python Else If Statements
3A-AP-17; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-16; 3A-AP-13
Students dive further into different careers and contemlate the possibilities of their own life paths. They learn to add for loops into their Python code.
Careers in Computing
Python For Loops
3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-AP-11; 2-AP-12; 2-AP-17; 2-IC-20; 3B-AP-13
Students analyze the role of machine learning and artificial intelligence in modern society. They debate the ethics of striving for true AI. They learn to add an if statement into their for loops in Python.
Artificial Intelligence
If Statement in a For Loop
3B-AP-08; 3B-AP-16; 3B-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-AP-11; 2-AP-12; 2-AP-17; 2-IC-20
Students explore different methods of communication through an unplugged activity. They learn how to access items within a list in Python.
Communication Styles
Accessing Items in Lists
3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-AP-11; 2-AP-13; 2-AP-17; 2-IC-20
Students discuss different strategies for using social media in a healthy, constructive way. They learn to use integers that are inside a list in Python.
Social Media
Using Integers from a List
3B-IC-27; 3B-IC-25; 3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 3A-IC-24; 2-AP-11; 2-AP-13; 2-AP-17; 2-AP-19
Students examine how to make technology accessible to people of all ability levels. They learn to add items to a list in Python.
Digital Accessibility
Adding to Lists
2-IC-21; 2-IC-20; 2-AP-17; 2-AP-13; 2-AP-11; 2-CS-01; 3A-IC-25; 3A-AP-21; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13
Students debate on the ethics of creating self driving cars. They learn how to remove from lists in Python.
Ethics
Removing from Lists
3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-CS-01; 2-AP-11; 2-AP-13; 2-AP-17; 2-IC-20; 2-IC-21
Students examine issues that happen in access technology and the Digital Divide. They learn further concepts about Python lists.
Digital Equity
Lists Continued
3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 3A-AP-21; 3A-IC-25; 2-CS-01; 2-AP-11; 2-AP-13; 2-AP-17; 2-IC-21; 2-IC-20; 3B-IC-27; 3B-IC-26; 3A-AP-13; 3A-AP-16; 3A-AP-17
Students learn the basics of troubleshooting various computer problems. They learn how to add while loops to their Python code.
Troubleshooting
Python While Loops
3A-CS-03; 3A-AP-14; 3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-CS-03; 2-AP-11; 2-AP-13; 2-AP-17; 3B-AP-13
Students practice troubleshooting techniques in different posed scenarios. They learn to add functions to their Python code.
Python Functions
Troubleshooting
3B-AP-12; 3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 3A-CS-03; 2-CS-03; 2-AP-11; 2-AP-13; 2-AP-17; 3A-AP-15
Students learn some strategies for debugging their code faster and with less frustration. They learn to add parameters to their Python functions.
Python Function Parameters
Debugging
2-CS-03; 3B-AP-12; 3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 3A-AP-15; 3A-CS-03; 2-AP-11; 2-AP-13; 2-AP-17
Students explore how binary code works and how different characters are represented using only 0's and 1's. They learn to add multiple paramters in their Python functions.
Binary
Multiple Parameters in Python Functions
3A-DA-09; 3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 3A-AP-15; 2-DA-07; 2-AP-11; 2-AP-13; 2-AP-17
Students explore different ways that data is organized into specific structures in programming. They learn how to access random in their Python code.
Python Random
Data Structures
3B-AP-14; 3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3A-DA-10; 3B-AP-10; 3B-AP-11; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-DA-07; 2-AP-11; 2-AP-13; 2-AP-17
Students examine different space requirements that various files require for use and storage. They learn how to leveredge existing algorithms to streamline their programming process.
Data Requirements
Building on Existing Algorithms
3B-AP-12; 3B-AP-10; 3A-DA-10
Students discover ways to encrypt information in order to keep it safe. They learn how to read files with their Python code.
Cryptography
Reading Files
2-AP-11; 3A-AP-15; 3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-NI-06; 2-DA-07; 2-AP-13; 2-AP-17
Students practice using a cipher to encrypt and decrypt code. They learn to read parts of a file using Python code.
Cryptography
Reading Parts of a File
3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 3B-NI-04; 2-NI-06; 2-DA-07; 2-AP-11; 2-AP-13; 2-AP-17
Students learn how to represent algorithms using a flow chart visual representation. They learn to append a line to a text file using Python code.
Flow Charts
Append a Line to a Text File
3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-DA-07; 2-AP-10; 2-AP-11; 2-AP-13; 2-AP-17
Students gather information from their peers as they discover how market research works and its purpose. They learn to utilize the file write mode in Python.
Market Research
File Write Mode
2-IC-22; 2-DA-08; 2-AP-15; 3B-AP-22; 3B-AP-21; 3B-AP-19; 3B-AP-14; 3B-AP-11; 3B-AP-10; 3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-1
Students form teams and make a plan for a collaborative team project. Instructions and expectations are given for each team member and the project.
Team Project
3A-AP-13; 3A-AP-14; 3A-AP-15; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-17; 3B-AP-19; 3B-AP-21; 3B-AP-22; 3A-AP-22; 3A-IC-27; 3B-AP-20; 2-AP-11; 2-AP-13; 2-AP-15; 2-AP-17; 2-AP-18
Teams get to know each other and discover how to leveredge their strengths through an unplugged challenge. They have time to collaborate on their project.
Team Project
3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 3A-AP-22; 3A-IC-27; 3B-AP-17; 3B-AP-20; 2-AP-11; 2-AP-13; 2-AP-17; 2-AP-18; 3A-AP-13
Teams have this time to really dive into building out their code project. They work together to solve their problems, bugs, or questions.
Team Project
3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 3A-AP-22; 3A-IC-27; 3B-AP-17; 3B-AP-20; 3B-AP-23; 3A-AP-19; 2-AP-11; 2-AP-13; 2-AP-15; 2-AP-17; 2-AP-18
Teams have this opportunity to show off their projects they created together in presentations for the class.
Team Presentations
2-AP-18; 3A-AP-23
Students analyze how technology advances affect the world around them, from job opportunities to social structures. They learn how to access the math library in Python.
Technology Shifts
Python Math Library
2-AP-16; 3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-AP-11; 2-AP-13; 2-AP-17
Students examine the availability of personal information online and discuss the ethics of personal data privacy. They learn how to access the Python Datetime library.
Personal Data
Python Datetime
3A-IC-30; 3A-IC-29; 3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-AP-11; 2-AP-13; 2-AP-17; 2-IC-23
Students explore more specifics when it comes to documenting code and further methods of printing statements in Python.
Documenting Code
Printing Specifics
3A-AP-23
Students exercise their problem solving techniques in an unplugged challenge maze activity. They learn more advanced approaches to concatenation in Python.
Different Concatenating Approaches
Problem Solving
3A-AP-13; 3A-AP-16; 3A-AP-17; 3A-AP-18; 3B-AP-10; 3B-AP-11; 3B-AP-14; 3B-AP-19; 3B-AP-21; 3B-AP-22; 2-AP-11; 2-AP-13; 2-AP-17
Students further explore their team problem solving strategies in an unplugged activity where they work together to create shapes from string. They learn how to add error handling to their Python code.
Error Handling
Problem Solving
3B-AP-21
Students reflect on how this course has gone and everything they have learned. They learn how to access the OS path in Python.
Reflections
OS
3A-AP-18; 3A-AP-17; 3A-AP-16; 3A-AP-13
Students review the course and discuss why learning computer science is important for them now and in the future.
Reflections
3B-IC-25; 2-IC-20
In this course, students will complete challenges that help solidify concepts as they use skills in a variety of ways. In order to complete tasks, students will creatively apply what they've learned by using different approaches to reach a goal. This experience closely follows challenges they would face in a technical interview, allowing them to practice.