Asee peer logo

The Use of Computer Programming in a Secondary Mathematics Class

Download Paper |


2020 ASEE Virtual Annual Conference Content Access


Virtual On line

Publication Date

June 22, 2020

Start Date

June 22, 2020

End Date

June 26, 2021

Conference Session

Mathematics Division Technical Session 1: Best Practices in Engineering Math Education

Tagged Division


Page Count




Permanent URL

Download Count


Request a correction

Paper Authors


JaCoya Thompson Northwestern University Orcid 16x16

visit author page

JaCoya Thompson is a PhD student in the Computer Science Department at Northwestern University. She is a research assistant on the Computational Thinking in STEM project. Her research interests include the use of computational tools to support novice learner’s exploration of mathematics concepts in formal learning environments.

visit author page


Sally P.W. Wu Northwestern University Orcid 16x16

visit author page

Sally P.W. Wu is the Director of Curriculum Development at Northwestern University. Her work on the Computational Thinking in STEM project focuses on helping high school teachers integrate computer science principles into their mathematics or science classrooms. She received her PhD from University of Wisconsin-Madison in Educational Psychology-Learning Sciences. Her research broadly examines how to help students learn complex visual-spatial content in introductory STEM courses through the design of technology-enhanced interventions for the classroom. Her work thus far has investigated the effects of drawing, collaboration, reflection, and other active learning strategies in undergraduate chemistry and electrical engineering.

visit author page

author page

Jacob Mills Evanston Township High School Orcid 16x16

Download Paper |


This study explores the use of the Python programming language as part of a curricular unit in a high school advanced placement (AP) statistics class. We are interested in how students use programming for mathematics content. For this study, we co-designed a 5-lesson unit with a high school AP statistics teacher during a summer curriculum workshop. The unit was then implemented in two 43-minute class periods for 1 week (n = 53 students). Each student used their own laptop and worked in groups of 3-4. The unit focused on descriptive statistics, measures of central tendency, and measures of variability. In the unit, students used Python to display and describe quantitative data sets, compare distributions of data, explain how outliers affect measures of center and spread, and develop a deeper understanding of standard deviation. Each lesson built off of one another, allowing students to explore the programming language with little instruction. Using real world datasets, students used programming to make claims about measures of central tendency and variability after adjusting bin width of histograms or removing and adding data points to the dataset. Artifacts of student work were collected to analyze whether students understood the mathematics content covered. In addition, after each lesson, students were asked to summarize what they understood and discuss what they liked and disliked. This reflective measure helped us to analyze how students perceived programming as a method to understand mathematics. Our results suggested that students developed some mathematical thinking: they had an understanding of distributions in context (shape, center, spread, outliers) and could correctly identify what would happen to a distribution if a point is removed or added to the original dataset. Further, students reported that they learned content in the lessons but had difficulty understanding how the software worked. This led to some frustration when they would get minor syntax errors. However, they also reported that they enjoyed being exposed to manipulating a real-world data set and creating data visuals. Taken together, our findings suggest that integrating programming in a high school mathematics class allowed students to engage in manipulating and visualizing real-world data without interfering with students’ understanding of mathematics content. Because many students take mathematics in high school, this study has implications for preparation of future engineers, particularly how to broaden participation beyond students who take computer science classes. Further, findings provide practical implications on how to implement programming languages such as Python as a way to integrate technology into the teaching and understanding of mathematics content.

Thompson, J., & Wu, S. P., & Mills, J. (2020, June), The Use of Computer Programming in a Secondary Mathematics Class Paper presented at 2020 ASEE Virtual Annual Conference Content Access, Virtual On line . 10.18260/1-2--35378

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2020 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015