Handling Heterogeneity in Programming Courses for Freshmen

One of the biggest challenges of the computer science department at our university is handling the enormous heterogeneity of freshmen concerning both their previous programming abilities and their learning behaviors due to their biographical and social background. In this paper, we present the design and evaluation of a preliminary programming course based on the teaching method of Mastery Learning that is particularly suited for groups of students characterized by considerable diversity. Trained peer tutors closely guide the participants through a step-by-step programming exercise. We tested the method in several courses that ran for two and a half days four weeks before the start of lectures. We collected data from two different surveys(N = 200 and N = 300, respectively). First, we quantified the considerable differences concerning the prior experience in programming of the participants. Second, we succeeded to show that the outcome of our method is independent from different sensory preferences and different computer-usage behaviors of the students. Third, the results of the survey demonstrate that our method is suited to increasing the self-perception of programming ability. This helps freshmen to overcome initial self-doubts when beginning their CS studies.

[1]  Richard E. Clark,et al.  Why Minimal Guidance During Instruction Does Not Work: An Analysis of the Failure of Constructivist, Discovery, Problem-Based, Experiential, and Inquiry-Based Teaching , 2006 .

[2]  Peter Hubwieser,et al.  The gap between knowledge and ability , 2012, Koli Calling.

[3]  C. Dweck,et al.  A social-cognitive approach to motivation and personality , 1988 .

[4]  Rachel Cardell-Oliver,et al.  Motivating all our students? , 2011, ITiCSE-WGR '11.

[5]  Larry L. Peterson,et al.  Reasoning about naming systems , 1993, TOPL.

[6]  António José Mendes,et al.  A study on students' behaviours and attitudes towards learning to program , 2012, ITiCSE '12.

[7]  Peter Hubwieser,et al.  Teaching Algorithmic Thinking Using Haptic Models for Visually Impaired Students , 2013, 2013 Learning and Teaching in Computing and Engineering.

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

[9]  Ronan G. Reilly,et al.  The Influence of Motivation and Comfort-Level on Learning to Program , 2005, PPIG.

[10]  Student,et al.  THE PROBABLE ERROR OF A MEAN , 1908 .

[11]  Joseph A. Cottam,et al.  Tutoring for retention , 2011, SIGCSE.

[12]  Colleen M. Lewis,et al.  Deciding to major in computer science: a grounded theory of students' self-assessment of ability , 2011, ICER.

[13]  Carsten Schulte,et al.  Computer science in context: pathways to computer science , 2007 .

[14]  B. Bloom,et al.  Human Characteristics and School Learning , 1979 .

[15]  Neil D. Fleming,et al.  Not Another Inventory, Rather a Catalyst for Reflection , 1992 .

[16]  Jens Bennedsen,et al.  Failure rates in introductory programming , 2007, SGCS.

[17]  Stuart A. Hansen,et al.  Analyzing programming projects , 2009, SIGCSE '09.

[18]  F. Keller "Good-bye, teacher...". , 1968, Journal of applied behavior analysis.

[19]  Chen-Lin C. Kulik,et al.  Effectiveness of Mastery Learning Programs: A Meta-Analysis , 1990 .

[20]  편 국가인권위원회 장애인권리협약 해설집 = Convention on the Rights of Persons with Disabilities , 2007 .

[21]  C. Washburne,et al.  Educational Measurement as a Key to Individual Instruction and Promotions , 1922 .

[22]  Carsten Schulte,et al.  Empirical comparison of objects-first and objects-later , 2009, ICER '09.

[23]  Tuba Yilmaz,et al.  Student perceptions of computer science: a retention study comparing graduating seniors with cs leavers , 2008, SIGCSE '08.