Bootstrap curriculum
Bootstrap is a 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 is among the first curricula to demonstrate real improvement in students' algebra performance.[1][2]
Bootstrap works with schools, districts and organizations across the country, reaching hundreds of teachers and tens of thousands of students[3][4] since its foundation in 2006. Workshops are also offered throughout the country, where teachers receive specialized training to deliver the class.
Contents
Curriculum
The Bootstrap program is broken up into two modules, Bootstrap:1 and Bootstrap:2.
Bootstrap:1
Bootstrap:1 offers an introduction to the math and programming skills required to create a simple 3-character game involving a player, an obstacle and a goal.
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:2
In Bootstrap:2, students learn more about what makes the game they designed in Bootstrap 1 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
Toolset
Bootstrap:1 is taught in the teaching subsets of the Racket programming language, and Bootstrap:2 moves 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:1 and code.pyret.org for Bootstrap:2. Teachers may download DrRacket for offline use with either language.[5]
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 Profs. Kathi Fisler and Shriram Krishnamurthi. 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.[6]
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.[7] In September 2015, Bootstrap was chosen as the math component of NYC's CS4All initiative.[8] 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.[9] 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.
References
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
External links
- Bootstrap
- Teaching Algebra through Functional Programming:An Analysis of the Bootstrap Curriculum, BYU Master's thesis on bootstrap curriculum