Abstract

Learning how to program is becoming essential in many disciplines. However, programming cannot be easily learned, especially by non-engineering students. It is challenging to conduct engineering education for non-engineering majored students. Therefore, it is important to teach non-engineering students to learn with efficient learning strategies. To discover an efficient learning strategy, we had 64 students practice programming with a simple learning management system and tracked all of their practice behaviors on multiple choice questions. The learning management system assigned one multiple choice question per day, but let students themselves decide their own practice frequencies. Students could also make unsynchronized communications by commenting on the questions. By analyzing their behavior patterns and other performance indicators, this paper compared the effect of two different practice strategies for multiple choice questions: distributed practice and massed practice. Our analysis found that students who adopted distributed practice significantly outperformed those who adopted massed practice on final exams (p=0.031). We further explored the possible reasons that led to this significant difference. Students who adopted distributed practice strategy tended to make higher percentage of first submission correctness, be more cautious while correcting errors, and be more constructive in posting question-related comments.

Highlights

  • Because programming is an essential skill for data analysis in domains such as economics, chemistry, biology and social science, mastering a programming language has become required for many college students [1]

  • This seems inconsistent with the well-known Learning Factors Analysis (LFA) [40] and the Performance Factor Analysis (PFA) [41], which quantifies a learning outcome using the number of correct attempts and incorrect attempts and claims that the learning outcome should increase with the number of practices

  • By setting the number of distinct multiple-choice questions and having students decide how to space their practice sessions, we found that students practiced with different frequencies

Read more

Summary

Introduction

Because programming is an essential skill for data analysis in domains such as economics, chemistry, biology and social science, mastering a programming language has become required for many college students [1]. To prevent students from becoming nervous about learning code before the start of instruction, in this study we explored how multiple-choice question (MCQ), which is the most common exercise type, can be used to help novices learn programming. MCQ has been used to help students learn programming in different ways. Yang et al [6] found that providing appropriate explanations for each alternative in MCQ can enhance students’ learning. We hypothesized that different practice strategies using the same set of multiple-choice questions might affect students’ learning. We assigned all of the practice questions through a customized learning management system, so that we could track students’ practice behaviors and discover efficient and inefficient practice strategies, if any existed. We observed whether students could learn more when their practice sessions were relatively distributed

Objectives
Methods
Findings
Discussion
Conclusion
Full Text
Paper version not known

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.