3 research outputs found

    2007-2011

    Get PDF

    The Holistic Course Delivery: A Novel Pedagogy for Collegiate Introductory Computer Programming

    Get PDF
    Title from PDF of title page viewed August 20, 2020Dissertation advisor: Rita BargerVitaIncludes bibliographical references (pages 184-197)Thesis (Ph.D.)--School of Education and School of Computing and Engineering. University of Missouri--Kansas City, 2020For many years there have not been enough computer science graduates to fill open positions. One of the chief barriers to the formation of computer science graduates is that many students are unsuccessful in the introductory programming course. Unsuccessful students often change their major field of study or terminate their collegiate studies. A chief concern is therefore to minimize the DFW rate (grade of D or F, or withdrawal from a course). Student characteristics have been extensively studied to explain, and sometimes justify, the high DFW rate in introductory programming courses. Pairs programming, flipped classrooms, choice of programming language, and a variety of other modifications and novel methods have been devised in efforts to reduce the DFW rate. The collective conclusion has been that there is no silver bullet that has been demonstrated to be universally effective. This quasi-experimental study incorporates four learning theories that inform the design and delivery of an introductory programming course: Neo-Piagetian Theory, Cognitive Apprenticeship Theory, Cognitive Load Theory, and Self-Efficacy Theory. The objective was iv to (1) design a course from the top-down that integrates several pedagogical elements in a holistic way, and (2) deliver it to a group of nascent programming students. The Holistic Course Delivery was implemented in three class sections of an introductory programming course at a midwestern university in which a total of 96 students were enrolled. The Holistic Course Delivery had a significantly lower DFW rate compared to both historic DFW rates at the institution and established international norms and students indicated they felt prepared for subsequent computer science coursework.Introduction -- Literature review -- Methodology -- Analysis -- Discussion -- Appendix A. Pre-course survey -- Appendix B. Pre-course test & post-course test -- Appendix C. Post-course survey Appendix D. Homework reflection -- Appendix E. Homework assignments -- Appendix F. Coding sprints -- Appendix G. Final exam programming questions -- Appendix H. Qualitative interview questions -- Appendix I. Curriculum outline -- Appendix J. Syllabu

    A study of novice programmer performance and programming pedagogy.

    Get PDF
    Identifying and mitigating the difficulties experienced by novice programmers is an active area of research that has embraced a number of research areas. The aim of this research was to perform a holistic study into the causes of poor performance in novice programmers and to develop teaching approaches to mitigate them. A grounded action methodology was adopted to enable the primary concepts of programming cognitive psychology and their relationships to be established, in a systematic and formal manner. To further investigate novice programmer behaviour, two sub-studies were conducted into programming performance and ability. The first sub-study was a novel application of the FP-Tree algorithm to determine if novice programmers demonstrated predictable patterns of behaviour. This was the first study to data mine programming behavioural characteristics rather than the learner’s background information such as age and gender. Using the algorithm, patterns of behaviour were generated and associated with the students’ ability. No patterns of behaviour were identified and it was not possible to predict student results using this method. This suggests that novice programmers demonstrate no set patterns of programming behaviour that can be used determine their ability, although problem solving was found to be an important characteristic. Therefore, there was no evidence that performance could be improved by adopting pedagogies to promote simple changes in programming behaviour beyond the provision of specific problem solving instruction. A second sub-study was conducted using Raven’s Matrices which determined that cognitive psychology, specifically working memory, played an important role in novice programmer ability. The implication was that programming pedagogies must take into consideration the cognitive psychology of programming and the cognitive load imposed on learners. Abstracted Construct Instruction was developed based on these findings and forms a new pedagogy for teaching programming that promotes the recall of abstract patterns while reducing the cognitive demands associated with developing code. Cognitive load is determined by the student’s ability to ignore irrelevant surface features of the written problem and to cross-reference between the problem domain and their mental program model. The former is dealt with by producing tersely written exercises to eliminate distractors, while for the latter the teaching of problem solving should be delayed until the student’s program model is formed. While this does delay the development of problem solving skills, the problem solving abilities of students taught using this pedagogy were found to be comparable with students taught using a more traditional approach. Furthermore, monitoring students’ understanding of these patterns enabled micromanagement of the learning process, and hence explanations were provided for novice behaviour such as difficulties using arrays, inert knowledge and “code thrashing”. For teaching more complex problem solving, scaffolding of practice was investigated through a program framework that could be developed in stages by the students. However, personalising the level of scaffolding required was complicated and found to be difficult to achieve in practice. In both cases, these new teaching approaches evolved as part of a grounded theory study and a clear progression of teaching practice was demonstrated with appropriate evaluation at each stage in accordance with action researc
    corecore