Theories on learning show that formative feedback that is immediate, specific, corrective, and positive is essential to improve novice students' motivation and learning. However, most prior work on programming fee...
详细信息
Theories on learning show that formative feedback that is immediate, specific, corrective, and positive is essential to improve novice students' motivation and learning. However, most prior work on programming feedback focuses on highlighting student's mistakes, or detecting failed test cases after they submit a solution. In this article, we present our adaptive immediate feedback (AIF) system, which uses a hybrid data-driven feedback generation algorithm to provide students with information on their progress, code correctness, and potential errors, as well as encouragement in the middle of programming. We also present an empirical controlled study using the AIF system across several programming tasks in a CS0 classroom. Our results show that the AIF system improved students' performance, and the proportion of students who fully completed the programming assignments, indicating increased persistence. Our results suggest that the AIF system has potential to scalably support students by giving them real-time formative feedback and the encouragement they need to complete assignments.
Modern industrial robots can work alongside human workers and coordinate with other robots. This means they can perform complex tasks, but doing so requires complex programming. Therefore, robots are typically program...
详细信息
Modern industrial robots can work alongside human workers and coordinate with other robots. This means they can perform complex tasks, but doing so requires complex programming. Therefore, robots are typically programmed by experts, but there are not enough to meet the growing demand for robots. To reduce the need for experts, researchers have tried to make robot programming accessible to factory workers without programming experience. However, none of that previous work supports coordinating multiple robot arms that work on the same task. In this paper we present four block-based programming language designs that enable end-users to program two-armed robots. We analyze the benefits and trade-offs of each design on expressiveness and user cognition, and evaluate the designs based on a survey of 273 professional participants of whom 110 had no previous programming experience. We further present an interactive experiment based on a prototype implementation of the design we deem best. This experiment confirmed that novices can successfully use our prototype to complete realistic robotics tasks. This work contributes to making coordinated programming of robots accessible to end-users. It further explores how visual programming elements can make traditionally challenging programming tasks more beginner-friendly.
In this article, we investigate human-centered artificial intelligence (HCAI) in an educational context where pupils used block-based programming in small groups to solve tasks given by the teacher. We used a design-b...
详细信息
In this article, we investigate human-centered artificial intelligence (HCAI) in an educational context where pupils used block-based programming in small groups to solve tasks given by the teacher. We used a design-based research approach in which we, together with the teachers, created a maker space for explorative science learning and organised teaching interventions wherein the pupils met online three hours a week for 16 weeks for an entire school year. Due to COVID-19, data were collected through Zoom, with collaborative learning situations captured through screen sharing and online communication using webcams. We employed three data analysis techniques: interaction analysis, visual artifact analysis, and thematic analysis. We developed an analytical framework for integration using thematic coding that combined concepts from computer-supported collaborative learning (CSCL) and domai-oriented design environments. We report the following findings: 1) Three types of rules between design units were identified with visual artifact analysis: latent, generic, and domai-specific rules;2) two types of CSCL artifacts (technology and discussions) were intertwined and developed in parallel, along with a computer-based scaffolding scenario that offloads domai-specific scaffolding from humans to computers.
block-based programming effectively supports processes based on the syntactic and conceptual knowledge of programming;however, its effectiveness is limited to processes that require strategic knowledge. To resolve the...
详细信息
ISBN:
(纸本)9798400700965
block-based programming effectively supports processes based on the syntactic and conceptual knowledge of programming;however, its effectiveness is limited to processes that require strategic knowledge. To resolve the problem, we present Sketchnote, which visualizes the problem decomposition process with sketching and multi-layered structure in block-based programming. Sketchnote allows programmers to sketch in the block attachment slots before inserting the actual code blocks. The multi-layer structure of Sketchnote also visualizes the hierarchy of code while extending the brick metaphor of block-based programming.
Existing programming environments pose a challenge for students with upper-body motor impairments. This is because these environments require a level of dexterity that these students do not possess. For example, text-...
详细信息
ISBN:
(纸本)9783031050398;9783031050381
Existing programming environments pose a challenge for students with upper-body motor impairments. This is because these environments require a level of dexterity that these students do not possess. For example, text-basedprogramming environments require a lot of typing using a keyboard, while block-based programming environments require the use of a pointing device to drag and drop blocks of code. In our research, we aim to make the block-based programming environment blockly, accessible to students with upper-body motor impairment, by adding speech as an alternative form of input. This voice-enabled version of blockly will reduce the need for the use of a mouse or keyboard, hence making it more accessible. Our system consists of the original blockly application, a speech recognition API, predefined voice commands, and a custom function. A preliminary study has been conducted. The results are encouraging, but they also revealed the need to broaden the target population, which was originally people with cerebral palsy, to people with any type of upper-body motor disability. Additionally, the study showed the need to redesign some voice commands. A prototype of the system has been implemented. As a next step, two additional studies will be conducted using this prototype, a usability study, and an A/B test.
Background and Context block-based programming is a popular approach to teaching introductory programming. block-based programming often works in the context of microworlds, where students solve specific puzzles. It i...
详细信息
Background and Context block-based programming is a popular approach to teaching introductory programming. block-based programming often works in the context of microworlds, where students solve specific puzzles. It is used, for example, within the Hour of Code event, which targets millions of students. Objective To identify design guidelines and data analysis methods for the iterative development of microworlds and puzzles for block-based programming. Method To achieve the objective, we provide a review of the literature, discussion of specific examples of microworlds and puzzles, and an analysis of extensive student data. Findings A wide range of programming microworlds share common elements. The analysis of data is useful for iterative improvement of microworlds and puzzles, serving several specific purposes. Implications Provided design guidelines and analysis methods can be directly used for the development and improvement of tools for introductory programming.
The visual and mouse-centric nature of block-based programming environments generally make them inaccessible and challenging to use by users with visual impairments who rely on assistive technologies to interact with ...
详细信息
ISBN:
(纸本)9781450392587
The visual and mouse-centric nature of block-based programming environments generally make them inaccessible and challenging to use by users with visual impairments who rely on assistive technologies to interact with computers. This prevents these users from participating in programming activities where these systems are used. This paper presents a prototype of an accessible block-based programming library called Accessible blockly that allows users to create and navigate block-based code using a screen reader and a keyboard. This is an attempt to make the famous blockly library accessible through a screen reader and keyboard. In this paper, we present the design and implementation of Accessible blockly. We also discuss the evaluation of the library for block-based code navigation in a study with 12 blind programmers. Analysis of the study results shows that Accessible blockly efectively aids users with reading and understanding block-based code. Participants found Accessible blockly easy to use and less frustrating for navigating block-based programs. The participants also expressed enthusiasm and interest in using the keyboard and screen reader to navigate block-based code and in the accessibility of block-based programming.
The use of Smart Homes has grown considerably in the past decade. Enabling end-users to develop rules to program their homes and devices is very important to empower them. Several studies have analysed trigger-action ...
详细信息
The use of Smart Homes has grown considerably in the past decade. Enabling end-users to develop rules to program their homes and devices is very important to empower them. Several studies have analysed trigger-action programming tools, primarily using form-based and data-flow approaches for programming interfaces. This study evaluated the usability of a block-based tool for end-user development of rules to control smart homes and compared the difficulties encountered by non-programmers and programmers. Evaluations involved 10 programmers and 10 non-programmers in Brazil. A thematic analysis of 247 problem instances (80 from programmers and 167 from non-programmers) yielded the following themes, with problems related to condition blocks, action blocks, states and actions, time-related tasks, block configuration and personalisation, information architecture, programming logic, conceptual model of smart homes, simulator and debugging, help and technical problems. Despite most non-programmers being able to experiment with blocks, their task completion rates were significantly lower than programmers. The analysis showed aspects where block-based programming can enhance the use for non-programmers. They also confirmed interaction aspects revealed by previous studies using form-based and data-flow approaches that also occur with block-based programming to design smart home rules, with important contributions to improve end-user development tools for smart homes.
block-based programming environments have been widely used to introduce K-12 students to coding. To guide students effectively, instructors and platform owners often need to understand behaviors like how students solv...
详细信息
The COVID 19 pandemic has affected global education. In Thailand, all educational institutions temporarily closed to prevent the spread of COVID-19. However, teaching and learning still need to be continued. It is nec...
详细信息
The COVID 19 pandemic has affected global education. In Thailand, all educational institutions temporarily closed to prevent the spread of COVID-19. However, teaching and learning still need to be continued. It is necessary to switch the learning activities to online learning. In this study, we designed online learning activities for developing computational thinking (CT) of students and carried out an experiment with 90 participants (first-year students enrolled in a Bachelor of Education Program in educational technology and communications at King Mongkut's University of Technology Thonburi). At the beginning of the experiment, all participants were asked to take a CT test to measure their CT. The test is consistent with other CT tests under validation. During the sessions, all participants were taught by Thunkable. After the experiment, they took the CT test again. The results show that by improving CT through block-based programming projects, students' performance improved significantly. In conclusion, block-based programming and working in pairs are combinations that can potentially help students to perform better, in turn affecting their performance in projects.
暂无评论