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.
Description
Novices' Learning Barriers When Using Code Examples in Open-Ended Programming | Proceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V. 1
%0 Conference Paper
%1 Wang_2021
%A Wang, Wengran
%A Kwatra, Archit
%A Skripchuk, James
%A Gomes, Neeloy
%A Milliken, Alexandra
%A Martens, Chris
%A Barnes, Tiffany
%A Price, Thomas
%B Proceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V. 1
%D 2021
%I ACM
%K examples iticse2021 progtutor worked-out-examples
%P 394-400
%R 10.1145/3430665.3456370
%T Novices\textquotesingle Learning Barriers When Using Code Examples in Open-Ended Programming
%U https://doi.org/10.1145%2F3430665.3456370
%X 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.
@inproceedings{Wang_2021,
abstract = {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.},
added-at = {2023-06-05T04:44:26.000+0200},
author = {Wang, Wengran and Kwatra, Archit and Skripchuk, James and Gomes, Neeloy and Milliken, Alexandra and Martens, Chris and Barnes, Tiffany and Price, Thomas},
biburl = {https://www.bibsonomy.org/bibtex/226de7230eb3154863d0e91f3dfbda35e/brusilovsky},
booktitle = {Proceedings of the 26th {ACM} Conference on Innovation and Technology in Computer Science Education V. 1},
description = {Novices' Learning Barriers When Using Code Examples in Open-Ended Programming | Proceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V. 1},
doi = {10.1145/3430665.3456370},
interhash = {67a24e4ebdf94cd901d02f488e8215c0},
intrahash = {26de7230eb3154863d0e91f3dfbda35e},
keywords = {examples iticse2021 progtutor worked-out-examples},
month = jun,
pages = {394-400},
publisher = {{ACM}},
timestamp = {2023-06-05T04:44:26.000+0200},
title = {Novices{\textquotesingle} Learning Barriers When Using Code Examples in Open-Ended Programming},
url = {https://doi.org/10.1145%2F3430665.3456370},
year = 2021
}