Smartphones, Studio-Based Learning, and Scaffolding: Helping Novices Learn to Program

This article describes how smartphones, studio-based learning, and extensive scaffolding were used in combination in the teaching of a freshman Introduction to Programming course. To reduce cognitive overload, a phased approach was followed in introducing programming concepts and development environments, beginning with the visual programming environment Scratch and culminating with Java development for Android smartphones. Studio-based learning, a pedagogical approach long established in the fields of architecture and design education, was used as the basis for a collaborative social constructivist—and constructionist—approach to learning. Smartphones offered students the potential to develop applications for a context that is both immediate and clearly relevant to the ways in which they utilize and interact with technology. The research was carried out over three full academic years and included 53 student participants. An exploratory case study methodology was used to investigate the efficacy of the approach in helping to overcome the barriers faced by novice programmers. The findings indicate that the approach has merit. The students were motivated and engaged by the learning experience and were able to develop sophisticated applications that incorporated images, sound, arrays, and event handling. There is evidence that aspects of the studio-based learning approach, such as the scope that it gave students to innovate and the open feedback during student presentations, provided a learning environment that was motivating. Overall, the combination of smartphones, studio-based learning, and appropriate scaffolding offers an effective way to teach introductory programming courses.

[1]  L. Giddings Research Design: Qualitative, Quantitative, and Mixed Methods Approaches, 2d ed , 2005 .

[2]  Michael J. O'Grady,et al.  Practical Problem-Based Learning in Computing Education , 2012, TOCE.

[3]  J. Sweller,et al.  Cognitive Load Theory and Complex Learning: Recent Developments and Future Directions , 2005 .

[4]  David Wolber,et al.  Novel approaches to CS 0 with app inventor for android , 2010, SIGCSE.

[5]  Mark Guzdial,et al.  Computers for communication, not calculation: media as a motivation and context for learning , 2004, 37th Annual Hawaii International Conference on System Sciences, 2004. Proceedings of the.

[6]  Qusay H. Mahmoud,et al.  An academic kit for integrating mobile devices into the CS curriculum , 2009, ITiCSE '09.

[7]  R. Yin,et al.  Case Study Research: Design and Methods (4th ed. , 2009 .

[8]  Hernane Borges de Barros Pereira,et al.  Learning computer programming: Implementing a fractal in a Turing Machine , 2010, Comput. Educ..

[9]  C. Hmelo‐Silver Problem-Based Learning: What and How Do Students Learn? , 2004 .

[10]  KurkovskyStan Engaging students through mobile game development , 2009 .

[11]  Leon E. Winslow,et al.  Programming pedagogy—a psychological overview , 1996, SGCS.

[12]  Stanislav Kurkovsky,et al.  Can mobile game development foster student interest in computer science? , 2009, 2009 International IEEE Consumer Electronics Society's Games Innovations Conference.

[13]  Christopher D. Hundhausen,et al.  Does studio-based instruction work in CS 1?: an empirical comparison with a traditional approach , 2010, SIGCSE.

[14]  Mark Guzdial,et al.  Motivation and nonmajors in computer science: identifying discrete audiences for introductory courses , 2005, IEEE Transactions on Education.

[15]  L. S. Vygotskiĭ,et al.  Mind in society : the development of higher psychological processes , 1978 .

[16]  M. Patton Qualitative research and evaluation methods , 1980 .

[17]  P. Abrami,et al.  Students' Evaluations of University Teaching: Research Findings, Methodological Issues, and Directions for Future Research , 1987 .

[18]  P. A. Cohen Student Ratings of Instruction and Student Achievement: A Meta-analysis of Multisection Validity Studies , 1981 .

[19]  R. Yin Case Study Research: Design and Methods , 1984 .

[20]  John W. Creswell,et al.  Student study guide to accompany Creswell's Educational research : planning, conducting, and evaluating quantitative and qualitative research /prepared by Vicki L. Plano Clark , 2008 .

[21]  Lloyd P. Rieber,et al.  The Studio experience at the University of Georgia: an example of constructionist learning for adults , 2010 .

[22]  Richard M. Felder,et al.  The Many Faces of Inductive Teaching and Learning , 2007 .

[23]  Hewijin Christine Jiau,et al.  Enhancing Self-Motivation in Learning Programming Using Game-Based Simulation and Metrics , 2009, IEEE Transactions on Education.

[24]  N. Hari Narayanan,et al.  Studio-based learning in CS2: an experience report , 2008, ACM-SE 46.

[25]  N. Hari Narayanan,et al.  Implementing studio-based learning in CS2 , 2010, SIGCSE.

[26]  Q.H. Mahmoud,et al.  Integrating mobile devices into the computer science curriculum , 2008, 2008 38th Annual Frontiers in Education Conference.

[27]  David J. Malan,et al.  Scratch for budding computer scientists , 2007, SIGCSE.

[28]  John A. Centra How Universities Evaluate Faculty Performance: A Survey of Department Heads. , 1977 .

[29]  J. Bruner Actual minds, possible worlds , 1985 .

[30]  Christopher D. Hundhausen,et al.  Talking about code: Integrating pedagogical code reviews into early computing courses , 2013, TOCE.

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

[32]  R. Mayer,et al.  Interactive Multimodal Learning Environments , 2007 .

[33]  Margot Brereton,et al.  An innovative design and studio-based CS degree , 2001, SIGCSE '01.

[34]  J. Centra,et al.  Student Perceptions of Learning and Instructional Effectiveness in College Courses , 2005 .

[35]  Stanislav Kurkovsky,et al.  Engaging students through mobile game development , 2009, SIGCSE '09.

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

[37]  Eric Rosenbaum,et al.  Scratch: programming for all , 2009, Commun. ACM.

[38]  Caitlin Kelleher,et al.  Using storytelling to motivate programming , 2007, CACM.

[39]  Kenneth A. Feldman,et al.  The association between student ratings of specific instructional dimensions and student achievement: Refining and extending the synthesis of data from multisection validity studies , 1989 .

[40]  Miguel Nussbaum,et al.  Comparative study of netbooks and tablet PCs for fostering face-to-face collaborative learning , 2011, Comput. Hum. Behav..

[41]  Christopher D. Hundhausen,et al.  Integrating pedagogical code reviews into a CS 1 course: an empirical study , 2009, SIGCSE '09.

[42]  Christopher D. Hundhausen,et al.  Exploring studio-based instructional models for computing education , 2008, SIGCSE '08.

[43]  V. Judson Harward,et al.  Studio-based learning via wireless notebooks: a case of a Java programming course , 2007, Int. J. Mob. Learn. Organisation.

[44]  P. Frey A two-dimensional analysis of student ratings of instruction , 1978 .

[45]  F. Paas,et al.  Cognitive Architecture and Instructional Design , 1998 .

[46]  Frederico T. Fonseca,et al.  Teaching Object-Oriented Software Engineering through Problem-Based Learning in the Context of Game Design , 2008, 2008 21st Conference on Software Engineering Education and Training.