Project: Identifying and Correcting Common Java Errors and Misconceptions for Introductory Computer Science Students
Student Researchers: Ananya Misra, Megan Rutter, Maria Hristova
Advisor: Rebecca Mercuri, Ph.D.
Institution: Bryn Mawr College




Students taking an introductory course in Java often have similar misconceptions and make common mistakes. Some examples are: confusing the comparison operator (==) and the assignment operator (=), case sensitive variables, and off-by-1 errors in loop initialization of arrays. Despite extensive coverage of these misconceptions in textbooks and lectures, we have observed that these still persist when students actually sit down in front of the computer to program. For a beginning programmer, it is difficult to comprehend linguistic intricacies inherent in the design of languages like Java, leading to a range of common errors and misconceptions during the coding process.

Many introductory students encounter these mistakes while writing code and compiling it. Though certain compilers may point out some of these errors, often the error messages are so cryptic to the introductory students that they have a hard time simply identifying the error, let alone correcting it.

We are proposing a study that will identify common misconceptions and errors for students learning Java. While similar projects have been conducted for other programming languages, we have yet to find one for Java. Based on our findings we intend to build a software tool that would detect these errors and advise corrective action during the program entry process or before the compilation process.