Lesson Plans

Computing Needs All Voices

Students learn about a diverse group of programmers through a short film and a gallery walk of our Pioneers in Computing and Mathematics poster series, then consider the problem solving advantages that diverse teams foster.

Introduction to Data Science

Students learn about Categorical and Quantitative data, are introduced to Tables by way of the Animals Dataset, and consider what questions can and cannot be answered with available data.

Simple Data Types

Students begin to program, explorings how Numbers, Strings, Booleans and operations on those data types work in this programming language.


Students learn how to apply Functions in the programming environment and interpret the information contained in Contracts: Name, Domain and Range. Image-producing functions provide an engaging context for this exploration.

Bar and Pie Charts

Students learn to generate and compare pie charts & bar charts, explore other plotting & display functions, and (optionally) design an infographic.

The Data Cycle

Students are introduced to the Data Cycle, a four-step scaffold for getting an answer from a dataset - and then generating the next question! Students learn to identify - and ask - statistical questions, by comparing and contrasting them with other kinds of questions.

Probability, Inference, and Sample Size

Students explore sampling and probability as a mechanism for detecting patterns. After exploring this in a binary system (flipping a coin), they consider the role of sampling as it applies to relationships in a dataset.

Choosing Your Dataset

Students practice making a variety of chart types and then begin to investigate a real world dataset, which they will continue to work with for the remainder of the course.


Students are introduced to Histograms by comparing them to bar charts, learning to construct them by hand and in the programming environment.

Visualizing the “Shape” of Data

Students explore the concept of "shape", using histograms to determine whether a dataset has skewness, and what the direction of the skewness means. They apply this knowledge to the Animals Dataset, and then to their own.

Measures of Center

Students are introduced to mean, median and mode(s) and consider which of these measures of center best describes various quantitative data.

Box Plots

Students are introduced to box plots, learn to evaluate the spread of a quantitative column, and deepen their perspective on shape by matching box plots to histogram.

Standard Deviation

Students learn how standard deviation serves as Data Scientists' most common measure of "spread": how far all the values in a dataset tend to be from their mean. When we looked at box plots, we visualized spread based on range and interquartile range. Now we’ll return to histograms and picture the spread in terms of standard deviation.

Scatter Plots

Students investigate scatter plots as a method of visualizing the relationship between two quantitative variables. In the programming environment, points on the scatter plot can be labelled with a third variable!

Ethics, Privacy, and Bias

Students consider ethical issues and privacy in the context of data science.

Collecting Data

Students learn about the importance of careful data collection, by confronting a "dirty" dataset. They then design a simple survey of their own, gather their data, and import it into Pyret

Row and Column Lookups

Students learn how to extract individual rows from a table, and columns from a row.

Functions Make Life Easier!

Students discover that they can make their own functions.

Functions: Contracts, Examples & Definitions

Students learn to connect function descriptions across three representations: Contracts (a mapping between Domain and Range), Examples (a list of discrete inputs and outputs), and Definitions (symbolic).

Custom Scatter Plots

Custom scatter plots expose deeper insight into subgroups within a population, motivating students to define their own functions and deepen their analysis.

Table Methods

Students learn about table methods, which allow them to order, filter, and build columns to extend the animals table.

Solving Word Problems with the Design Recipe

Students are introduced to the Design Recipe as a scaffold for breaking down word problems into smaller steps. They apply the Design Recipe to fixing a file that launches a rocket!

Method Chaining

Students learn how to chain Methods together, and define more sophisticated subsets.

Defining Table Functions

Students use the Design Recipe to define operations on tables, developing a structured approach to answering questions by transforming tables.

Grouped Samples

Students practice creating grouped samples (non-random subsets) and think about why it might sometimes be useful to answer questions about a dataset through the lens of one group or another.


Students deepen their understanding of scatter plots, learning to describe and interpret direction and strength of linear relationships.

Linear Regression

Students compute the “line of best fit” using the function for linear regression, and summarize linear relationships in a dataset.

Checking Your Work

Students consider the concept of trust and testing — how do we know if a particular analysis is trustworthy?

Threats to Validity

Students consider possible threats to the validity of their analysis.

Student Workbooks

Sometimes, the best place for students to get real thinking done is away from the keyboard! Our lesson plans are tightly integrated with a detailed Student Workbook, allowing for paper-and-pencil practice and activities that don’t require a computer.

Of course, we understand that printing them yourself can be expensive! Click Here to download a free PDF of the workbook.

Teaching Remotely?

If you’re teaching remotely, we’ve assembed an Implementation Notes page that makes specific recommendations for in-person v. remote instruction.

Other Resources

Of course, there’s more to a curriculum than software and lesson plans! We also provide a number of resources to educators, including standards alignment, a complete student workbook, an answer key for the programming exercises and a forum where they can ask questions and share ideas.

These materials were developed partly through support of the National Science Foundation, (awards 1042210, 1535276, 1648684, and 1738598). CCbadge Bootstrap by the Bootstrap Community is licensed under a Creative Commons 4.0 Unported License. This license does not grant permission to run training or professional development. Offering training or professional development with materials substantially derived from Bootstrap must be approved in writing by a Bootstrap Director. Permissions beyond the scope of this license, such as to run training, may be available by contacting