Learning to program = learning to construct mechanisms and explanations
Communications of the ACM
The case for case studies of programming problems
Communications of the ACM
Design patterns: an essential component of CS curricula
SIGCSE '98 Proceedings of the twenty-ninth SIGCSE technical symposium on Computer science education
SIGCSE '99 The proceedings of the thirtieth SIGCSE technical symposium on Computer science education
The greedy trap and learning from mistakes
SIGCSE '03 Proceedings of the 34th SIGCSE technical symposium on Computer science education
The novice programmers' syndrome of design-by-keyword
Proceedings of the 8th annual conference on Innovation and technology in computer science education
Algorithmic patterns and the case of the sliding delta
ACM SIGCSE Bulletin
Pattern-oriented instruction and its influence on problem decomposition and solution construction
Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education
A goal/plan analysis of buggy pascal programs
Human-Computer Interaction
Transfer, cognitive load, and program design difficulties
ISSEP'11 Proceedings of the 5th international conference on Informatics in Schools: situation, Evolution and Perspectives
Hi-index | 0.00 |
Design patterns are essential building blocks of computer programs. In the design of programs, patterns are selected and composed together. Pattern compositions may be of various kinds, among them: concatenation, inclusion (of one pattern in another), and interleaving (of two or more patterns). Pattern interleaving is the subtler composition. Yet, it is already required in early programming (e.g., the number of appearances of the max in a list, which requires the interleaving of counting and max computation). In this paper, we illuminate novices' struggle with interleaved compositions. We present an empirical study of high-school CS students, which reveals several kinds of novice difficulties, including: "bypassing" of interleaved composition by concatenation, improper application of patterns, and design of malformed interleaved structures. We offer some didactic suggestions to teachers for coping with these difficulties.