Intelligent user interfaces, such as recommender systems and email classifiers, use machine learning algorithms to customize their behavior to the preferences of an end user. Although these learning systems are somewhat reliable, they are not perfectly accurate. Traditionally, end users who need to correct these learning systems can only provide...
End-user programmers’ code is notoriously buggy. This problem is amplified by the increasing complexity of end users’ programs. To help end users catch errors early and reliably, we employ a novel approach for the design of end-user debugging tools: a focus on supporting end users’ effective debugging strategies. This paper...
Many applications include machine learning algorithms intended to learn “programs” (rules of behavior) from an end user’s actions. When these learned programs are wrong, their users receive little explanation as to why, and even less freedom of expression to help the machine learn from its mistakes. In this paper, we...
End-user programmers’ code (e.g., accountants’ spreadsheet formulas) is fraught with errors. To help mitigate this problem, end-user software engineering research is becoming established. However, most of this work has focused on feature usage, rather than debugging strategies. If a debugging tool were to support end-user programmers’ specific debugging strategy needs,...
Although there have been decades of research into how professional programmers debug, only recently has work begun to emerge about how end-user programmers attempt to debug their programs. Without understanding how end-user programmers approach debugging, we cannot build tools to adequately support their needs. To help fill this need, this...
Artists use different means of stylization to control the
focus on different objects in the scene. This allows them to portray complex meaning and achieve certain artistic effects. Most
prior work on painterly rendering of videos, however, uses only
a single painting style, with fixed global parameters, irrespective of objects...
Vector field design has a wide variety of applications in computer
graphics, including texture synthesis, non-photorealistic rendering, fluid and crowd simulation, and shape deformation. This paper addresses the problem of the design of time-varying vector fields on surfaces. The additional time dimension poses a number of unique challenges to the...