Analysis of Research in Programming Teaching Tools: An Initial Review

Abstract This paper describes preliminary results of research related to programming teaching tools. This study focuses on the key issues being highlighted in this research. Among the research questions of the study are: What are the important issues in programming teaching and learning research? What are the methods of the research? What kind of tools involved in programming teaching and learning? What is the level of programming involved? The study applies systematic review approach to 45 research papers derived from the ACM digital database, published between 2005 and 2011. The study found six issues related to programming teaching tools, and most of the issues concern on the techniques and methods used in teaching, learning and assessment. Regarding the level of programming involved, majority of the research focuses on introductory stage.

[1]  Robert McCartney,et al.  From Limen to Lumen: computing students in liminal spaces , 2007, ICER '07.

[2]  Erkki Sutinen,et al.  Visualizing programs with Jeliot 3 , 2004, AVI.

[3]  Camilo Jiménez,et al.  Developing programming skills by using interactive learning objects , 2009, ITiCSE '09.

[4]  Judithe Sheard,et al.  Analysis of research into the teaching and learning of programming , 2009, ICER '09.

[5]  Yan Zhang,et al.  A qualitative study of animation programming in the wild , 2010, ESEM '10.

[6]  Valentina Dagiene,et al.  Observations from semi-automatic testing of program codes in the high school student maturity exam , 2010, Koli Calling.

[7]  Susan H. Rodger,et al.  Engaging middle school teachers and students with alice in a diverse set of subjects , 2009, SIGCSE '09.

[8]  Margaret-Anne D. Storey,et al.  A comparison of communication technologies to support novice team programming , 2006, ICSE '06.

[9]  Ashraf Elnagar,et al.  JLearn-DG: Java learning system using dependence graphs , 2009, iiWAS.

[10]  Lauri Malmi,et al.  Jype - a program visualization and programming exercise tool for Python , 2010, SOFTVIS '10.

[11]  Alessio Gaspar,et al.  Self direction & constructivism in programming education , 2008, SIGITE '08.

[12]  Ma. Mercedes T. Rodrigo,et al.  Predicting at-risk novice Java programmers through the analysis of online protocols , 2011, ICER.

[13]  Cinnamon Hillyard,et al.  Game-themed instructional modules: a video case study , 2010, FDG.

[14]  Tony Clear,et al.  An introduction to program comprehension for computer science educators , 2010, ITiCSE-WGR '10.

[15]  Petri Ihantola,et al.  Review of recent systems for automatic assessment of programming assignments , 2010, Koli Calling.

[16]  Beth Simon,et al.  PeerWise: exploring conflicting efficacy studies , 2011, ICER.

[17]  Quintin I. Cutts,et al.  Computing as the 4th "R": a general education approach to computing education , 2011, ICER.

[18]  Helen Nissenbaum,et al.  Values at play: design tradeoffs in socially-oriented game design , 2005, CHI.

[19]  Carsten Schulte,et al.  Attitudes towards computer science-computing experiences as a starting point and barrier to computer science , 2007, ICER '07.

[20]  Lauri Malmi,et al.  A survey of literature on the teaching of introductory programming , 2007, ACM SIGCSE Bull..

[21]  Caitlin Kelleher,et al.  Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers , 2005, CSUR.

[22]  Carsten Schulte,et al.  Block Model: an educational model of program comprehension as a tool for a scholarly approach to teaching , 2008, ICER '08.

[23]  Angela Carbone,et al.  Eight years of computing education papers at NACCQ , 2008 .

[24]  Ana Paula Ambrosio,et al.  Evaluating the impact of PBL and tablet PCs in an algorithms and computer programming course , 2010, SIGCSE.

[25]  Richard James,et al.  Suggestions for graduated exposure to programming concepts using fading worked examples , 2007, ICER '07.

[26]  Cen Li,et al.  Intelligent tutoring system for CS-I and II laboratory , 2006, ACM-SE 44.

[27]  Jill Denner,et al.  Computer games created by middle school girls: Can they be used to measure understanding of computer science concepts? , 2012, Comput. Educ..

[28]  Wolfram Luther,et al.  Algorithm visualization using concept keyboards , 2005, SoftVis '05.

[29]  Martin C. Carlisle,et al.  Tools for teaching introductory programming: what works? , 2006, SIGCSE '06.

[30]  Mordechai Ben-Ari,et al.  Learning computer science concepts with Scratch , 2013, Comput. Sci. Educ..

[31]  Lauri Malmi,et al.  Why students drop out CS1 course? , 2006, ICER '06.

[32]  Georgios Fesakis,et al.  Influence of the familiarization with "scratch" on future teachers' opinions and attitudes about programming and ICT in education , 2009, ITiCSE.

[33]  Koo Ah Choo,et al.  Multimedia learning object to build cognitive understanding in learning introductory programming , 2009, MoMM.

[34]  Lauri Malmi,et al.  CS minors in a CS1 course , 2008, ICER '08.

[35]  Naveed Arshad,et al.  Teaching programming and problem solving to CS2 students using think-alouds , 2009, SIGCSE '09.

[36]  Carsten Schulte,et al.  What do teachers teach in introductory programming? , 2006, ICER '06.