While block-based programming has successfully eliminated critical syntactic barriers to programming, it remains unclear how effectively it aids in overcoming semantic, logical, and pragmatic programming challenges th...
详细信息
ISBN:
(纸本)9798350376920;9798350366136
While block-based programming has successfully eliminated critical syntactic barriers to programming, it remains unclear how effectively it aids in overcoming semantic, logical, and pragmatic programming challenges that hinder computational thinking. These challenges are likely to far outweigh the syntactic ones. With the goal of creating a highly accessible programming tool for young students using mobile devices, we explored the concept of pragmatic prebugging to begin addressing these challenges. By pragmatic prebugging, we refer to proactive debugging tools designed to prevent logical errors. This article introduces *** as a Computational Thinking Tool with built-in pragmatic prebugging, enabling novice programmers to create games through a paradigm we call proxy-based programming. A small study exploring error rates found statistically significant performance improvements of proxy-based programming compared to block-based programming.
Integrated development environments (IDEs) are ubiquitous in software development. Despite their popularity, much of their designs are not based on empirical findings and have been virtually unchanged since their ince...
详细信息
ISBN:
(纸本)9781728108100
Integrated development environments (IDEs) are ubiquitous in software development. Despite their popularity, much of their designs are not based on empirical findings and have been virtually unchanged since their inception. More recently, researchers have proposed alternative IDE designs based on observational studies of developers and found promising benefits. However, many design decisions are still unsupported by empirical evidence. Towards designing an empirically-driven IDE, we performed an analysis on code size and screen space. First, we analyzed the size of code from 95 projects in 4 programming languages. Second, we calculated how much code can fit onscreen using various document arrangements in VS Code with common screen resolutions. We found (1) the length of code depends on the programming language, while the width of code is similar across languages and (2) the amount of code onscreen can be substantially increased by properly configuring the IDE and by using a high-resolution monitor.
Numerous approaches to pixel rewriting systems (PRSs) have been investigated since Furnas' Bitpict. VRule is a new pixel rewriting framework designed to support further investigation of new formalisms for end-user...
详细信息
ISBN:
(纸本)9781665445924
Numerous approaches to pixel rewriting systems (PRSs) have been investigated since Furnas' Bitpict. VRule is a new pixel rewriting framework designed to support further investigation of new formalisms for end-user modeling with PRSs, and is implemented as a Pattern Directed Inference System (PDIS) with specialized classes of antecedent and consequent Pattern Directed Modules (PDM) components. This overview briefly examines VRule's key elements resulting from exploration of the architectural aspects of rule-based engines to include matching, rule resolution, and execution in a spatial environment, as well as numerous new PDM formalisms. Examples representing classes of modeling domains have been developed to include Turing machines, 1D/2D/3D cellular automata, a game of Fox and Hounds, Langton's Ant (turmites), a climatological gas model originally written in C#, and a virological infection model originally written in Python.
In this paper we propose a visual language CFSL for specifying control flow semantics of programming languages. We also present a translation from CFSL to graph production systems (GPS) for flow graph construction: th...
详细信息
ISBN:
(纸本)0769525865
In this paper we propose a visual language CFSL for specifying control flow semantics of programming languages. We also present a translation from CFSL to graph production systems (GPS) for flow graph construction: that is any CFSL specification, say for a language L, gives rise to a GPS that constructs from any L-program (represented as an abstract syntax graph) the corresponding flow graph. The specification language is rich enough to capture complex language constructs, including all of Java.
This paper illustrates coding decisions by in-service teachers and high school interns working independently versus collaboratively to build computing activities for non-computing classrooms. We investigate code writt...
详细信息
ISBN:
(纸本)9781728169019
This paper illustrates coding decisions by in-service teachers and high school interns working independently versus collaboratively to build computing activities for non-computing classrooms. We investigate code written in Snap! to gain insights on project type and subject matter. We also share case studies on how intern collaboration influences final product execution. Through our research, we found student-only teams often created tutorial projects whereas teachers-only teams create interactive narratives. We found students were able to reuse code across projects to replicate similar mechanics and that students specialize in different aspects of project creation. Overall, we find it beneficial to have collaborative teacher-student teams.
The Experience Sampling Method (ESM) captures participants' thoughts and feelings in their everyday environments. Mobile and wearable technologies afford us opportunities to reach people using ESM in varying conte...
详细信息
ISBN:
(纸本)9781467374576
The Experience Sampling Method (ESM) captures participants' thoughts and feelings in their everyday environments. Mobile and wearable technologies afford us opportunities to reach people using ESM in varying contexts. However, a lack of programming knowledge often hinders researchers in creating ESM applications. In practice, they rely on specialised tools for app creation. Our initial review of these tools indicates that most are expensive commercial services, and none utilise the full potential of sensors for creating context-aware applications. We present "Jeeves", a visual language to facilitate ESM application creation. Inspired by successful visuallanguages in literature, our block-based notation enables researchers to visually construct ESM study specifications. We demonstrate its applicability by replicating existing ESM studies found in medical and psychology literature. Our preliminary study with 20 participants demonstrates that both non-programmers and programmers are able to successfully utilise Jeeves. We discuss future work in extending Jeeves with alternative mobile technologies.
visuallanguages for human-Computer Interaction (HCI) are a good basis for the development of software environments to be used by professional people such as engineers, geologists, medical doctors, etc. The research w...
详细信息
ISBN:
(纸本)0780386965
visuallanguages for human-Computer Interaction (HCI) are a good basis for the development of software environments to be used by professional people such as engineers, geologists, medical doctors, etc. The research we have conducted, along with the experience we have gained working with these people, has compelled us to develop software environments that not only are easier to learn and use, but also allow their users to tailor them to their own needs, and to even create or mode software artifacts. The design methodology that we have developed is refined in this paper, giving insights emerging from our recent experiences, and emphasizing how it supports humancentric-computing and end-user development.
Many K-12 CS education instructors are new to teaching computing and use block-based programming (BBP), allowing them and their students to learn computing concepts with less frustration. Based on prior work with inst...
详细信息
ISBN:
(纸本)9781728169019
Many K-12 CS education instructors are new to teaching computing and use block-based programming (BBP), allowing them and their students to learn computing concepts with less frustration. Based on prior work with instructors, we found that they need assistance with grading student projects as they are new to coding and developing corresponding assessments. Existing methods are either not intuitive and too restrictive for custom assignments, or tediously unnecessary. Additionally, providing a grading support tool will help increase adoption of our Advanced Placement Computer Science Principles curriculum. Therefore, we began developing a tool to assist teachers with grading BBP projects. This paper reports on a modified User Experience Research method, which we used to determine the critical and necessary features needed for the tool to allow teachers to successfully and efficiently assess BBP student artifacts.
Programming robots has long been an expensive and time-consuming task with a high barrier to entry for non-experts. The emergence of end-user development approaches for robotics has allowed to lower this barrier. Exis...
详细信息
ISBN:
(纸本)9798350329469
Programming robots has long been an expensive and time-consuming task with a high barrier to entry for non-experts. The emergence of end-user development approaches for robotics has allowed to lower this barrier. Existing approaches, however, still lack proper software engineering techniques to allow the programming of fully functional robot behaviours and facilitate further maintenance and reuse of the programs developed by end users. In this work, we introduce a low-code approach for allowing physical trainers to program robot-assisted physical training activities without the assistance of a robotics engineer. The approach relies on a textual domain-specific language (DSL) to allow end users to specify the expected robot behaviour through Behaviour-Driven Development (BDD) scenarios.
Many web-applications can be characterized as "relational". In this paper we show that developers can greatly benefit from Relational Blocks, a visual, domain-specific, dataflow language that is designed to ...
详细信息
ISBN:
(纸本)9780769529875
Many web-applications can be characterized as "relational". In this paper we show that developers can greatly benefit from Relational Blocks, a visual, domain-specific, dataflow language that is designed to facilitate the construction of such web-applications. We define the Relational Blocks visual language, discuss our WebRB implementation, and show how WebRB is used to construct non-trivial web-pages.
暂无评论