Visual block-based programming is useful for various users such as novice programmers because it provides easy operations and improves the readability of programs. Also, in programming education, it is known to be eff...
详细信息
Visual block-based programming is useful for various users such as novice programmers because it provides easy operations and improves the readability of programs. Also, in programming education, it is known to be effective to initially present basic language features and then gradually make more advanced features available. However, the cost of implementing such visual block-based languages remains a challenge. In this paper, we present a programming environment for providing visual block-based domain- specific languages (visual DSLs) that are translatable into various programming languages. In our environment, programs are built by combining visual blocks expressed in a natural language. Blocks represent program elements such as operations and variables. Tips represent snippets, and macro blocks represent procedures. Using Tips and macros make code more abstract, and reduce the number of blocks in code. Visual DSLs can be a front-end for various languages. It can be easily restricted and extended by adding and deleting blocks. We applied our programming environment to Processing, an educational programming language for media art. We show that the environment is useful for novice programmers who learn basic concepts of programming and the features of Processing.
This study introduces the Concrete Computational Concepts programming environments (3CPEs), an innovative approach designed to help elementary students grasp abstract computational concepts through concrete metaphors ...
详细信息
ISBN:
(纸本)9798400703317
This study introduces the Concrete Computational Concepts programming environments (3CPEs), an innovative approach designed to help elementary students grasp abstract computational concepts through concrete metaphors using tangible and everyday objects. Traditional programming environments for children focus on concrete programming language syntax and semantics yet often fall short in conveying advanced computational concepts. To address this gap, 3CPEs combine the hands-on appeal of computer-science unplugged activities with the versatility of programming environments, using familiar objects and gamified elements to visualize abstract computational and algorithmic ideas. An example is CT (Computational Thinking) Chef, a 3CPEs implementation to enhance elementary students' understanding of programming concepts. Through design workshops with five elementary programming teachers, we preliminarily identified teaching challenges and evaluated 3CPEs' efficacy as an educational tool. The feedback underscores CT Chef's potential in facilitating the teaching of intricate computational concepts for young learners.
Switch mode blocks allow learners to write text-based commands inside of blocks within a conventional block-based programming environment. Switch mode blocks can be added by either directly drag-and-dropping them into...
详细信息
Some of the critical hurdles for the widespread adoption of accelerators in high performance computing are portability and programming difficulty. To be an effective HPC p latform, these systems need a high level soft...
详细信息
Some of the critical hurdles for the widespread adoption of accelerators in high performance computing are portability and programming difficulty. To be an effective HPC p latform, these systems need a high level software development environment to facilitate the porting and development of applications, so they can be portable and run efficiently on either accelerators or CPUs. In this paper we present a high level parallel programming environment for accelerator-based systems, which consists of tightly coupled compilers, tools, and libraries that can interoperate and hide the complexity of the system. Ease of use is possible with compilers making it feasible for users to write applications in Fortran, C, or C++ with OpenACC directives, tools to help users port, debug, and optimize for both accelerators and conventional multi-core CPUs, and with auto-tuned scientific libraries.
Automated vehicles (AV) heavily depend on robust perception systems. Current methods for evaluating vision systems focus mainly on frame-by-frame performance. Such evaluation methods appear to be inadequate in assessi...
详细信息
Automated vehicles (AV) heavily depend on robust perception systems. Current methods for evaluating vision systems focus mainly on frame-by-frame performance. Such evaluation methods appear to be inadequate in assessing the performance of a perception subsystem when used within an AV. In this paper, we present a logic-referred to as Spatio-Temporal Perception Logic (STPL)-which utilizes both spatial and temporal modalities. STPL enables reasoning over perception data using spatial and temporal operators. One major advantage of STPL is that it facilitates basic sanity checks on the functional performance of the perception system, even without ground truth data in some cases. We identify a fragment of STPL which is efficiently monitorable offline in polynomial time. Finally, we present a range of specifications for AV perception systems to highlight the types of requirements that can be expressed and analyzed through offline monitoring with STPL.
Some of the critical hurdles for the widespread adoption of accelerators in high performance computing are portability and programming difficulty. To be an effective HPC platform, these systems need a high level softw...
详细信息
Some of the critical hurdles for the widespread adoption of accelerators in high performance computing are portability and programming difficulty. To be an effective HPC platform, these systems need a high level software development environment to facilitate the porting and development of applications, so they can be portable and run efficiently on either accelerators or CPUs. In this paper we present a high level parallel programming environment for accelerator-based systems, which consists of tightly coupled compilers, tools, and libraries that can interoperate and hide the complexity of the system. Ease of use is possible with compilers making it feasible for users to write applications in Fortran, C, or C++ with OpenACC directives, tools to help users port, debug, and optimize for both accelerators and conventional multi-core CPUs, and with auto-tuned scientific libraries.
In this paper, the principles of an adaptive technological programming environment based on an intersubjective paradigm are developed. For this purpose, the understanding of programming is adequately enriched by intro...
详细信息
Collecting fine-grained programming process data may require students' informed consent in order to comply with ethical and legal regulations. Previous studies suggest that such consent is not always given in the ...
详细信息
ISBN:
(纸本)9798400704758
Collecting fine-grained programming process data may require students' informed consent in order to comply with ethical and legal regulations. Previous studies suggest that such consent is not always given in the context of graded introductory programming courses due to students' concerns about being accused of plagiarism. Little is known about the students' willingness to give consent in these contexts and what strategies can be used to increase consent. In this work, we propose a novel strategy that combines data encryption with a data trustee to address a conflict of interest that arises when instructors are involved in research. Trustee-based encryption prevents instructors and researchers from accessing collected data until students have been graded while ensuring that data can be recovered if students drop out of the course. We present initial evidence that student councils are suitable candidates to serve as data trustees in higher education. To determine the impact of our strategy on consent, we conducted two experiments with computer science students enrolled in graded introductory programming courses at a German university. While we were unable to find evidence for increased willingness to consent, we found evidence that trustee-based encryption reduces signs of anxiety about the misuse of collected data. As such, our strategy can be considered beneficial for obtaining informed consent. In contexts where such consent is not required, trustee-based encryption could prevent missing or biased data caused by students who attempt to bypass data collection.
There is agreement on the importance of teaching programming as part of the mandatory basic education (i.e., initial, primary and secondary school), as it gives tools to problem solving and abstract thinking, among ot...
详细信息
ISBN:
(纸本)9798331540982;9798331540975
There is agreement on the importance of teaching programming as part of the mandatory basic education (i.e., initial, primary and secondary school), as it gives tools to problem solving and abstract thinking, among other things. There are several programming tools that are usually used in schools, Scratch being one of the most famous. In general, Arduino boards are widely used in educational contexts, given their open hardware design as well as the myriad of technical and educational resources that are available freely, and that they allow to work with physical programming as well as with full scale projects. Arduino boards are usually programmed using the Arduino IDE, that is text-based, as well as with block based tools such as mBlock, proprietary tools for Arduino-compatible boards and even extensions of Scratch. Those tools have limitations in order to be used in schools, given that they require the learning of text or block syntax, even when the latter has a softer learning curve. Particularly, some block programming tools are specific to certain kits or boards, do not include a variety of blocks for generic sensors and actuators, have very few blocks that facilitate the programming or are not available in widely used languages such as Spanish. In this work we present the block based Arduino programming Arduino en la Escuela (AelE, that could be translated from Spanish as "Arduino at the School"), that excels in versatility, given that it was used with students from ages, sociocultural context, as well as previous knowledge. The tool was used for courses mostly with secondary school students, but it was also applied in other contexts as with younger children and adults, as well as with teachers and even as part of a prison education program. In all these experiences AelE was well accepted by the students, and the tool was totally suitable in order to complete the required class assignments as well as to work with projects of different kinds.
In recent years, numerous approaches to automated feedback have been presented in the field of programming education. Often, these methods deliver feedback through standalone web-based environments or educational prog...
详细信息
ISBN:
(纸本)9798400709111
In recent years, numerous approaches to automated feedback have been presented in the field of programming education. Often, these methods deliver feedback through standalone web-based environments or educational programming environments. However, only few works have explored how such feedback can be provided within Integrated Development environments (IDEs). We propose MINDFIX, an approach for integrating alternative feedback mechanisms for addressing programming language misconceptions about Java into the Eclipse IDE. These mechanisms include textual hints, code examples, and a personalized pedagogical agent. A laboratory experiment was conducted to investigate their impact on novice programmers in higher education. The results show that MINDFIX addresses missing feedback mechanisms and features. Additionally, there are initial insights that our feedback addresses programming language misconceptions while being perceived as useful and comprehensible. Our findings also suggest that novice programmers with low self-efficacy expectations perceive pedagogical agents as more motivating, useful, and less disruptive compared to their peers.
暂无评论