My Program Is Correct but It Doesn't Run: a Review of Novice Programming and a Study of an Introductory Programming Paper

Abstract

1.0 Introduction 2.0 Learning to program 2.1 Overview 2.1.1 Experts vs. novices 2.1.2 Knowledge vs. strategies 2.1.3 Comprehension vs. generation 2.1.4 Procedural vs. object–oriented 2.1.5 Other 2.2 Novice programmers 2.2.1 The task 2.2.2 Mental models and processes 2.2.3 Novice capabilities and behavior 2.2.4 Kinds of novice 2.3 Novice learning and teaching in CS1 2.3.1 Goals and progress 2.3.2 Course design and teaching methods 2.3.3 Alternative methods and curricula 2.4 Summary 3.0 A study of an introductory programming paper 3.1 The design of COMP103 3.1.1 Context 3.1.2 Lectures and knowledge 3.1.3 Laboratory sessions and strategy 3.1.4 Summary 3.2 The study 3.2.1 Background 3.2.2 Method 3.3 Results 3.3.1 Lab based problem tallies 3.3.2 Trends 3.3.3 Other observations 4.0 Discussion 4.1 Kinds of novice 4.2 Knowledge, strategies, and effective teaching and learning 4.3 A framework 5.0 Summary References Appendix A: Demonstrators’ checklist Appendix B: Results for typical laboratory sessions

Cite this paper

@inproceedings{Robins2001MyPI, title={My Program Is Correct but It Doesn't Run: a Review of Novice Programming and a Study of an Introductory Programming Paper}, author={Anthony V. Robins and Nathan Rountree and Janet Rountree}, year={2001} }