The Error that is the Error Message

Comparing information expectations of novice programmers against the information in Python error messages

More Info
expand_more

Abstract

Learning to program is not a easy task, as has become evident from the abundance of research papers concerning the subject. One of the learning barriers of learning a new programming language is understanding their error message, as coding errors have to be resolved before the programmer can run the code or add new functionality to the program. If the error message does not give the (kind of) information the programmer needs or uses terminology the programmer does not understand, it becomes a lot harder to fix the error it is reporting.
This thesis aimed to enhance the understanding about why the error messages of the Python programming language fail to be understood by novice programmers. An experiment was performed where novice programmers constructed how they thought the error messages should look like when encountering errors often made by novice programmers. This thesis also introduces the Error Message Component Framework, a framework which can be used to determine the different components of information an error message contains and the structure of these components. This framework was used to compare the original error message to the custom error messages created by the participants of the experiment, to investigate if the original message matched the novice programmer's information expectations.
This thesis concludes that even though some errors are often made by novice programmers, their resulting error messages may not targeted towards this group based on the terms used in these messages, the component of information these messages contains and the lack of precision of the information.