String formatting considered harmful for novice programmers

In Java, System.out.printf and String.format consume a specialised kind of string commonly known as a format string. In our study of first-year students at the Ateneo de Manila University, we discovered that format strings present a substantial challenge for novice programmers. Focusing on their fir...

Full description

Saved in:
Bibliographic Details
Main Authors: Hughes, Michael C, Jadud, Matthew C, Rodrigo, Ma. Mercedes T
Format: text
Published: Archīum Ateneo 2010
Subjects:
Online Access:https://archium.ateneo.edu/discs-faculty-pubs/133
https://www.tandfonline.com/doi/abs/10.1080/08993408.2010.507335
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Ateneo De Manila University
Description
Summary:In Java, System.out.printf and String.format consume a specialised kind of string commonly known as a format string. In our study of first-year students at the Ateneo de Manila University, we discovered that format strings present a substantial challenge for novice programmers. Focusing on their first laboratory we found that 8% of all the compilation errors and 100% of the exceptional, run-time behaviour they encountered were due to the improper construction of format strings. Format strings are a language unto themselves embedded within Java, and they are difficult for novice programmers to master when learning to program. In this article, we present exemplars of students' problematic interactions with the Java compiler and run-time environment when dealing with format strings, discuss these interactions, and recommend possible instructional interventions based on our observations.