Novices' Learning Barriers When Using Code Examples in Open-Ended Programming

Novices' Learning Barriers When Using Code Examples in Open-Ended Programming
复制标题

DOI:
10.1145/3430665.3456370
复制
发表时间:
2021-04
期刊:
Proceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V. 1
影响因子:
--
通讯作者:
Wengran Wang;Archit Kwatra;James Skripchuk;Neeloy Gomes;Alexandra Milliken;Chris Martens;T. Barnes;T. Price
Wengran Wang;Archit Kwatra;James Skripchuk;Neeloy Gomes;Alexandra Milliken;Chris Martens;T. Barnes;T. Price
中科院分区:
其他
文献类型:
--
作者:
Wengran Wang;Archit Kwatra;James Skripchuk;Neeloy Gomes;Alexandra Milliken;Chris Martens;T. Barnes;T. Price

文献摘要

相似文献

开放式编程通过允许学生解决真实问题并将编程与自己的利益联系起来,从而增加了学生的动力。但是,这样的开放式项目也充满挑战,因为它们通常鼓励学生探索新的编程功能,并尝试尝试以前从未学到的任务。代码示例是针对学生的有效学习材料,非常适合支持开放式编程。但是,几乎没有工作可以理解新手在开放式编程过程中如何学习示例,而这些工具的现实部​​署很少。在本文中,我们在开放式编程期间与代码示例进行互动时探讨了新手的学习障碍。我们部署了示例助手,该工具提供了用于搜索和使用的代码示例的工具,其中44名新手学生在介绍性编程课堂中,从事SNAP的开放式项目。我们发现了新手使用示例时遇到的三个高级障碍:决策,搜索和集成障碍。我们讨论这些障碍是如何出现的,并设计了解决这些障碍的机会。
Open-ended programming increases students' motivation by allowing them to solve authentic problems and connect programming to their own interests. However, such open-ended projects are also challenging, as they often encourage students to explore new programming features and attempt tasks that they have not learned before. Code examples are effective learning materials for students and are well-suited to supporting open-ended programming. However, there is little work to understand how novices learn with examples during open-ended programming, and few real-world deployments of such tools. In this paper, we explore novices' learning barriers when interacting with code examples during open-ended programming. We deployed Example Helper, a tool that offers galleries of code examples to search and use, with 44 novice students in an introductory programming classroom, working on an open-ended project in Snap. We found three high-level barriers that novices encountered when using examples: decision, search, and integration barriers. We discuss how these barriers arise and design opportunities to address them.