Title :
Work in progress: Exploring programming anti-patterns as emphasis on creativity in the teaching of computer programming: Programming anti-patterns as emphasis on creativity
Author :
Ferreira, Deller James
Author_Institution :
Inf. Inst., Fed. Univ. of Goias, Goiania, Brazil
Abstract :
Computer programming is a creative activity. However, while computer scientists have devoted their work to solving complex problems and developing new technology, few have written on the creative process behind their innovations. This work explores programming anti-patterns as beneficial detour to the creation of good programming designs. Examples of programming anti-patterns are: failure to combine linear traversal and a flag variable to search a given value in a uni-dimensional array; to draw wrong analogies from natural language; not consider uncommon cases in a solution; to overlook minor parts of the problem; to assume that a program construct will work in the same manner in all situations; not be flexible in understanding new code, not being aware that there are many different right solutions to a problem. In this research, the teacher of introductory programming course promotes discussions among students involving the bad and good features of program anti-patterns, when there are programming anti-patterns code examples and discussions based on situations having the potential to prevent programming anti-patterns, when programming anti-patterns describe a lack of programming skill. An initial experiment showed improvements in creation of good program designs by students, when the teacher boosts discussions exploring program anti-pattens.
Keywords :
computer science education; educational courses; programming; teaching; code understanding; computer programming; introductory programming course; natural language; program construct; programming anti-pattern; programming design; programming skill; teaching; Collaboration; Computers; Conferences; Education; Programming profession; collaborative programming; creative programmer; programming anti-pattern;
Conference_Titel :
Frontiers in Education Conference (FIE), 2012
Conference_Location :
Seattle, WA
Print_ISBN :
978-1-4673-1353-7
Electronic_ISBN :
0190-5848
DOI :
10.1109/FIE.2012.6462227