A Preliminary Study on Teaching Programming Through Physics: Development of a C# Code Library on Classical Mechanics

L. Gulinao, E. Marmol, G. Rayo, A. Tiu, and S. Chu, (34-45)

 

Abstract

Current programming pedagogy mostly revolves around the concept of syntax first. This can result in students lacking the ability to form detailed mental models on programming. A problem-solving-first method is suggested, wherein students can “imagine” solutions before writing one. Consequently, this makes classical mechanics a possible education medium for programming, as classical mechanics is a neurologically intuitive science. However, abstraction is needed to allow students to write code that solves classical mechanics problems. One possible solution is through code libraries. Currently, there are few classical mechanics code libraries available; thus, the researchers created a code library implementing concepts such as gravity, thrust, and torque. Grade 12 senior high school students were invited to participate in the study. Due to the work requirement of the study and restrictions caused by the COVID-19 pandemic, only a few people responded to the invitation. The participants were asked to construct programs to solve given classical mechanics problems using the provided code library. Through their insights and submitted source code, a qualitative approach was used to test the hypothesis. Results mostly support the suitability of classical mechanics as programming pedagogy; however, due to the limited participant pool, further reinforcement of the idea may be done by reimplementing the research on a larger scale of participants and a more thorough experimental design involving a control group to concretely ascertain if exposure to the code library improves one’s programming abilities.