Get 20M+ Full-Text Papers For Less Than $1.50/day. Start a 14-Day Trial for You or Your Team.

Learn More →

Novice Java Programming Mistakes

Novice Java Programming Mistakes Teaching is the process of conveying knowledge and skills to learners. It involves preventing misunderstandings or correcting misconceptions that learners have acquired. Thus, effective teaching relies on solid knowledge of the discipline, but also a good grasp of where learners are likely to trip up or misunderstand. In programming, there is much opportunity for misunderstanding, and the penalties are harsh: failing to produce the correct syntax for a program, for example, can completely prevent any progress in learning how to program. Because programming is inherently computer-based, we have an opportunity to automatically observe programming behaviour -- more closely even than an educator in the room at the time. By observing students programming behaviour, and surveying educators, we can ask: do educators have an accurate understanding of the mistakes that students are likely to make? In this study, we combined two years of the Blackbox dataset (with more than 900 thousand users and almost 100 million compilation events) with a survey of 76 educators to investigate which mistakes students make while learning to program Java, and whether the educators could make an accurate estimate of which mistakes were most common. We find that educators estimates do not agree with one another or the student data, and discuss the implications of these results. http://www.deepdyve.com/assets/images/DeepDyve-Logo-lg.png ACM Transactions on Computing Education (TOCE) Association for Computing Machinery

Loading next page...
 
/lp/association-for-computing-machinery/novice-java-programming-mistakes-SJzWjElua7
Publisher
Association for Computing Machinery
Copyright
Copyright © 2017 ACM
ISSN
1946-6226
eISSN
1946-6226
DOI
10.1145/2994154
Publisher site
See Article on Publisher Site

Abstract

Teaching is the process of conveying knowledge and skills to learners. It involves preventing misunderstandings or correcting misconceptions that learners have acquired. Thus, effective teaching relies on solid knowledge of the discipline, but also a good grasp of where learners are likely to trip up or misunderstand. In programming, there is much opportunity for misunderstanding, and the penalties are harsh: failing to produce the correct syntax for a program, for example, can completely prevent any progress in learning how to program. Because programming is inherently computer-based, we have an opportunity to automatically observe programming behaviour -- more closely even than an educator in the room at the time. By observing students programming behaviour, and surveying educators, we can ask: do educators have an accurate understanding of the mistakes that students are likely to make? In this study, we combined two years of the Blackbox dataset (with more than 900 thousand users and almost 100 million compilation events) with a survey of 76 educators to investigate which mistakes students make while learning to program Java, and whether the educators could make an accurate estimate of which mistakes were most common. We find that educators estimates do not agree with one another or the student data, and discuss the implications of these results.

Journal

ACM Transactions on Computing Education (TOCE)Association for Computing Machinery

Published: May 3, 2017

Keywords: Programming mistakes

References