Abstract

STEM fields, such as physics, increasingly rely on complex programs to analyse large datasets, thus teaching students the required programming skills is an important component of all STEM curricula. Since undergraduate students often have no prior coding experience, they are reliant on error messages as the primary diagnostic tool to identify and correct coding mistakes. However, such messages are notoriously cryptic and often undecipherable for novice programmers, presenting a significant learning hurdle that leads to frustration, discouragement, and ultimately a loss of confidence. Addressing this, we developed a tool to enhance error messages for the popular Python language, translating them into plain English to empower students to resolve the underlying error independently. We used a mixed methods approach to study the tool’s effect on first-year physics students undertaking an introductory programming course. We find a broadly similar distribution of the most common error types to previous studies in other contexts. Our results show a statistically significant reduction in negative student emotions, such as frustration and anxiety, with the mean self-reported intensity of these emotions reducing by (73 ± 12)% and (55 ± 18)%, respectively. This led to a corresponding decrease in discouragement and an increase in student confidence. We conclude that enhanced error messages provide an effective way to alleviate negative student emotions and promote confidence. However, further longer-term investigations are necessary to confirm if this translates into improved learning outcomes. To our knowledge, this is the first physics-specific investigation of the effect of Python error message enhancement on student learning.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.