In this lesson, students explore the impacts of being online. Students reflect on social media use and their digital footprint as well as learn how to identify and respond to cyberbullying.
Students will be able to:
In this lesson, students explore the complex world of data collection. Students learn about the types of data that companies collect and what they do with it. Students also consider the ethics of data collection by working through a scenario about location tracking in school. Lastly, students learn about privacy within the context of law.
Students will be able to:
In this lesson, students will learn about and discuss information literacy. Information literacy is having the ability to find information, evaluate information credibility, and use information effectively.
Students will be able to:
By the end of this lesson, students should have a better understanding of cyberethics, responsible internet use, and the impact of copyright and licenses on the digital world. They should also be more aware of the potential consequences of unethical online behavior.
Students will be able to:
In this lesson, students learn about the importance of personal data security and explore different forms of authentication and browser security settings. Students then consider the tradeoffs between ease of use and security when implementing different authentication methods.
Students will be able to:
In this lesson, students are introduced to the core concepts of cybersecurity, focusing on the importance of protecting information and devices in the digital world. Students will explore key vocabulary terms, security frameworks, and the potential risks associated with the Internet of Things (IoT).
Students will be able to:
In this lesson, students will learn how to navigate the digital world safely by understanding common cyber threats and implementing protective measures. Through interactive activities and creative storytelling, students will explore various cyberattacks, their consequences, and strategies for defense. This awareness will empower them to make responsible choices online and protect themselves from cybercrime.
Students will be able to:
In this lesson, students complete a summative assessment of the module’s learning objectives.
Students will be able to:
In this lesson, students will learn how to print messages out onto the console using the Javascript command console.log()
.
Students will be able to:
main
functionIn this lesson, students learn how to assign values to variables, manipulate those variable values, and use them in program statements. This is the introductory lesson into how data can be stored in variables.
Students will be able to:
In this lesson, students learn how they can allow users to input information into their programs, and use that input accordingly.
Students will be able to:
In this lesson, students learn about the different mathematical operators they can use to perform mathematical computations and create useful programs that compute information for the user.
Students will be able to:
In this lesson, students will learn what pair programming is, why it is used, and the appropriate behaviors of a driver and navigator.
Students will be able to:
In this lesson, students will learn how randomization can enhance a program.
Students will be able to:
In this lesson, students will learn how to create basic functions using JavaScript and use them to improve the organization, readability, and flow of their programs.
Students will be able to:
main
functionIn this lesson, students review content with a 15-question Unit Quiz.
Students will be able to:
In this lesson, students will learn about the graphics canvas and its coordinate system. Students will explore how to create and position shapes anywhere on the canvas. Graphic creation relies on setting the type of shape, size, position, and color on the artist’s canvas before adding it to the screen.
Students will be able to:
In this lesson, students will get more practice with graphics objects. They will also learn how to find images on the internet and use them in their projects. Web images can be loaded into a graphics project using the WebImage
class and passing a web image address to it and they can be resized using the setSize
method. Apart from loading images and resizing them, students will also learn how to add text objects to their canvas.
Students will be able to:
WebImage
setSize
In this lesson, students will further explore the positioning of their graphics and the importance of the order in which functions are called.
Students will be able to:
In this unit, students will synthesize all of the skills and concepts learned in the JavaScript and Graphics unit to solve increasingly challenging puzzles.
Students will be able to:
In this lesson, students will learn about the basic functions and types of operating systems. Students will also explore the process for upgrading and updating operating systems.
Students will be able to:
This hands-on lab empowers students to personalize their computer experience by exploring display, sound, and storage settings, while also teaching them valuable troubleshooting skills. Students will learn to navigate their operating system and discover resources for further customization.
Students will be able to:
In this lesson, students delve deeper into the differences between the three main operating systems. They learn how operating systems store and manage files and the differences and similarities in each system’s interface.
Students will be able to:
In this lesson, students continue to compare and contrast different operating systems. Students learn how operating systems use file extensions to determine how to view different data types and how some extensions are only compatible with specific operating systems. Additionally, students learn about processors and the difference between a 32-bit processor and a 64-bit processor.
Students will be able to:
In this lesson, students will learn how to differentiate between laptops and tablets. Through brainstorming, activities, and discussions, students will explore the functionalities, strengths, and weaknesses of each device to make informed decisions about their own technology needs.
Students will be able to:
In this lesson, students learn about the different types of software. Through interactive exercises, students explore how different software can be used in the workplace and our every day lives. Students also learn about single and cross-platform software.
Students will be able to:
In this lesson, students learn about the different types of software licenses as well as the different methods of installing software based on the application’s architecture.
Students will be able to:
In this lesson, students will learn about the importance of application security and what they can do to protect applications once they have been installed on a device.
Students will be able to:
In this lesson, students will learn about browser security features and ways to configure their browsers to enhance security.
Students will be able to:
In this lesson, students learn how to use user accounts and permissions to secure a device. Students also learn about system hardening and how to strengthen the security of a network by setting up and implementing host security.
Students will be able to:
In this lesson, students learn how to use the command line interface to interact with files and folders, and access information about computer processes.
Students will be able to:
This hands-on lab will introduce students to the command line interface (CLI) by teaching them basic navigation commands. They will learn to move around their computer’s directories and open files using text-based commands.
Students will be able to:
cd
, ls
, open
..) In this lesson, students will research and compare different programming languages, analyze their features and applications, and develop an argument to defend a language choice for a specific task. Through research, discussion, and structured writing, students will strengthen their understanding of programming languages and critical thinking skills.
Students will be able to:
Students will investigate key milestones in the development of computers, operating systems, and digital communication. Through research and analysis of historical events, they will create and present a timeline that illustrates how computing has evolved into modern technology, citing specific textual evidence.
Students will be able to:
In this lesson, students complete a summative assessment of the module’s learning objectives.
Students will be able to:
In this lesson, students will learn more about boolean values. Booleans refer to a value that is either true or false, and are used to test whether a specific condition is true or false.
Students will be able to:
In this lesson, students learn about if statements as a way to make decisions and execute specific code depending on the validity of a condition.
Students will be able to:
In this lesson, students will learn about logical operators. Logical operators allow students to connect or modify Boolean expressions. Three logical operators are the !, ||, && characters.
Students will be able to:
In this lesson, students learn how to use comparison operators. Comparison operators let students compare two values.
Students will be able to:
In this lesson, students will apply their understanding of if/else statements to graphics programs. Students will also learn how to use else if
statements to check for multiple conditions.
Students will be able to:
In this lesson, students will explore while loops and JavaScript variables. This combines the ideas of creating variables, updating variables throughout a loop, and determining the correct ending condition.
Students will be able to:
In this lesson, students will learn how to create a Loop and Half. A Loop and a Half is a specific way to write a while loop with the condition being true
. Inside the loop, students use a break statement to break out of the loop whenever that condition is met, causing the loop to end.
Students will be able to:
In this lesson, students will apply their understanding of while loops to graphics programs.
Students will be able to:
In this lesson, students will learn in greater detail about for loops. For loops in Javascript are written and executed in the same manner as Karel exercises, except now students will explore modifying the initialization statement, test statement, and increment statements of the loops.
Students will be able to:
i
inside the for loop code to do something different on each iterationIn this lesson, students will apply what they have learned about for loops to graphics programs.
Students will be able to:
i
to position graphics objects and change the size of graphics objectsIn this lesson, students review content with a 15 question Unit Quiz.
Students will be able to:
In this lesson, students will expand their use of functions by learning about and implementing parameters.
Students will be able to:
In this lesson, students learn about return statements and how to use them to send information between functions.
Students will be able to:
In this lesson, students learn how to set default values for their function’s parameters.
Students will be able to:
In this lesson, students will explore the scoping of a variable, which is where the variable is “defined” or where it exists.
Students will be able to:
In this lesson, students review content with a 15 question Unit Quiz.
Students will be able to:
In this lesson, students will explore the different types and states of data and its value as a resource. Students will develop a critical understanding of data’s role in society and its ethical implications.
Students will be able to:
In this lesson, students are introduced to database management systems and the fundamentals of SQL. They will learn how to create tables, insert data, and retrieve information using basic SQL queries.
Students will be able to:
In this lesson, students will explore how attackers can exploit weaknesses in websites and programs. They will learn about SQL Injection and Cross-Site Scripting (XSS), as well as programming errors that can cause vulnerabilities.
Students will be able to:
In this lesson, students will dive into the world of developer tools, the secret weapons of web designers and programmers! Students will explore the code behind websites, participate in a capture-the-flag style game, and learn how to use developer tools to inspect and manipulate websites.
Students will be able to:
In this lesson, students will learn about the importance of physical security as well as environmental controls. Students will understand that the security and functionality of a network goes beyond simply having the necessary devices - it includes proper security and maintenance of the devices.
Students will be able to:
In this lesson, students learn about vulnerabilities, cyber threats, and attacks on networks and organizations. Students simulate identifying and exploiting vulnerabilities.
Students will be able to:
In this lesson, students are introduced to the Risk Management process. They will learn how to identify, analyze, reduce, and monitor risk.
Students will be able to:
In this lesson, students complete a summative assessment of the module’s learning objectives.
In this lesson, students learn the basics of Design Thinking. Design Thinking is a step by step process that helps developers and entrepreneurs develop their products while considering their end-users and testing out products before releasing them.
Throughout the module, students will use the design process to develop a web page that provides a solution to a community issue. In this lesson, students will brainstorm and choose their topic.
Students will be able to:
In this lesson, students learn in more depth about the first principle of Design Thinking: Empathy. Empathy is the ability to understand and share the feelings of another, and is the most important tenet of Design thinking. Students will practice building empathy by interviewing classmates and evaluating the accessibility of existing web pages.
Students will be able to:
In this lesson, students will take the information that they gathered in their interviews with peers to define a specific problem that needs to be solved. Students will create Point of View statements and composite characters to make a profile of the users who are in need of a fix to the problem that students define.
Students will be able to:
In this lesson, students will learn strategies to help them ideate solutions to the problems they have been exploring throughout the Design Thinking module. Students will spend class time brainstorming with classmates, and encouraging one another to come up with out of the box solutions.
Students will be able to:
In this lesson, students learn the basics of prototyping. Students will create a prototype based on ideas they came up with for their design project, and present prototypes to classmates for critiquing.
Students will be able to:
In this lesson, students will test one another’s prototypes and provide constructive feedback about its usability and aesthetic appeal. Students will also ask thoughtful questions of the testers to get a better understanding of their experience interacting with the prototype.
Students will be able to:
In this lesson, students use all of their HTML and CSS knowledge to build the website they developed throughout the Design Process.
Students will be able to:
In this lesson, students will be introduced to arrays – how to create them and access their elements.
Students will be able to:
In this lesson, students will learn how to add and remove elements at the end of an array using the push
and pop
methods.
Students will be able to:
push
methodpop
methodIn this lesson, students will be able to get the length of an array and learn how to loop through an array so they can have more functionality with arrays in their programs.
Students will be able to:
In this lesson, students apply the array iteration techniques that they learned in the last lesson to a variety of graphics applications.
Students will be able to:
In this lesson, students learn about and put into practice a variety of array methods.
Students will be able to:
In this lesson, students will learn how to create objects and store key/value pairs of data.
Students will be able to…
In this lesson, students will explore how to use objects to manage graphics in JavaScript. They will learn how objects store properties and how passing objects as function parameters affects program behavior. Students will apply these concepts in interactive coding exercises to create animations and simulations.
Students will be able to:
- Define and manipulate objects that store graphic properties.
- Pass objects as parameters and explain the difference between passing by value and passing by reference.
- Use objects to create and manage animated elements on a canvas.
In this lesson, students will explore the concept of object methods in JavaScript. They will learn how methods define the behaviors of objects and how to use them effectively. Students will apply these concepts through interactive coding exercises that incorporate object methods in animations and simulations.
Students will be able to:
- Define and implement methods inside JavaScript objects.
- Differentiate between object properties and methods.
- Use object methods to manipulate and interact with objects.
In this lesson, students will learn how to use a for…in loop to iterate over all of the keys in an object.
Students will be able to…
In this lesson, students will learn about object constructors in JavaScript and how they are used to create multiple instances of objects efficiently. They will explore the syntax of constructors, practice creating instances, and apply their knowledge to interactive coding challenges.
Students will be able to:
- Define and implement an object constructor in JavaScript.
- Differentiate between object literals and object constructors.
- Use constructors to create multiple instances of an object with shared properties and methods.
In this lesson, students will explore the Software Development Lifecycle (SDLC) and the Scrum framework, gaining an understanding of the key stages involved in software development and Agile methodologies. Students will apply these concepts by brainstorming and designing a simple app in teams.
Students will be able to:
- Identify and describe the stages of the Software Development Lifecycle.
- Differentiate between traditional and Agile development models.
- Explain the key roles and processes within the Scrum framework.
- Apply the SDLC to brainstorm and plan an app that solves a real-world problem.
In this lesson, students will explore the app development process through rapid prototyping, flowcharting, pseudocode, and quality assurance. They will develop a paper prototype, create a flowchart to visualize app logic, write pseudocode, and establish a quality assurance plan to ensure their app functions correctly and efficiently.
Students will be able to:
This lesson introduces students to key programming concepts used in app development. It focuses on event handling using getElementAt()
, recognizing button clicks, and applying these concepts to develop a simple JavaScript application. Additionally, students will explore online collaboration tools for project management.
Students will be able to:
- Use the getElementAt()
function to detect user interactions with UI elements.
- Identify which button has been clicked and execute appropriate responses.
- Apply event-driven programming concepts in their own app.
- Utilize online collaboration tools to manage and track project progress.
This lesson introduces students to the concept of user testing in the software development process. Students will learn how to develop a user testing plan, conduct user testing, and analyze their findings to improve their apps.
Students will be able to:
- Explain the purpose and importance of user testing.
- Develop a structured user testing plan.
- Conduct user testing and document observations.
- Analyze user feedback to determine areas of improvement.
This lesson guides students through the final phase of app development, where they refine their program based on user feedback. Students will implement improvements identified during user testing to enhance functionality and usability.
Students will be able to:
- Apply user feedback to make meaningful improvements to their app.
- Debug and refine their code for better usability.
- Ensure their app meets all project requirements.
This lesson focuses on deploying a final version of a student-created app. Students will learn how to publish and share their app, explore different types of software licenses, select an appropriate license for their project, and present their final product.
Students will be able to:
- Deploy their app by making it publicly accessible and sharing it with users.
- Understand different types of software licenses and their implications.
- Select an appropriate software license for their app and justify their choice.
- Create a presentation summarizing the development process and key features of their app.