Please enable JavaScript to use CodeHS

Tennessee Computer Science Foundations

Description

When was the first computer made? What did it look like, and what was it used for? In this lesson, students will explore the creation and evolution of computing machines that now permeate our day-to-day life.

Objective

Students will be able to:

  • Identify important historical events in the development of modern computers
  • Explore individual’s contributions to the development of the computer and discuss who gets to be included in the computer innovators group
Description

How are computers organized? What are the main components of a computer?

In this lesson, we will explore how different organizational structures of computers interact with each other to make computers functional.

Objective

Students will be able to:

  • Understand the main parts of a computer
  • Differentiate the difference between hardware and software
  • Identify input and output devices
  • Learn different types of networks
Description

What kinds of software do computers use and need?

In this lesson, the topic of software is broken down into types of software, how they interact, and the specific functions of the different types of software.

Objective

Students will be able to:

  • Understand and identify different types of software and their functions
Description

In this lesson, students will explore the history of operating systems by creating a timeline.

Objective

Students will be able to:

  • Explain the purpose of operating systems
  • Identify the main types of operating systems
  • Describe the history of operating systems, including the major milestones of innovation
Description

What is hardware? How does hardware work?

In this lesson, hardware is broken down into the different physical components of computers and how they contribute to the function of the computer as a whole.

Objective

Students will be able to:

  • Understand and identify the physical components of a computer & their roles in computer functionality
Description

Where is computing headed? What is Artificial Intelligence and what are the potential impacts that this might have on our world?

In this lesson, students learn about Artificial Intelligence and how the landscape of computing might change in the future. Students will discuss how these future developments might impact our society.

Objective

Students will be able to:

  • Discuss the future of technology and computers in the world
Description

In this lesson, students will learn basic safety concepts as they relate to the internet, shop spaces, and other governing agency rules.

Objective

Students will be able to:

  • Identify predatory behavior and how to respond to it online
  • Identify risks working with electrical systems and power tools
  • Understand what basic rules exist from different governing bodies
Description

In this lesson, students will be introduced to Tinkercad and how to create basic circuits and use a multimeter to read basic properties of the electrical circuit.

Objective

Students will be able to:

  • Create basic electrical circuit simulations on Tinkercad
  • Explain the purpose of a multimeter
  • Read resistance, current, and voltage for a circuit using a multimeter
Description

In this lesson, students will learn basic electrical principles such as Ohms law. Using Tinkercad circuits, they will see these laws in action.

Objective

Students will be able to:

  • Express the relationship between amperage, voltage, and resistance with respect to Ohm’s law
  • Create circuits and measure values to verify Ohm’s law
  • Understand the relationship between electrical energy and electrical power
Description

In this lesson, students will learn basic logical operators and how they can be implemented in an electrical circuit.

Objective

Students will be able to:

  • Explain logical operators and how they are implemented using logical gates
  • Use truth tables to solve logical equations and problems
Description

In this lesson, students review content with a summative quiz for the unit.

Objective

Students will be able to:

  • Prove their knowledge of basic electrical circuits through a multiple choice quiz
Description

In this lesson, students will be introduced to HTML: the language for building web pages. Students will discover why HTML is important and how it works in order to start building their own web pages.

Objective

Students will be able to:

  • Identify the purpose and applications of HTML
  • Create their first simple web page
Description

In this lesson student upgrade from simple tags to full HTML documents. Students learn some new tags that let them put information in different places on the web page, and they learn about the nested tree structure of an HTML document.

Objective

Students will be able to:

  • Discern the various parts of an HTML page
  • Create fully formed HTML pages
Description

In this lesson, students learn about formatting tags that let them modify the appearance of text and make their web pages look clear and aesthetically pleasing.

Objective

Students will be able to:

  • Apply formatting tags in order to modify the appearance of text and make web pages look clear and aesthetically pleasing
Description

In this lesson, students learn how to add hyperlinks to their web pages using the <a> tag.

Objective

Students will be able to:

  • Add and utilize hyperlinks on their webpages
Description

In this lesson, students learn how to add images to their own web pages using the <img> tag.

Objective

Students will be able to:

  • Embed an image in HTML
  • Size images appropriately on the webpage
Description

In this lesson, students learn how to add lists to their web pages and practice making different kinds of lists.

Objective

Students will be able to:

  • Incorporate different kinds of lists to their web pages
  • Understand the differences between unordered lists and ordered lists.
Description

In this lesson, students will use HTML styling to make their pages visually appealing and unique.

Objective

Students will be able to:

  • Understand how to apply styling to HTML tags
  • Apply HTML styling to make their web pages more visually appealing and unique
Description

In this lesson, students will be introduced to CSS to add styling to their HTML pages.

Objective

Students will be able to:

  • explain the relationship between CSS and HTML
  • apply basic CSS style to a webpage using the style tag
Description

In this lesson, students will complete their homepage by adding style and any other content they may want to include.

Objective

Students will be able to:

  • Apply styling rules to existing webpage content
  • Design and implement a webpage about themselves
Description

In this lesson, students will use the skills they learned in this unit to create a HTML page that has useful information for new programmers.

Objective

Students will be able to:

  • Apply skills to complete a real-life problem
  • Research and understand helpful keyboard shortcuts for use during programming
Description

In this lesson, students complete a summative assessment of the unit’s learning objectives.

Objective

Students will be able to:

  • Prove their knowledge of the basic HTML through a multiple choice quiz
Description

In this lesson, students will explore how teamwork can be used to help build multipage websites using collaborative tools.

Objective

Students will be able to:

  • Explain how teamwork can be more efficient in software development
  • Explain how strong management skills are important for project managers
Description

In this lesson, students are introduced to a website project and given an opportunity to brainstorm and survey customers for their input.

Objective

Students will be able to:

  • Students will be able to brainstorm website ideas
  • Students will be able to incorporate customer feedback into their website planning
Description

Once students have ideas, they will then use this lesson to help plan their site, including a site map, flowcharts, and project timelines.

Objective

Students will be able to:

  • Establish a plan for a new website before developing the site
  • Demonstrate an understanding of flowcharts
  • Plan a project timeline for a small scale project
Description

This project is meant to be a challenge that touches multiple concepts from the course to produce a digital artifact. In this project, students will be developing their first digital artifact: their very own website!

Objective

Students will be able to:

  • Execute a plan and make adaptations along the way
  • Produce a full website based on an innovation topic
Description

How do computers store and manipulate information? In this lesson, students learn how computers abstract complicated information into manageable chunks that they can then store and manipulate.

Objective

Students will be able to:

  • explore and explain abstraction and the different ways that we can represent digital information.
Description

In this lesson, students will learn what a number system is, the difference between the decimal number system and the binary number system, and how to convert between decimal and binary.

Objective

Students will be able to:

  • Represent numbers in different number systems
  • Understand how to convert between the decimal and binary system
Description

In this lesson, students will learn what a number system is, the difference between the decimal number system and the binary number system, and how to convert between decimal and binary.

Objective

Students will be able to :

  • Understand the binary system
  • Encode various types of information using binary
Description

In this lesson, students will learn how computers break down images into concrete values that can be stored. Students will learn how images are represented digitally using pixels.

Objective

Students will be able to:

  • Understand how images can be encoded as data
Description

In this lesson, students will learn about the hexadecimal number system, and how it is useful in storing digital information. They will also learn how to convert numbers from the hexadecimal system to binary and vice versa.

Objective

Students will be able to:

  • Understand how to convert between the hexadecimal and binary system
Description

In this lesson, students will learn how the RGB encoding scheme allows us to encode colors as numeric data. It defines the amount of red, green and blue light in a pixel.

Objective

Students will be able to:

  • Encode colors
  • Encode color images as data
Description

In this lesson, students will learn how computers shrink digital information, to make storage of pictures, videos, and text more efficient.

Objective

Students will be able to:

  • have a basic understanding of how data can be compressed.
Description

In this lesson, students will what lossy compression is, the benefits and disadvantages of using this kind of compression, and where using lossy compression is appropriate.

Objective

Students will be able to:

  • understand different types of compressions, and the benefits and drawbacks to each.
Description

In this lesson, students will examine a troubleshooting model and have a chance to explore the different phases of the model.

Objective

Students will be able to:

  • Independently research different components of a trouble shooting model
  • Explain the importance of each step in a trouble shooting model
Description

This lesson is a summative assessment of the unit’s learning objectives.

Objective

Assess student achievement of the learning goals of the unit

Description

This lesson introduces students to the fundamental concepts of the Internet, its functionality, and its impact on society. Topics include how the Internet works, the importance of protocols, issues of anonymity, and internet censorship. Additionally, students will explore the history and evolution of the Internet through research and project-based activities.

Objective

Students will be able to:

  • Understand what the internet is
  • Understand how the internet works
  • Discuss the issue of anonymity
  • Understand the legal and ethical concerns surrounding internet censorship
Description

In this lesson, students will explore the fundamentals of programming and how computers understand instructions. They will learn about the concept of code, how it functions as a language for computers, and how different programming languages are structured.

Objective

Students will be able to:

  • Define code and explain its role in communication between humans and computers
  • Differentiate between natural language and programming language
  • Recognize various types of programming languages and categorize them into a hierarchy
  • Research and present information on an assigned programming language
Description

In this lesson, we explore the hardware that makes up the internet and explore characteristics of that hardware that define our experience on the internet.

Objective

Students will be able to:

  • Discuss and answer questions about the hardware that powers the internet
Description

In this lesson, students will explore how internet hardware communicates using Internet Addresses and the Internet Protocol.

Objective

Students will be able to:

  • Discuss the necessity of internet protocols
  • Recognize the hierarchy of elements in an IP address
Description

In this lesson, students learn what a URL is and what happens when they visit a URL.

Objective

Students will be able to:

  • Describe the process that occurs when typing in a URL, from sending a request and response over the Internet to viewing a webpage
Description

In this lesson, students will explore the DNS system and how it maps human readable domain names into actual accessible IP addresses.

Objective

Students will be able to:

  • Understand the DNS system and how it works
  • Recognize the DNS system as an abstraction
Description

In this lesson, students explore how messages get from one address on the internet to another.

Objective

Students will be able to:

  • Explain how computers communicate using routers
  • Explain what considerations are made when choosing a route
  • Discuss how routers are fault-tolerant because of redundancy
Description

In this lesson, students learn about the last piece of the puzzle for how the Internet works: Packets and Protocols. All information sent over the internet is broken down into small groups of bits called packets. The format for creating and reading packets is defined by open protocols so that all devices can read packets from all other devices.

Objective

Students will be able to:

  • Explain the packet process and how protocols (TCP/IP and HTTP) are vital to the exchange of information on the Internet
  • Explain the HyperText Transfer Protocol
Description

In this lesson, students learn about three methods computers use to process tasks — sequential, parallel, and distributed computing. Sequential computing executes each step in order one at a time, while parallel and distributed computing process tasks simultaneously on the same or across more than one device, respectively.

Objective

Students will be able to:

  • differentiate between sequential, parallel, and distributed computing
  • explain the benefits and challenges of using parallel and distributed computing
Description

In this lesson, students will discuss the ways that the protocols that we have discussed can be exploited, and some methods of protection that we have. We learn about the impact of cybercrime and how we can combat cyber attacks with cybersecurity. Cryptography is the cornerstone of secure communication.

Objective

Students will have an understanding of why cybersecurity is necessary, and some practical measures that they can take themselves to improve their security on the internet.

Description

In this lesson, students are presented with different ways that the Internet impacts their lives. The Internet affects the way that people communicate (emails, social media, video chat) and collaborate to solve problems. It has revolutionized the way that people can learn and even buy things. Because the Internet is present in almost every facet of people’s lives, there are severe ethical and legal concerns that derive from the Internet.

Objective

Students will be able to:

  • Analyze the different ways that the Internet impacts their lives by learning about how the Internet contributes to collaboration, communication, etc
  • Evaluate whether the Internet has a more positive or negative effect on their community by citing examples from the lesson
  • Explain what the digital divide is and articulate their own opinions related to it
Description

In this lesson, students will learn what copyright laws are and how to avoid copyright infringement. They will explore why copyright laws are important and how they protect the creators.

Objective

Students will be able to:

  • Explain what copyright laws are and why they are important
  • Find images they are legally allowed to use in their projects
  • Accurately attribute images they find and want to use
Description

In this lesson, students explore various careers in computer science, including the ethical considerations and the roles of professional societies within these careers.

Objective

Students will be able to:

  • Explore different computer science careers and opportunities
  • Explain the ethical and social implications of computing systems
  • Explain the role of professional societies in establishing industry standards
Description

This lesson is a summative assessment of the unit’s learning objectives.

Objective

Assess student achievement of the learning goals of the unit

Description

In this lesson, students will explore the fundamental concepts and benefits of cloud computing. They will research its history, understand its real-world applications, and analyze the impact of cloud technology on various industries.

Objective

Students will be able to:

  • Define cloud computing and explain how it works
  • Identify key benefits and challenges associated with cloud computing
  • Research and present the history of cloud computing
  • Analyze real-world applications of cloud computing
Description

Through exploration and research activities, students will explore the history of computer science.

Objective

Students will be able to:

  • Synthesize research on the history of cloud computing
  • Create a visual timeline based on their research
Description

In this lesson, students will explore the different cloud deployment models: Public, Private, Hybrid, and Community. They will examine the advantages, disadvantages, and use cases of each model through readings, interactive activities, and discussions.

Objective

Students will be able to:

  • Define and differentiate between Public, Private, Hybrid, and Community cloud deployment models
  • Identify the benefits and drawbacks of each cloud deployment model
  • Analyze real-world scenarios and determine the most suitable cloud deployment model for each case
Description

In this lesson, students explore the Internet of Things and how these devices impact the world around us.

Objective

Students will be able to:

  • Explain the history of the Internet of Things
  • Explain how the Internet of Things impacts our day-to-day lives
Description

In this lesson, students review content with a multiple-choice question Unit Quiz.

Objective

Students will be able to:

  • Demonstrate their understanding of cloud technology topics
Description

In this lesson, students will learn what is meant by cybersecurity and explore a few news worthy cyber attacks. They will also discuss the Internet of Things and the increase in connected devices.

Cybersecurity is the protection of computer systems, networks, and data from digital attacks. Increased connectivity via the Internet of Things and reliance on computer devices to send and store data makes users more vulnerable to cyber attacks.

Objective

Students will be able to:

  • Define cybersecurity
  • Describe how the Internet of Things makes people more vulnerable to cyber attacks
  • Reflect on recent cyber attacks and identify the financial and societal impact of the attack
Description

In this lesson, students will learn and examine recent cyber attacks. Cyber attacks result in financial loss, lowered trust, disruption of important services, and more. There is a growing need for cybersecurity experts, and careers in the field are lucrative with high-impact.

Objective

Students will be able to:

  • Evaluate recent cyber attacks and understand the negative consequences of these attacks
  • Understand career opportunities in the field of cybersecurity
Description

In this lesson, students will learn about The CIA Triad. The CIA Triad is a widely-accepted security measure that should be guaranteed in every secure system. It stands for Confidentiality, Integrity, and Availability.

  • Confidentiality is the protection of information from people who are not authorized to view it.
  • Integrity aims at ensuring that information is protected from unauthorized or unintentional alteration.
  • Availability is the assurance that systems and data are accessible by authorized users when and where needed.
Objective

Students will be able to:

  • Identify what the CIA triad is and how it relates to cybersecurity
  • Identify which part of the CIA triad has been broken in a given scenario
Description

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.

Objective

Students will be able to:

  • Describe how creating user accounts and permissions enhances security
  • Define system hardening explain the importance of establishing baseline security, including deciding rules around authentication and authorization
  • Explain the importance of performing security audits
Description

In this lesson, students complete a summative assessment of the unit’s learning objectives.

Objective

Students will be able to:

  • Prove their knowledge of basic cybersecurity concepts and its impacts through a multiple choice quiz
Description

In this lesson, students will learn what data science is, what a data scientist does, and the different types of questions that can be asked about data. Students will learn that statistical questions include computations or finding a relationship or pattern.

Objective

Students will be able to:

  • Recognize and formulate statistical questions
  • Think critically about data and its sources
Description

In this lesson, students will learn how computers are used to collect, store, manipulate, and visualize data in order to answer questions and gain knowledge of the world.

Objective

Students will be able to examine and analyze the growing importance of data in technology and their lives

Enduring Understandings

This lesson builds toward the following Enduring Understandings (EUs) and Learning Objectives (LOs). Students should understand that…

  • EU 3.1 People use computer programs to process information to gain insight and knowledge. (LO 3.1.1)
  • EU 3.2 Computing facilitates exploration and the discovery of connections in information. (LOs 3.2.1, 3.2.2)
Description

In this lesson, students will learn about the impact of visually representing data to make information easier to analyze and use.

Objective

Students will be able to:

  • Explain the importance of visually depicting data to make information easier to use and to understand trends and changes in information
Description

In this lesson, students learn how computers can be used to collect and store data. They learn best practices for interpreting data that is presented. Data visualizations can be very helpful in recognizing patterns and answering questions, but can also be used to mislead if skewed or full of bias.

Objective

Students will be able to:

  • Understand how computers collect and store data
  • Analyze data interpretation by learning ways in which data can be skewed
  • How to think meta-cognitively about the data being represented
Description

In this lesson, students will explore the benefits of splitting websites into multiple files and multiple folders.

Description

In this lesson, students learn how to use the command line interface to interact with files and folders, and access information about computer processes.

Objective

Students will be able to:

  • Understand the connection between a command line (CLI) interface and a graphical line interface (GUI)
  • Use the appropriate command line tool for different tasks
Description

In this lesson, students will learn about different CLI commands and tools that will provide network information. Students will also take a look at network connection logs to determine the legitimacy of specific login attempts.

Objective

Students will be able to:

  • Explain and use appropriate network command line tools
  • Read and understand the basics of log reports
Description

In this lesson, students will be introduced to the basics of shell scripting. The lesson covers what shell scripting is and allows students to write basic scripts.

Objective

Students will be able to:

  • Write basic shell scripts
  • Explain when and where shell scripts can be used
Description

In this lesson, students will learn about various software development life cycle models and what tools can be used at different stages of the process.

Objective

Students will be able to:

  • Identify different software development models
  • Describe tools used during the software development life cycle
  • Explain how tools can help developers collaborate