Teaching programming is a topic that has generated a high level of interest among researchers in recent decades. In particular, multiple approaches to teaching visual programming have been explored, from the use of to...
详细信息
Teaching programming is a topic that has generated a high level of interest among researchers in recent decades. In particular, multiple approaches to teaching visual programming have been explored, from the use of tools such as Scratch, robots, unplugged programming, or activities for the development of computational thinking. Despite the wide range of resources used, students generally tend to perform poorly academically and perceive learning visual programming as a complex and demotivating task. In this article, the TutoApp system is proposed together with a new methodology based on "Learning by Teaching," where students create tutorials on their mobile devices to explain programming concepts to their peers. The hypothesis of this article is that the use of this tool improves learning outcomes and the level of student satisfaction. An experiment with a pre-posttest design has been carried out with 57 university students in an introductory programming course, 30 belonging to a control group (did not use TutoApp) and 27 belonging to the experimental group (used TutoApp). The findings indicate that the creation of tutorials with TutoApp significantly improved students' academic performance over those who did not use it, specifically in learning the loops and conditional control structures. However, it was observed that anxiety increased in all students while learning visual programming. The results of this study open the door to the validation of the use of systems and methodologies for creating tutorials for teaching visual programming to university students.
visual programming tools allow users to create interactive media projects such as games and animations using visual representations of programming concepts. Although these tools have been shown to have huge potential ...
详细信息
visual programming tools allow users to create interactive media projects such as games and animations using visual representations of programming concepts. Although these tools have been shown to have huge potential for teaching children, research has shown that they may not be accessible for children with cognitive impairments, including those with autism spectrum condition. Therefore, this study proposes a set of recommendations for the design of accessible visual programming tools for children with autism spectrum condition. Semi-structured interviews with experts (n = 7) were conducted and thematically analysed to identify initial recommendations. A second set of semi-structured interviews with a subset of the initial experts (n = 3) were then conducted to validate and produce a final set of recommendations.
Object-oriented programming is widely used in both the industry and the education areas. The most-common model of object-oriented programming is the class-based one. However, popular languages not implementing this mo...
详细信息
Object-oriented programming is widely used in both the industry and the education areas. The most-common model of object-oriented programming is the class-based one. However, popular languages not implementing this model are gaining traction as time goes by. This alternative model is the prototype-based one, with one key characteristic: there are no classes. In this paper, a visual tool is proposed as a vehicle for learning the prototype-based object-oriented programming, present, for instance, in Self, Lua, or JavaScript. This software has been in use for three years in a subject of the Computer Science Engineering degree, at the University of Vigo. (C) 2019 Elsevier B.V. All rights reserved.
The paper introduces a visual programming language and corresponding web and cloud-based development environment called NetsBlox. NetsBlox is an extension of Snap! and builds upon its visual formalism as well as its o...
详细信息
The paper introduces a visual programming language and corresponding web and cloud-based development environment called NetsBlox. NetsBlox is an extension of Snap! and builds upon its visual formalism as well as its open source code base. NetsBlox adds distributed programming capabilities by introducing two well-known abstractions to block-based programming: message passing and Remote Procedure Calls (RPC). Messages containing data can be exchanged by two or more NetsBlox programs running on different computers connected to the Internet. RPCs are called on a client program and are executed on the NetsBlox server. These two abstractions make it possible to create distributed programs such as multi-player games or client-server applications. We believe that NetsBlox not only teaches basic distributed programming concepts but also provides increased motivation for high-school students to become creators and not just consumers of technology. (C) 2018 Elsevier Inc. All rights reserved.
visual programming tools are widely applied in the game industry to assist game designers in developing game artificial intelligence(game AI)and ***,testing multiple game engines is a time-consuming operation,which de...
详细信息
The success of a programming system depends as much on the learnability of its language concepts as the usability of its interface. We argue that learnability can be significantly improved by integrating into the prog...
详细信息
The success of a programming system depends as much on the learnability of its language concepts as the usability of its interface. We argue that learnability can be significantly improved by integrating into the programming system learning supports that allow individuals to educate themselves about the syntax, semantics and applications of a language. Reflecting on our experience with developing novice programming systems, we identify infrastructural characteristics of such systems that can make the integration of learning supports practical. We focus on five core facilities: annotatability, scriptability monitorability, supplementability and constrainability. Our hope is that our examination of these technical facilities and their tradeoffs can inform the design of future programming systems that better address the educational needs of their users. (C) 2001 Academic Press.
visual programming languages aim to promote usability, but their usability is rarely examined scientifically. One reason is the difficulty of designing successful experimental evaluations. We propose the Cognitive Wal...
详细信息
visual programming languages aim to promote usability, but their usability is rarely examined scientifically. One reason is the difficulty of designing successful experimental evaluations. We propose the Cognitive Walkthrough (CW) as an aid to improve experiments' designs. The CW is an HCI technique designed for evaluating interfaces. The technique focuses on the potential difficulties of novice users and is therefore particularly suited for evaluating programming situations that arise in visual programming language experiments performed in laboratory settings. We first describe an empirical study performed without benefit of a walkthrough and show how the study was improved by a series of walkthroughs. We also describe two other empirical studies and how they were improved with the help of the CW. We found the method to be quick to use, effective at improving the experimental design, and usable by non-specialists. (C) 2002 Elsevier Science Ltd. All rights reserved.
The fundamental goal of the GeoVISTA Studio project is to improve geoscientific analysis by providing an environment that operationally integrates a wide range of analysis activities, including those both computationa...
详细信息
The fundamental goal of the GeoVISTA Studio project is to improve geoscientific analysis by providing an environment that operationally integrates a wide range of analysis activities, including those both computationally and visually based. Improving the infrastructure used in analysis has far-reaching potential to better integrate human-based and computationally based expertise, and so ultimately improve scientific outcomes. To address these challenges, some difficult system design and software engineering problems must be overcome. This paper illustrates the design of a component-oriented system, GeoVISTA Studio, as a means to overcome such difficulties by using state-of-the-art component-based software engineering techniques. Advantages described include: ease of program construction (visual programming), an open (non-proprietary) architecture, simple component-based integration and advanced deployment methods. This versatility has the potential to change the nature of systems development for the geosciences, providing better mechanisms to coordinate complex functionality, and as a consequence, to improve analysis by closer integration of software tools and better engagement of the human expert. Two example applications are presented to illustrate the potential of the Studio environment for exploring and better understanding large, complex geographical datasets and for supporting complex visual and computational analysis. (C) 2002 Elsevier Science Ltd. All rights reserved.
Recently many researches have explored the potential of visual programming in robotics, the Internet of Things (IoT), and education. However, there is a lack of studies that analyze the recent evidence-based visual pr...
详细信息
Recently many researches have explored the potential of visual programming in robotics, the Internet of Things (IoT), and education. However, there is a lack of studies that analyze the recent evidence-based visual programming approaches that are applied in several domains. This study presents a systematic review to understand, compare, and reflect on recent visual programming approaches using twelve dimensions: visual programming classification, interaction style, target users, domain, platform, empirical evaluation type, test participants' type, number of test participants, test participants' programming skills, evaluation methods, evaluation measures, and accessibility of visual programming tools. The results show that most of the selected articles discussed tools that target IoT and education, while other fields such as data science, robotics are emerging. Further, most tools use abstractions to hide implementation details and use similar interaction styles. The predominant platforms for the tools are web and mobile, while desktop-based tools are on the decline. Only a few tools were evaluated with a formal experiment, whilst the remaining ones were evaluated with evaluation studies or informal feedback. Most tools were evaluated with students with little to no programming skills. There is a lack of emphasis on usability principles in the design stage of the tools. Additionally, only one of the tools was evaluated for expressiveness. Other areas for exploration include supporting end users throughout the life cycle of applications created with the tools, studying the impact of tutorials on improving learnability, and exploring the potential of machine learning to improve debugging solutions developed with visual programming.
The current state of the labor market requires modern engineers to acquire programming skills at different levels of advancement and to apply them in multidisciplinary environments. Not all modern engineers will becom...
详细信息
The current state of the labor market requires modern engineers to acquire programming skills at different levels of advancement and to apply them in multidisciplinary environments. Not all modern engineers will become fully fledged programmers, but sometimes the possibility to use low-code programming environments like LabView or MIT App Inventor will be sufficient. In order to give good foundations for adulthood, schools use elements of visual programming, e.g., Scratch or StarLogo, to enhance the critical and algorithmic thinking of future engineers. This article attempts to answer the question of whether anyone cares about following general accessibility and usability guidelines in the case of solutions like Scratch, App Inventor, and StarLogo. Another goal is to show a set of tools that is successful in such an assessment. The authors used Nielsen's heuristics, followed by analyzing WAVE output and Web Content Accessibility Guidelines compliance. Especially, the last one provides insights usually omitted when evaluating low-code environments. It was found that Scratch and App Inventor are leading solutions in terms of look and feel, functionality, documentation, interface navigation, and memorization. The StarLogo interface, on the other hand, is less friendly in terms of aesthetics and functionality.
暂无评论