# Bootstrap curriculum

Bootstrap is based at Brown University (USA), and builds on the research and development done there. Bootstrap curriculum consists of 4 research-based curricular computer science modules for grades 6-12. The 4 modules are Bootstrap:Algebra, Bootstrap:Reactive, Bootstrap:Data Science, and Bootstrap:Physics. Bootstrap materials reinforce core concepts from mainstream subjects like Math, Physics and more, enabling non-CS teachers to adopt the introductory materials while delivering rigorous and engaging computing content drawn from Computer Science classes at universities like Brown, WPI, and Northeastern.
Bootstrap:Algebra is the flagship curriculum for students ages 12–16, teaching algebraic concepts through coding. By the end of the curriculum, each student has designed their own video game using the concepts (e.g. - order of operations, linear functions, function composition, the pythagorean theorem, inequalities in the plane, piecewise functions, and more).
Their mission is to take students' excitement around gaming and drive it towards mathematics and computer programming. Beyond simply expanding students’ interest in math, Bootstrap:Algebra is among the first curricula to demonstrate real improvement in students' algebra performance.
Bootstrap:Algebra can be integrated into a standalone CS or mainstream math class, and aligns with national and state math standards. And since every child takes algebra - regardless of gender or background - Bootstrap is one of the largest providers of formal CS education to girls and underrepresented students nationwide.
The other modules model physics, data science, and sophisticated interactive programs, and can be integrated into Social Studies, Science, Math, Intro and even AP CS Principles courses. Teachers can mix-and-match content across various modules to fit their needs.
Bootstrap works with schools, districts and organizations across the United States, reaching hundreds of teachers and tens of thousands of students since its foundation in 2006. Workshops are also offered throughout the country, where teachers receive specialized training to deliver the class.

## Curriculum

The Bootstrap curriculum consists of four modules, Bootstrap:Algebra, Bootstrap:Reactive, Bootstrap:Data Science, and Bootstrap:Physics.

### Bootstrap:Algebra

Bootstrap:Algebra is a 25+ hour curricular module that applies mathematical concepts and rigorous programming principles to creating a simple videogame, and is aligned to National and State Standards for Mathematics, as well as the CSTA standards and K12CS frameworks. Students create a simple, 3-character game involving a player, a target and a danger. They design what each character looks like, and use algebraic concepts to detect collisions, handle keystrokes, and determine how they move and interact.
The primary concepts covered are:
Mathematics
* Word Problems
* Coordinate planes
* Order of Operations
* Variables
* Functions
* Input/Output Tables
* Domain and Range
* Function Composition
* Inequalities in the Plane
* Piecewise Functions
* Pythagorean Theorem
* Number lines
Programming
* Numbers, Strings and Images
* Defining Functions
* Unit Testing
* Boolean Logic
* Multi-input Functions
* Mixed-Type Functions

### Bootstrap:Reactive

In Bootstrap:Reactive, students learn more about what makes the game they designed in Bootstrap:Algebra work. Using data structures, students animate their games and devise a world structure to create a more sophisticated game.
The primary concepts covered are:
Mathematics
* Complex functional relationships
* Exploring Randomness
* Connections to Trigonometry
Programming
* Event-Driven Programming
* Data Structures
* Whole-Program Design
* Data Modeling
* Encapsulation
* Connections to recursion, lists, and algorithms

### Bootstrap:Data Science

In Bootstrap:Data Science, students form their own questions about the world around them, analyze data using multiple methods, and write a research paper about their findings. The module covers functions, looping and iteration, data visualization, linear regression, and much more. Social studies, science, and business teachers can utilize this module to help students make inferences from data. Math teachers can use this module to introduce foundational concepts in statistics, and it is aligned to the Data standards in CS Principles.
The primary concepts covered are:
Mathematics
* Functions
* Bar Charts & Pie Charts
* Central Tendency
* Mean, Median, & Mode
* Quartiles
* Frequency Tables
* Scatter Plots
* Line of Best Fit
* Linear Regression
* Correlation
Programming
* Basic datatypes (Numbers, Strings, Booleans, etc) and tabular data.
* Applying functions and methods
* Defining Functions over basic datatypes and whole tables
* Example-driven design
* Looping & Iteration
* Boolean Logic
* Data analysis and visualization

### Computational Modeling in Physics with Bootstrap

The Bootstrap:Physics module is developed in partnership with the American Association of Physics Teachers, the American Modeling Teachers Association, and STEM Teachers NYC. This module helps students understand basic physics concepts by incorporating computer programming as one of the key tools for building models of the physical world. The module is targeted at ninth grade, a year in which every student is expected to take science. The module is aligned to the Physics First course, allowing teachers to easily embed computational modeling in their physics classes.

## Toolset

Bootstrap:Algebra is taught in the teaching subsets of the Racket programming language, and Bootstrap:Reactive, Bootstrap: Data Science, and Bootstrap:Physics move students to Pyret. Both are functional languages, meaning they behave algebraically and so are well-suited to a math class. Bootstrap students primarily use cloud-based programming environments--WeScheme for Bootstrap:Algebra and code.pyret.org for Bootstrap:Reactive, Bootstraps:Data Science, and Bootstrap:Physics. Teachers may download DrRacket for offline use with either language.

## History

In 2005, Emmanuel Schanzer wrote the first version of the Bootstrap curriculum, adapting many of the ideas from the celebrated Program by Design curriculum for use in the context of an 8th grade math class, and inventing a number of teaching techniques (most notably the “Circles of Evaluation”). In 2006, Bootstrap was joined by Kathi Fisler and Shriram Krishnamurthi, both professors of computer science. It was piloted through a 10-week after-school program, but after its initial success, Bootstrap found its way into standard math classes all over the country.

## Reception

Over the last decade, Bootstrap has focused on research into learning outcomes, in contrast to other, advocacy focused efforts. In April 2015, Bootstrap received funding from Google in conjunction with CSNYC. In September 2015, Bootstrap was chosen as the math component of NYC's CS4All initiative. In October 2015, Bootstrap was awarded a $1.5 million grant from the National Science Foundation, which will help fine-tune the program and make it even more widespread in schools across the country. Code.org uses some of Bootstrap’s elements in their own curriculum, and engineers from Google, Apple, Facebook, TripAdvisor, and Cisco have all used Bootstrap to teach students in their communities.