Demo Data from VLDB 2026 / reviewers in the wild / expert
Richard G. McDaniel
dblp:66/4207
· DBLP profile ↗
7ranked-venue papers
3as first author
0since 2021 · last 2005
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Human-computer interaction and ubiquitous computing · 4 · 3 first-authorSoftware engineering, systems software and programming languages · 3
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Human-computer interaction and pervasive computing
3 papers |
User interface design and tools · 100% | |
| Software engineering, system software, and programming languages
1 paper |
Empirical software engineering · 100% |
Topics — the 6 heaviest of 8, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
User interface design and tools
end-user programming |
0.0 | 1 | 1999 | Getting More Cut of Programming-by-Demonstration · CHI 1999 |
User interface design and tools › end-user programming
programming by demonstration |
0.0 | 1 | 1999 | Getting More Cut of Programming-by-Demonstration · CHI 1999 |
User interface design and tools › user interface toolkit
constraint-based user interface toolkit |
0.0 | 1 | 1997 | The Amulet Environment: New Models for Effective User Interface Software Development · IEEE Trans. Software Eng. 1997 |
User interface design and tools › programming environments
user interface development environment |
0.0 | 1 | 1997 | The Amulet Environment: New Models for Effective User Interface Software Development · IEEE Trans. Software Eng. 1997 |
User interface design and tools › authoring tools
animation authoring tools |
0.0 | 1 | 1996 | Easily Adding Animations to Interfaces Using Constraints · ACM Symposium on User Interface Software and Technology 1996 |
User interface design and tools
toolkit design |
0.0 | 1 | 1996 | Easily Adding Animations to Interfaces Using Constraints · ACM Symposium on User Interface Software and Technology 1996 |
Methods — techniques the papers use, named apart from their topics
topological ordering algorithms · 0.0mark-sweep algorithms · 0.0formal evaluation · 0.0constraint solving · 0.0animation · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2005 | Lessons learned from programmers' experiences with one-way constraintsabstractOne-way constraints have been incorporated in many graphical user interface toolkits because they are simple to learn, easy to write, and can express many types of useful graphical relationships. This paper is an evaluative paper that examines users' experience with one-way constraints in two user interface development toolkits, Garnet and Amulet, over a 15-year time span. The lessons gained from this examination can help guide the design of future constraint systems. The most important lessons are that (1) constraints should be allowed to contain arbitrary code that is written in the underlying toolkit language and does not require any annotations, such as parameter declarations, (2) constraints are difficult to debug and better debugging tools are needed, and (3) programmers will readily use one-way constraints to specify the graphical layout of an application, but must be carefully and time-consumingly trained to use them for other purposes. Copyright © 2005 John Wiley & Sons, Ltd. Bradley T. Vander Zanden, Richard L. Halterman, Brad A. Myers, Rob Miller 0001, Pedro A. Szekely, Dario A. Giuse, David S. Kosbie, Richard G. McDaniel |
Softw. Pract. Exp. | 8 |
| 2001 | Lessons learned about one-way, dataflow constraints in the Garnet and Amulet graphical toolkitsabstractOne-way, dataflow constraints are commonly used in graphical interface toolkits, programming environments, and circuit applications. Previous papers on dataflow constraints have focused on the design and implementation of individual algorithms. In contrast, this article focuses on the lessons we have learned from a decade of implementing competing algorithms in the Garnet and Amulet graphical interface toolkits. These lessons reveal the design and implementation tradeoffs for different one-way, constraint satisfaction algorithms. The most important lessons we have learned are that (1) mark-sweep algorithms are more efficient than topological ordering algorithms; (2) lazy and eager evaluators deliver roughly comparable performance for most applications; and (3) constraint satisfaction algorithms have more than adequate speed, except that the storage required by these algorithms can be problematic. Bradley T. Vander Zanden, Richard L. Halterman, Brad A. Myers, Richard G. McDaniel, Rob Miller 0001, Pedro A. Szekely, Dario A. Giuse, David S. Kosbie |
ACM Trans. Program. Lang. Syst. | 4 |
| 1999 | Getting More Cut of Programming-by-DemonstrationabstractProgramming-by-demonstration (PBD) can be used to create tools and methods that eliminate the need to learn difficult computer languages. Gamut is a PBD tool that nonprogrammers can use to create a broader range of interactive software, including games, simulations, and educational software, than they can with other PBD tools. To do this, Gamut provides advanced interaction techniques that make it easier for a developer to express all aspects of an application. These techniques include a simplified way to demonstrate new examples, called “nudges, ” and a way to highlight objects to show they are important. Also, Gamut includes new objects and metaphors like the deck-of-cards metaphor for demonstrating collections of objects and randomness, guide objects for demonstrating relationships that the system would find too difficult to guess, and temporal ghosts which simplify showing relationships with the recent past. These techniques were tested in a formal setting with nonprogrammers to evaluate their effectiveness. Richard G. McDaniel, Brad A. Myers |
CHI | 1 |
| 1998 | Building Applications Using Only DemonstrationabstractBy combining the strengths of multiple interaction techniques and inferencing algorithms, Gamut can infer behaviors from examples that previously required a developer to annotate or otherwise modify code by hand.Gamut is a programming-by-demonstration (PBD) tool for building whole applications.It revises code automatically when new examples are demonstrated using a recursive procedure that efficiently scans for the differences between a new example and the original behavior.Differences that cannot be resolved by generating a suitable description are handled by another AI algorithm, decision tree learning, providing a significantly greater ability to infer complex relationships.Gamut's interaction techniques facilitate demonstrating many examples quickly and allow the user to give the system hints that show relationships that would be too time consuming to discover by search alone.Altogether, the concepts combined in Gamut will allow nonprogrammers to build software they never could before. Richard G. McDaniel, Brad A. Myers |
IUI | 1 |
| 1997 | Gamut: Demonstrating Whole ApplicationsabstractNo abstract available. Richard G. McDaniel, Brad A. Myers |
ACM Symposium on User Interface Software and Technology | 1 |
| 1997 | The Amulet Environment: New Models for Effective User Interface Software DevelopmentabstractThe Amulet user interface development environment makes it easier for programmers to create highly interactive, graphical user interface software for Unix, Windows and the Macintosh. Amulet uses new models for objects, constraints, animation, input, output, commands, and undo. The object system is a prototype instance model in which there is no distinction between classes and instances or between methods and data. The constraint system allows any value of any object to be computed by arbitrary code and supports multiple constraint solvers. Animations can be attached to existing objects with a single line of code. Input from the user is handled by "interactor" objects which support reuse of behavior objects. The output model provides a declarative definition of the graphics and supports automatic refresh. Command objects encapsulate all of the information needed about operations, including support for various ways to undo them. A key feature of the Amulet design is that all graphical objects and behaviors of those objects are explicitly represented at run time, so the system can provide a number of high level built-in functions, including automatic display and editing of objects, and external analysis and control of interfaces. Amulet integrates these capabilities in a flexible and effective manner. Brad A. Myers, Richard G. McDaniel, Rob Miller 0001, Alan S. Ferrency, Andrew Faulring, Bruce D. Kyle, Andrew Mickish, Alex Klimovitski, Patrick Doane |
IEEE Trans. Software Eng. | 2 |
| 1996 | Easily Adding Animations to Interfaces Using ConstraintsabstractAdding animation to interfaces is a very difficult task with today's toolkits, even though there are many situations in which it would be useful and effective. The Amulet toolkit contains a new form of animation constraint that allows animations to be added to interfaces extremely easily without changing the logic of the application or the graphical objects themselves. An animation constraint detects changes to the value of the slot to which it is attached, and causes the slot to instead take on a series of values interpolated between the original and new values. The advantage over previous approaches is that animation constraints provide significantly better modularity and reuse. The programmer has independent control over the graphics to be animated, the start and end values of the animation, the path through value space, and the timing of the animation. Animations can be attached to any object, even existing widgets from the toolkit, and any type of value can be animated: scalars, ... Brad A. Myers, Rob Miller 0001, Richard G. McDaniel, Alan S. Ferrency |
ACM Symposium on User Interface Software and Technology | 3 |