Computer Science > Computers and Society
[Submitted on 21 Aug 2020]
Title:Using Video Game Development to Motivate Program Design and Algebra Among Inner-City High School Students
View PDFAbstract:Introducing inner-city high school students to program design presents unique challenges. The typical assumptions of an introductory programming course, like students understand what variables and functions are, may not be safe. Therefore, asking students to define functions as part of the program design process may be an overwhelming task. Many students do not understand that a function is an abstraction over similar expressions and that parameters represent the differences among these expressions. This articles presents a novel approach to teaching program design to high school students while simultaneously reinforcing high school algebra. The approach is based on a design recipe to help students develop the abstractions that lead to functions. Using a bottom-up approach, students are taught how to abstract over similar expressions. They are then taught how to use high school algebra concepts, like compound functions and function composition, to also design functions. In addition, the article also presents empirical data collected from students to measure their reaction to the course. For the students in the course, the empirical data suggests that high school algebra concepts are successfully reinforced and that students feel they become better problem solvers, find programming intellectually stimulating, and walk away with an interest in programming.
Submission history
From: EPTCS [view email] [via EPTCS proxy][v1] Fri, 21 Aug 2020 01:22:35 UTC (29 KB)
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.