International Journal of Machine Learning and Applications · 2012 · 18 citations · 6 references
EducationComputer ScienceTeachingLanguage EducationLanguage PedagogyProgramming LanguagesLanguage LearningLanguage TeachingMisconception AnalysisMisconception DetectionComputer Science CurriculumComputer Science PedagogyEducational Programming LanguagesMisconception-based InstructionProgram ComprehensionProgramming CompetenceProgramming ConceptsProgramming Instruction
Despite the fact that programming is at the heart of computer science, it is argued that even at its simplest level it is a difficult subject to teach and learn. For any new learner programming concepts are abstract and confusing. As teaching programming continues to be a daunting task, this article revisits common challenges inherent in teaching computer programming to novices. Further, Memory Transfer Language (MTL) as used to teach programming is introduced and demonstrated. Different kinds of misconceptions in programming and their associated bugs are analysed. An experiment using MTL to teach programming was carried out, using error-counts in examination scripts from two groups of students, one instructed using MTL and the other through the conventional approach. Results indicated a highly significant statistical difference (p = 0) between the two groups, showing that MTL can help novices avoid common programming misconceptions and reduce the errors they make. This shows that if programming is taught using MTL, comprehension is enhanced.
6
Conditions of Learning in Novice Programmers
David N. Perkins, Chris Hancock, Renée Hobbs et al. · Journal of Educational Computing Research · 1986 · 254 citations
Education, Instruction, Teaching +11