Focus on Data '24-'25 (CS Discoveries)
Focus on Data is a collection of Computer Science Discoveries (CS Discoveries) units that empowers students to use data to solve problems. Students create authentic artifacts and engage with computer science as a medium for creativity, communication, problem-solving, and fun.
Interested in Teaching CS Discoveries? Professional development is available to help you get started teaching CS Discoveries. Click here to learn more about professional learning opportunities in your region or click here to learn more about a self-paced online option.
Problem Solving and Computing is a highly interactive and collaborative introduction to the field of computer science, as framed within the broader pursuit of solving problems. You’ll practice using a problem solving process to address a series of puzzles, challenges, and real world scenarios. Next, you’ll learn how computers input, output, store, and process information to help humans solve problems. The unit concludes with a project in which you design an application that helps solve a problem of your choosing.
Chapter 1 Overview
Description: This chapter guides students to develop and adopt a more formal structured problem solving process by reflecting on problems they have problems they have encountered, both in the classroom and everyday life. By working through a diverse set of problems, such as logic puzzles, engineering challenges, and planning a trip, students learn to identify different classes of problems, decompose large problems, and develop their personal problem solving skills.
Goals:
- Learn how to use a structured problem solving process and apply it to address various problems.
- Create a collaborative classroom environment where students view computer science as relevant, fun, and empowering.
Big Questions:
- What strategies and processes can I use to become a more effective problem solver?
Implementation Guidance for Problem Solving and Computing
- The first chapter of this unit should be completed before any other unit in CS Discoveries
- Alternate lessons are provided for some lessons in this unit, depending on your classroom context
- Additional resources are available within the Teacher Resources dropdown of the unit
Professional Development
If you are interested in teaching this course, we recommend completing the free Problem Solving and Computing Self-Paced Professional Development Module. The module is designed to take 2 hours to complete. No previous experience with coding is required.
Finished Teaching This Unit?
Answer this short survey to let the Code.org curriculum team know how the unit went.
The Data and Society unit is about the importance of using data to solve problems and it highlights how computers can help in this process. The first chapter explores different systems used to represent information in a computer and the challenges and tradeoffs posed by using them. In the second chapter, students learn how collections of data are used to solve problems, and how computers help to automate the steps of this process. In the final project, students gather their own data and use it to develop an automated solution to a problem.
Chapter 1 Overview
Description: This chapter focuses on data representation and its role in solving information problems. Students learn what a representation system needs to be useful, and how computers are able to represent different types of information using binary systems. For the chapter project, students represent their perfect day in a binary punch card and trade with classmates to decipher.
Goals:
- Understand the role of data and data representation in solving information problems.
- Explain the necessary components of any data representation scheme, as well as the particulars of binary and the common ways that various types of simple and complex data are represented in binary code.
Big Questions:
- Why is representation important in problem solving?
- What features does a representation system need to be useful?
- What is necessary to create usable binary representation systems?
- How can we combine systems together to get more complex information?
Chapter 2 Overview
Description: Students explore how data can be used to answer interesting questions and solve problems. Using a modified version of the general Problem Solving Process, students look at how computers and humans use data differently and the pros and cons of automating problem solving. After learning ways that computers use data in the real world, students choose their own problem and use data to address it.
Goals:
- Investigate and understand how humans and computers use data differently.
- Design and implement a data-based solution to a given problem and determine how the different aspects of the problem solving process could be automated.
Big Questions:
- How does data help us to solve problems?
- How do computers and humans use data differently?
- What parts of the data problem solving process can be automated?
- What kinds of problems do computers use data to solve in the real world?
Implementation Guidance for Data and Society
- You can view the Implementation Guide for more information about this unit
Finished Teaching This Unit?
Answer this short survey to let the Code.org curriculum team know how the unit went.
This unit is a hands-on introduction to developing a machine learning model with tabular data. Students explore how computers learn from data to make decisions, then develop machine learning projects around real-world data. The unit culminates in designing a machine learning app to solve a personally relevant problem.
Chapter 1 Overview
Description: Students learn the basics of machine learning and use a tool called AI Lab to create machine learning models that can be used in App Lab. The unit starts with an overview of machine learning and how computers can use patterns in data to make decisions and predictions. Then, students learn how to use AI Lab to train models from tabular data while exploring issues of bias. Lessons follow a repeating "unplugged - AI Lab - App Lab" pattern so students are continually exposed to the concepts and tools of machine learning. The chapter culminates in a project where students select from a set of real-world datasets to train a machine learning model and create an app.
Goals:
- Create a machine learning model in AI Lab to solve a problem, and use App Lab to create an app that uses their model.
- Understand how machine learning models make decisions from data
Big Questions:
- How does machine learning find patterns in data to make decisions?
- How can we avoid bias when training a machine learning model?
Chapter 2 Overview
Description: This chapter prepares students to be machine learning scientists to create an app that addresses an issue in their community. Students follow along with a fictional group of students as they define an issue, develop a survey to collect data, analyze their data in AI Lab, create a model card, and create an app to solve their problem. Then, in the final project, students repeat these same steps with an issue they care about in their community.
Goals:
- Create machine learning models in AI Lab from their own data and use App Lab to create an app that uses their model to solve problems in their community.
Big Questions:
- How can machine learning be used to solve problems in our community?
Implementation Guidance for the AI and Machine Learning Unit
- Guidance for how to support students in programming levels and differentiate tasks are available in the Programming Levels Guide and Differentiation Guide
- You can view the full Implementation Guide for more information about this unit
Professional Development
If you are interested in teaching this course, we recommend completing the free AI/ML Self-Paced Professional Development Module. The module is designed to take 2 hours to complete. No previous experience with coding or AI is assumed.
Finished Teaching This Unit?
Answer this short survey to let the Code.org curriculum team know how the unit went.
This unit contains the Post-Course Survey. This unit can be assigned after students complete their final unit in this course.