Learning Programming Patterns Using Games

There is still no pedagogy to teach programming that stands out significantly from others and no consensus on what is the best way for learning programming. There is still a need to develop new teaching methods for learning in introductory programming courses. This paper presents a pedagogic approach in support of creativity in programming and the results of a successful case study, where the teacher facilitates the learning of programming patterns by means of students' involvement in game creation. The results show an improvement in motivation and learning introductory programming, when we combine programming patterns with games using concrete materials.

[1]  B. Haberman,et al.  Teaching abstraction to novices: Pattern-based and ADT-based problem-solving processes , 2008, 2008 38th Annual Frontiers in Education Conference.

[2]  Mitchel Resnick,et al.  Engaging novices in programming, experimenting, and learning with data , 2014, Inroads.

[3]  Paul R. Calder,et al.  Patterns in Learning to Program - An Experiment? , 2004, ACE.

[4]  Elliot Soloway,et al.  PROUST: Knowledge-Based Program Understanding , 1984, IEEE Transactions on Software Engineering.

[5]  Bruria Haberman,et al.  Pattern-oriented instruction and its influence on problem decomposition and solution construction , 2007, ITiCSE.

[6]  Elliot Soloway,et al.  Learning to program = learning to construct mechanisms and explanations , 1986, CACM.

[7]  Jens Bennedsen,et al.  Abstraction ability as an indicator of success for learning computing science? , 2008, ICER '08.

[8]  Myint Swe Khine,et al.  An Analysis of Interaction and Participation Patterns in Online Community , 2006, J. Educ. Technol. Soc..

[9]  Saeed Dehnadi,et al.  A cognitive study of learning to program in introductory programming courses , 2009 .

[10]  Janet Rountree,et al.  Learning and Teaching Programming: A Review and Discussion , 2003, Comput. Sci. Educ..

[11]  J. Philip East,et al.  Pattern Based Programming Instruction , 1996 .

[12]  Kate Ehrlich,et al.  Empirical Studies of Programming Knowledge , 1984, IEEE Transactions on Software Engineering.

[13]  Mark Guzdial,et al.  Advice on teaching CS, and the learnability of programming languages , 2015, Commun. ACM.

[14]  Orna Muller Pattern oriented instruction and the enhancement of analogical reasoning , 2005, ICER '05.

[15]  Bruria Haberman,et al.  (An almost) pedagogical pattern for pattern-based problem-solving instruction , 2004, ITiCSE '04.

[16]  Filiz Kalelioglu,et al.  The Effects of Teaching Programming via Scratch on Problem Solving Skills: A Discussion from Learners' Perspective , 2014, Informatics Educ..

[17]  Marcia C. Linn,et al.  Patterns and pedagogy , 1999, SIGCSE '99.

[18]  Gwendolyn L. Kolfschoten,et al.  Cognitive learning efficiency through the use of design patterns in teaching , 2010, Comput. Educ..

[19]  Gérald Oster,et al.  A Teaching System to Learn Programming: the Programmer's Learning Machine , 2015, ITiCSE.

[20]  Murray Silverstein,et al.  A Pattern Language , 1977 .

[21]  Mitchel Resnick,et al.  Designing ScratchJr: support for early childhood learning through computer programming , 2013, IDC.