Ability to 'explain in plain english' linked to proficiency in computer-based programming

Ability to 'explain in plain english' linked to proficiency in computer-based programming
复制标题

“用简单的英语解释”的能力与计算机编程的熟练程度相关

DOI:
10.1145/2361276.2361299
复制
发表时间:
2012
影响因子:
1.3
通讯作者:
R. McCauley
R. McCauley
中科院分区:
教育学3区
文献类型:
--
作者:
Laurie Murphy;Sue Fitzgerald;R. Lister;R. McCauley

文献摘要

被引文献

相似文献

本研究探讨程式设计新手解释程式码片段的能力与他们编写程式码的能力之间的关系。结果显示,正确回答“用简单的英语解释”(EiPE)问题的能力与编写代码的能力之间存在很强的相关性,这表明在编写代码和解释代码时,有一些关于代码的推理方面是共同的。使用观察学习成果(SOLO)分类法对学生的解释进行分类。优秀的程序员更有可能阐明算法的关系方面。虽然早期的研究也发现了这种联系,但这些早期研究中的代码编写是在纸上完成的。这是第一个用手在电脑上完成写作部分的结果。我们的研究结果进一步证明了代码推理在解释代码和编写代码中都是常见的,这反过来又表明,明智地混合教授代码技能和代码解释技能可能会导致新手学习代码推理的更有效的过程。
This study investigates the relationship between novice programmers' ability to explain code segments and their ability to write code. Results show a strong correlation between ability to correctly answer 'explain in plain English' (EiPE) questions and ability to write code indicating that there are aspects of reasoning about code that are common to both writing code and explaining code. Student explanations were categorized using the Structure of the Observed Learning Outcome (SOLO) taxonomy. The better programmers were more likely to articulate relational aspects of the algorithms. While earlier work also found such a link, the code writing in those earlier studies was done on paper. This is the first such result where the writing component was done with 'hands on' a computer. Our results add further evidence for the existence of an aspect of reasoning about code that is common to both explaining code and writing code, which in turn suggests that a judicious mix of teaching both code skills and code explaining skills may lead to a more effective process by which novices learn to reason about code.