37,984 research outputs found
Designing graphical interface programming languages for the end user
This thesis sets out to answer three simple questions: What tools are available for novice programmers to program GUIs? Are those tools fulfilling their role? Can anything be done to make better tools? Despite being simple questions, the answers are not so easily constructed.
In answering the first question, it was necessary to examine the range of tools available and decide upon criteria which could be used to identify tools aimed specifically at the novice programmer (there being no currently agreed criteria for their identification). Having identified these tools, it was then necessary to construct a framework within which they could be sensibly compared.
The answering of the second question required an investigation of what were the successful features of current tools and which features were less successful. Success or failure of given features was determined by research in both programming language design and studies of programmer satisfaction.
Having discovered what should be retained and discarded from current systems, the answering of the third question required the construction of new systems through blending elements from visual languages, program editors and fourth generation languages. These final prototypes illustrate a new way of thinking about and constructing the next generation of GUI programming languages for the novice
Improving Usability of Interactive Graphics Specification and Implementation with Picking Views and Inverse Transformations
Specifying and programming graphical interactions are difficult tasks,
notably because designers have difficulties to express the dynamics of the
interaction. This paper shows how the MDPC architecture improves the usability
of the specification and the implementation of graphical interaction. The
architecture is based on the use of picking views and inverse transforms from
the graphics to the data. With three examples of graphical interaction, we show
how to express them with the architecture, how to implement them, and how this
improves programming usability. Moreover, we show that it enables implementing
graphical interaction without a scene graph. This kind of code prevents from
errors due to cache consistency management
Recommended from our members
Choosers: designing a highly expressive algorithmic music composition system for non-programmers
We present an algorithmic composition system designed to be accessible to those with minimal programming skills and little musical training, while at the same time allowing the manipulation of detailed musical structures more rapidly and more fluidly than would normally be possible for such a user group. These requirements led us to devise non- standard programming abstractions as the basis for a novel graphical music programming language in which a single basic element permits indeterminism, parallelism, choice, multi-choice, recursion, weighting and looping. The system has general musical expressivity, but for simplicity here we focus on manipulating samples. The musical abstractions behind the system have been implemented as a set of SuperCollider classes to enable end-user testing of the graphical programming language via a Wizard of Oz prototyping methodology. The system is currently being tested with undergraduate Music Technology students who are typically neither programmers, nor traditional musicians
Natural Notation for the Domestic Internet of Things
This study explores the use of natural language to give instructions that
might be interpreted by Internet of Things (IoT) devices in a domestic `smart
home' environment. We start from the proposition that reminders can be
considered as a type of end-user programming, in which the executed actions
might be performed either by an automated agent or by the author of the
reminder. We conducted an experiment in which people wrote sticky notes
specifying future actions in their home. In different conditions, these notes
were addressed to themselves, to others, or to a computer agent.We analyse the
linguistic features and strategies that are used to achieve these tasks,
including the use of graphical resources as an informal visual language. The
findings provide a basis for design guidance related to end-user development
for the Internet of Things.Comment: Proceedings of the 5th International symposium on End-User
Development (IS-EUD), Madrid, Spain, May, 201
Creating Interaction Scenarios With a New Graphical User Interface
The field of human-centered computing has known a major progress these past
few years. It is admitted that this field is multidisciplinary and that the
human is the core of the system. It shows two matters of concern:
multidisciplinary and human. The first one reveals that each discipline plays
an important role in the global research and that the collaboration between
everyone is needed. The second one explains that a growing number of researches
aims at making the human commitment degree increase by giving him/her a
decisive role in the human-machine interaction. This paper focuses on these
both concerns and presents MICE (Machines Interaction Control in their
Environment) which is a system where the human is the one who makes the
decisions to manage the interaction with the machines. In an ambient context,
the human can decide of objects actions by creating interaction scenarios with
a new visual programming language: scenL.Comment: 5th International Workshop on Intelligent Interfaces for
Human-Computer Interaction, Palerme : Italy (2012
A general framework for positioning, evaluating and selecting the new generation of development tools.
This paper focuses on the evaluation and positioning of a new generation of development tools containing subtools (report generators, browsers, debuggers, GUI-builders, ...) and programming languages that are designed to work together and have a common graphical user interface and are therefore called environments. Several trends in IT have led to a pluriform range of developments tools that can be classified in numerous categories. Examples are: object-oriented tools, GUI-tools, upper- and lower CASE-tools, client/server tools and 4GL environments. This classification does not sufficiently cover the tools subject in this paper for the simple reason that only one criterion is used to distinguish them. Modern visual development environments often fit in several categories because to a certain extent, several criteria can be applied to evaluate them. In this study, we will offer a broad classification scheme with which tools can be positioned and which can be refined through further research.
Screen-based musical instruments as semiotic machines
The ixi software project started in 2000 with the intention to explore new interactive patterns and virtual interfaces in computer music software. The aim of this paper is not to describe these programs, as they have been described elsewhere, but rather explicate the theoretical background that underlies the design of these screen-based instruments. After an analysis of the similarities and differences in the design of acoustic and screen-based instruments, the paper describes how the creation of an interface is essentially the creation of a semiotic system that affects and influences the musician and the composer. Finally the terminology of this semiotics is explained as an interaction model
Direct Manipulation-like Tools for Designing Intelligent Virtual Agents
If intelligent virtual agents are to become widely adopted it is vital that they can be designed using the user friendly graphical tools that are used in other areas of graphics. However, extending this sort of tool to autonomous, interactive behaviour, an area with more in common with artificial intelligence, is not trivial. This paper discusses the issues involved in creating user-friendly design tools for IVAs and proposes an extension of the direct manipulation methodology to IVAs. It also presents an initial implementation of this methodology
- …