1,400 research outputs found

    Facilitating algorithm visualization creation and adoption in education

    Get PDF
    The research question of this thesis is: How can we develop algorithm animations (AA) and AA systems further to better facilitate the creation and adoption of AA in education? The motivation for tackling this issue is that algorithm animation has not been widely used in teaching computer science. One of the main reasons for not taking full advantage of AA in teaching is the lack of time on behalf of the instructors. Furthermore, there is a shortage of ready-made, good quality algorithm visualizations. The main contributions are as follows: Effortless Creation of Algorithm Animation. We define a Taxonomy of Effortless Creation of Algorithm Animations. In addition, we introduce a new approach for teachers to create animations by allowing effortless on-the-fly creation of algorithm animations by applying visual algorithm simulation through a simple user interface. Proposed Standard for Algorithm Animation language. We define a Taxonomy of Algorithm Animation Languages to help comparing the different AA languages. The taxonomy and work by an international working group is used to define a new algorithm animation language, eXtensible Algorithm Animation Language, XAAL. Applications of XAAL in education. We provide two different processing approaches for using and producing XAAL animations with existing algorithm animation systems. In addition, we have a framework aiding in this integration as well as prototype implementations of the processes. Furthermore, we provide a novel solution to the problem of seamlessly integrating algorithm animations with hypertext. In our approach, the algorithm animation viewer is implemented purely with JavaScript and HTML. Finally, we introduce a processing model to easily produce lecture slides for a common presentation tool of XAAL animations

    Proceedings of the Second Program Visualization Workshop, 2002

    Get PDF
    The Program Visualization Workshops aim to bring together researchers who design and construct program visualizations and, above all, educators who use and evaluate visualizations in their teaching. The first workshop took place in July 2000 at Porvoo, Finland. The second workshop was held in cooperation with ACM SIGCSE and took place at HornstrupCentret, Denmark in June 2002, immediately following the ITiCSE 2002 Conference in Aarhus, Denmark

    Visual Anxiolytics: developing theory and design guidelines for abstract affective visualizations aimed at alleviating episodes of anxiety

    Get PDF
    Visual Anxiolytics is a novel term proposed to describe affective visualizations of which affective quality is predetermined and designed to alleviate anxiety and anxious pathology. This thesis presents ground theory and visual guidelines to inform the design of screen-based interfaces to give users aspects of a restorative and anxiolytic environment at a time when attention restoration is least likely and anxiety highly probable; during sedentary screen-time. Visual Anxiolytics are introduced as an affective layer of the interface capable of communicating affect through aesthetic, abstract, ambient emotion visualizations existing in the periphery of the screen and users’ vision. Their theory is brought into the field of Visual Communication Design from a number of disciplines; primarily Affective Computing, Human-Computer Interaction, Psychology, and Neuroscience. Visual Anxiolytics attempt to alleviate anxiety through restoration of attentional cognitive resources by rendering the digital environment restorative and by elicitation of positive emotions through affect communication. Design guidelines analyse and describe properties of anxiolytic affective visual attributes color, shape, motion, and visual depth, as well as compositional characteristics of Visual Anxiolytics. Potential implications for future research in emotion visualization and affect communication are discussed

    Future of Functional Reactive Programming in Real-Time Systems

    Get PDF
    The evolution of programming paradigms and the development of new programming languages are driven by the needs of problem domains. Functional reactive programming (FRP) combines functional programming (FP) and reactive programming (RP) concepts that leverage asynchronous dataflow from reactive programming and higher-level abstractions building blocks from functional programming to enable developers to define data flows and transformations declaratively. Declarative programming allows developers to concentrate more on the problem to be solved rather than the implementation details, resulting in efficient and concise code. Over the years, various FRP designs have been proposed in real-time application areas. Still, it remains unclear how FRP-based solutions compare with traditional methods for implementing these applications. In this survey, we studied the usefulness of FRP in some real-time applications, such as game development, animation, graphical user interface(GUI), and embedded system. We conducted a qualitative comparison for game development and studied various applications in animation, GUI, and embedded systems. We found that using FRP in these applications is quite difficult because of insufficient libraries and tools. Additionally, due to high learning curves and a need for experienced developers, the development process in FRP takes time and effort. Our examination of two well-known games: Asteroid and Pong, in three programming paradigms: imperative programming using the Unity game engine, FP in Haskell, and FRP in the Yampa library, showed that imperative programming is effective in terms of performance and usability. The other two paradigms for developing games from scratch are inefficient and challenging. Despite the fact that FRP was designed for animation, the majority of its applications are underperforming. FRP is more successful for GUI applications, where libraries like RxJS have been used in many web interfaces. FRP is also applied in developing embedded system applications for its effective memory management, maintainability, and predictability. Developing efficient solutions from scratch is not suitable in FRP due to several factors, such as poor performance compared to other programming paradigms, programming complexity, and a steep learning curve. Instead, developers can be benefited from utilizing FRP-supported modular platforms to build robust and scalable real-time applications

    A Template-Based Short Course Concept on Android Application Development

    Get PDF

    Visualizing Processes on the Web

    Get PDF
    In this paper, we describe 3WPS, a framework to build distributed systems that are able to monitor and interact with a process through a 3D interface that is accessible via the World Wide Web (WWW). The 3WPS is easily configurable, easily adaptable to different processes with high reuse of ts software components and its distributed architecture leverages on off-the-shelf components of the WWW infrastructure such as Java applets and Virtual Reality Modeling Language (VRML) browsers. We describe the characteristics of 3WPS framework by mainly focusing on the issue of programmability and by contextually providing an example tour of its usage

    Animating the evolution of software

    Get PDF
    The use and development of open source software has increased significantly in the last decade. The high frequency of changes and releases across a distributed environment requires good project management tools in order to control the process adequately. However, even with these tools in place, the nature of the development and the fact that developers will often work on many other projects simultaneously, means that the developers are unlikely to have a clear picture of the current state of the project at any time. Furthermore, the poor documentation associated with many projects has a detrimental effect when encouraging new developers to contribute to the software. A typical version control repository contains a mine of information that is not always obvious and not easy to comprehend in its raw form. However, presenting this historical data in a suitable format by using software visualisation techniques allows the evolution of the software over a number of releases to be shown. This allows the changes that have been made to the software to be identified clearly, thus ensuring that the effect of those changes will also be emphasised. This then enables both managers and developers to gain a more detailed view of the current state of the project. The visualisation of evolving software introduces a number of new issues. This thesis investigates some of these issues in detail, and recommends a number of solutions in order to alleviate the problems that may otherwise arise. The solutions are then demonstrated in the definition of two new visualisations. These use historical data contained within version control repositories to show the evolution of the software at a number of levels of granularity. Additionally, animation is used as an integral part of both visualisations - not only to show the evolution by representing the progression of time, but also to highlight the changes that have occurred. Previously, the use of animation within software visualisation has been primarily restricted to small-scale, hand generated visualisations. However, this thesis shows the viability of using animation within software visualisation with automated visualisations on a large scale. In addition, evaluation of the visualisations has shown that they are suitable for showing the changes that have occurred in the software over a period of time, and subsequently how the software has evolved. These visualisations are therefore suitable for use by developers and managers involved with open source software. In addition, they also provide a basis for future research in evolutionary visualisations, software evolution and open source development

    Design of Virtual Hands for Natural Interaction in the Metaverse

    Get PDF
    [EN] The emergence of the Metaverse is raising important questions in the field of human-machine interaction that must be addressed for a successful implementation of the new paradigm. Therefore, the exploration and integration of both technology and human interaction within this new framework are needed. This paper describes an innovative and technically viable proposal for virtual shopping in the fashion field. Virtual hands directly scanned from the real world have been integrated, after a retopology process, in a virtual environment created for the Metaverse, and have been integrated with digital nails. Human interaction with the Metaverse has been carried out through the acquisition of the real posture of the user's hands using an infrared-based sensor and mapping it in its virtualized version, achieving natural identification. The technique has been successfully tested in an immersive shopping experience with the Meta Quest 2 headset as a pilot project, where a transactions mechanism based on the blockchain technology (non-fungible tokens, NFTs) has allowed for the development of a feasible solution for massive audiences. The consumers' reactions were extremely positive, with a total of 250 in-person participants and 120 remote accesses to the Metaverse. Very interesting technical guidelines are raised in this project, the resolution of which may be useful for future implementations.This research is part of the R+D project PID2020-118021RB-I00, funded by MICIN/AEI/10.13039/501100011033, and R+D project UJI-B2022-48 funded by University Jaume I.Cerdá Boluda, J.; Mora, MC.; Lloret Romero, MN.; Scarani, S.; Sastre, J. (2024). Design of Virtual Hands for Natural Interaction in the Metaverse. Sensors. 24(3). https://doi.org/10.3390/s2403074124
    corecore