Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Kyle J. Harms is active.

Publication


Featured researches published by Kyle J. Harms.


interaction design and children | 2013

Automatically generating tutorials to enable middle school children to learn programming independently

Kyle J. Harms; Dennis Cosgrove; Shannon Gray; Caitlin Kelleher

Enabling middle school children to learn from code shared on the internet may provide computer science learning opportunities to those who would not otherwise have them. We augmented a programming environment designed for middle school children to automatically generate tutorials from code snippets in order to help users learn new programming skills. In our new system, users select code snippets from a program shared on the web and then complete an automatically generated tutorial in order to re-create that snippet within their own program. To evaluate the potential learning gains from our generated tutorials, we conducted a between-subjects study in which we evaluated the performance of children introduced to new programming constructs through automatically generated tutorials. Participants who used the automatically generated tutorials performed 64% better on a near transfer task compared to participants without generated tutorials.


symposium on visual languages and human-centric computing | 2015

Enabling independent learning of programming concepts through programming completion puzzles

Kyle J. Harms; Noah Rowlett; Caitlin Kelleher

Many novice programming environments use puzzle-like approaches to help novice programmers acquire new programming skills independently. Yet, little is known about 1) how puzzles can support effective learning of programming skills and 2) how learning programming using a puzzle-based approach compares to more a traditional tutorial style approach. We conducted a pair of studies to explore these two questions. First, we report lessons learned on the design of programming completion puzzles, their interface within a novice programming environment, and the design of a puzzle curriculum drawn from our first, formative study. We then report on a second study that compared the learning effectiveness of programming puzzles and tutorials. The results suggest that puzzles are a promising approach for introducing programming concepts within novice programming environments. Puzzle users performed 26% better on transfer tasks compared to tutorial users, while taking 23% less time to complete the learning materials.


interaction design and children | 2012

Designing a community to support long-term interest in programming for middle school children

Kyle J. Harms; Jordana H. Kerr; Michelle Ichinco; Mark Santolucito; Alexis Chuck; Terian Koscik; Mary Chou; Caitlin Kelleher

To facilitate long-term engagement in programming for middle school children, we developed the Looking Glass Community. The Community includes both a website and integrated access to community resources within the novice programming environment, Looking Glass. We discuss how we designed the Community to support engagement by providing a source for initial ideas, support for learning new skills, positive feedback, and role models.


interaction design and children | 2011

Improving learning transfer from stencils-based tutorials

Kyle J. Harms; Jordana H. Kerr; Caitlin Kelleher

To support children learning to use new software applications independently, tutorial systems should prevent errors and ensure that users are able to transfer tutorial skills to a new context effectively. In this paper, we describe the formative development and evaluation of on-request stencils, an interaction technique that both prevents children from making errors within a tutorial and significantly improves their ability to transfer tutorial skills to a related task. Using on-request stencils, users can attempt a task independently. If they encounter difficulty, users can request step by step tutorial overlays to guide them through the current task. In a study comparing tutorial performance, task performance, and attitudes, we found that users of on-request stencils successfully completed 47% more transfer tasks than users of persistent stencils. There were no significant differences between the two groups in tutorial performance or attitudes towards the software system.


symposium on visual languages and human-centric computing | 2013

Applying cognitive load theory to generate effective programming tutorials

Kyle J. Harms

In this paper, the author describe our prior work on how automatically generating walk-through tutorials helps novice programmers learn new programming concepts found in unfamiliar code. Following this, the author introduce his proposal to use Cognitive Load Theory to improve the effectiveness of learning new programming concepts from generated tutorials. To accomplish this, the author propose automatically generating personalized tutorials based on a users programming expertise.


technical symposium on computer science education | 2014

Blocks-based programming languages: simplifying programming for different audiences with different goals

Paul Medlock-Walton; Kyle J. Harms; Eileen Kraemer; Karen Brennan; Daniel Wendel

In this panel, the moderator, who has expertise in computer science education and HCI, but with no ties to any particular blocks-based programming environment in particular, will provide a brief overview of the state of the field of visual programming for education generally, and blocks-based visual programming environments and the languages that go with them more specifically. As early as in 1986, blocks-based visual programming environments were conceived of and built as research studies (Glinert & Smith, 1986)). However, the last five to ten years have seen a proliferation of these kinds of programming languages. Scratch and Alice are probably the most widely known of these programming interfaces, but there are many. Among these, many share common traits: the goal of simplifying the syntax of programming, a related goal of making what were once difficult tasks relegated to arcane languages simpler, and often another related goal of opening computer programming up to a wider audience than has recently traditionally engaged in programming activities. The moderator will be followed by four panelists, representing four blocks-based programming environments that share these affordances, but which more interestingly, are distinct in a number of ways. These panelists, experts in MIT App Inventor, Scratch, Looking Glass, and ToolBlox, respectively, will each have ten minutes to discuss their respective language and the possibility-space it aims to simplify. Specifically, each language will be examined from three perspectives: the reason the tool was created, the target audience for the tool, and how the tool engages those users in computational thinking and learning to program. The moderator will then lead a substantive discussion with the audience and panel members on the material presented.


symposium on visual languages and human-centric computing | 2014

Towards a programming environment that adaptively suggests examples and corresponding puzzles based on programmer skill

Kyle J. Harms

Programmers often re-appropriate code or new programming skills they find in unfamiliar code within their own programs [1], [2]. This process enables programmers, including novices, to acquire new programming knowledge while working on their own programming projects. Unfortunately, novice programmers often have difficultly understanding and integrating existing code into their own programs [3], thereby limiting acquisition of new programming concepts found within unfamiliar code. In this paper, I describe my prior work attempting to decrease the burden of learning new programming concepts found in unfamiliar code with automatically generated programming tutorials. Later, I introduce my proposal to create a programming environment that adapts to the skill level of the programmer while introducing programming concepts found within existing code by suggesting example code alongside programming puzzles.


Archive | 2017

Code Puzzle Completion Problems in Support of Learning Programming Independently

Kyle J. Harms

OF THE DISSERTATION Code Puzzle Completion Problems in Support of Learning Programming Independently by Kyle J. Harms Doctor of Philosophy in Computer Science Washington University in St. Louis, 2017 Professor Caitlin Kelleher, Chair Middle school children often lack access to formal educational opportunities to learn computer programming. One way to help these children may be to provide tools that enable them to learn programming on their own independently. However, in order for these tools to be effective they must help learners acquire programming knowledge and also be motivating in independent contexts. I explore the design space of using motivating code puzzles with a method known to support independent learning: completion problems. Through this exploration, I developed code puzzle completion problems and an introductory curriculum introducing novice programmers to basic programming constructs. Through several evaluations, I demonstrate that code puzzle completion problems can motivate learners to acquire new programming knowledge independently. Specifically, I found that code puzzle completion problems are more effective and efficient for learning programming constructs independently compared to tutorials. Puzzle users performed 33% better on transfer tasks compared to tutorial users, while taking 21% less time to complete the learning materials. Additionally, I present evidence that children are motivated to choose to use the code puzzles because they find the experience enjoyable, challenging, and valuable towards developing their programming skills. Given the choice between using tutorials and puzzles, only 10% of participants opted to use more tutorials than puzzles. Further, 80% of participants also stated a preference towards the puzzles because they simply enjoyed the experience of using puzzles more than


2015 IEEE Blocks and Beyond Workshop (Blocks and Beyond) | 2015

The impact of distractors in programming completion puzzles on novice programmers position statement

Kyle J. Harms

Our previous work has demonstrated that programming completion puzzles enable novice programmers to acquire new programming skills [1]. As shown in Fig. 1, programming completion puzzles ask users to reassemble a block-based programs statements into the correct order. Users use the available blocks in the puzzle statement bin (Fig. 1-A) and place them into the correct order in the puzzle workspace (Fig. 1-B). In our previous work we only included blocks that were part of the actual puzzles solution [1]. However other puzzle-like programming systems often include distractor statements as part of the users experience [2]. In the context of programming puzzles, distractors are extra blocks or statements that are not part of a puzzles solution. We wondered what impact distractor statements might have in programming completion puzzles on novice programmers? Do distractors also help facilitate learning programming skills when used in programming completion puzzles?


symposium on visual languages and human-centric computing | 2016

Learning programming from tutorials and code puzzles: Children's perceptions of value

Kyle J. Harms; Evan Balzuweit; Jason Chen; Caitlin Kelleher

Collaboration


Dive into the Kyle J. Harms's collaboration.

Top Co-Authors

Avatar

Caitlin Kelleher

Washington University in St. Louis

View shared research outputs
Top Co-Authors

Avatar

Jason Chen

Washington University in St. Louis

View shared research outputs
Top Co-Authors

Avatar

Jordana H. Kerr

Washington University in St. Louis

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Daniel Wendel

Massachusetts Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Dennis Cosgrove

Carnegie Mellon University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Evan Balzuweit

Washington University in St. Louis

View shared research outputs
Top Co-Authors

Avatar

Karen Brennan

Massachusetts Institute of Technology

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge