Number of co-authors:12
Number of publications with 3 favourite co-authors:Steven K. Feiner:3Ephraim P. Glinert:1Steve Roth:1
David Kurlander's 3 most productive colleagues in number of publications:Steven K. Feiner:76Eric Horvitz:70Henry Lieberman:64
The worst misstep one can make in design is to solve the wrong problem.
-- John Carroll, Cited by Malcolm McCullough in Digital Ground, 2004
Read the fascinating history of Wearable Computing, told by its father, Steve Mann
Read Steve's chapter !
Our Latest Books
Kumar and Herger 2013: Gamification at Work: Designing Engaging Business Software...
by Janaki Mythily Kumar and Mario Herger
Whitworth and Ahmad 2013: The Social Design of Technical Systems: Building technologies for communities...
by Brian Whitworth and Adnan Ahmad
Soegaard and Dam 2013: The Encyclopedia of Human-Computer Interaction, 2nd Ed....
by Mads Soegaard and Rikke Friis Dam
Personal Homepage: http://kurlander.net/DJ
David (or D.J.) Kurlander received his Bachelor's Degree in Applied Mathematics from Harvard in 1985, and his Ph.D. in Computer Science from Columbia in 1993. At Columbia, his research interests were mainly in user interfaces and computer graphics, and his Ph.D. dissertation was called "Graphical Editing by Example". In 1992, David became one of the first members of Microsoft Research. Then in 1996, he followed one of his research projects (Comic Chat) into a product group, where he managed that effort, and developed an affinity for building projects based on advanced technology. Within the Microsoft product groups, David led the Microsoft Mobile Internet Toolkit effort - which allowed single web pages to target hundreds of mobile browsers (this is now integrated into Visual Studio and ASP.NET). Next, he led the consumer incubation team, where he managed the Microsoft Surface effort. At the end of 2005, David left Microsoft to pursue his own numerous interests.
Publications by David Kurlander (bibliography)
Kurlander, David (2012): Advanced interface productization: lessons learned. In: Proceedings of the 2012 International Conference on Advanced Visual Interfaces 2012. pp. 4-5.
Over the years I have managed several research projects relating to advanced interfaces and have turned them into shipping products. Microsoft Comic Chat uses automatic illustration generation and the visual language of comics to present online conversations. Microsoft's Mobile Internet Toolkit renders web interfaces on a variety of mobile devices. Microsoft Surface is a multi-touch, object-sensing table-top display. More recently I have been advising start-ups in the mobile content/ubiquitous computing area. Juggling the competing interests of research and product development has been often interesting, sometimes painful, and always challenging. In my invited talk, I will discuss lessons learned while productizing interface technology, including selecting the product to ship, balancing research and product requirements, navigating management's whims of the day, setting goals, and evaluating the results, as well as what has worked and what has not, and why certain efforts have been more successful than others. Here I present a sampling of these lessons.
© All rights reserved Kurlander and/or ACM Press
Marks, Joe, Birnbaum, Larry, Horvitz, Eric, Kurlander, David, Lieberman, Henry and Roth, Steve (1997): Compelling Intelligent User Interfaces: How Much AI?. In: Moore, Johanna D., Edmonds, Ernest and Puerta, Angel R. (eds.) International Conference on Intelligent User Interfaces 1997 January 6-9, 1997, Orlando, Florida, USA. pp. 173-175.
Efforts to incorporate intelligence into the user interface have been underway for decades, but the commercial impact of this work has not lived up to early expectations, and is not immediately apparent. This situation appears to be changing. However, so far the most interesting intelligent user interfaces (IUIs) have tended to use minimal or simplistic AI. In this panel we consider whether more or less AI is the key to the development of compelling IUIs. The panelists will present examples of compelling IUIs that use a selection of AI techniques, mostly simple, but some complex. Each panelist will then comment on the merits of different kinds and quantities of AI in the development of pragmatic interface technology.
© All rights reserved Marks et al. and/or ACM Press
Kurlander, David, Brown, Marc and Rao, Ramana (eds.) Proceedings of the 9th annual ACM symposium on User interface software and technology November 06 - 08, 1996, Seattle, Washington, United States.
Kurlander, David and Ling, Daniel T. (1995): Planning-Based Control of Interface Animation. In: Katz, Irvin R., Mack, Robert L., Marks, Linn, Rosson, Mary Beth and Nielsen, Jakob (eds.) Proceedings of the ACM CHI 95 Human Factors in Computing Systems Conference May 7-11, 1995, Denver, Colorado. pp. 472-479.
Animations express a sense of process and continuity that is difficult to convey through other techniques. Although interfaces can often benefit from animation, User Interface Management Systems (UIMSs) rarely provide the tools necessary to easily support complex, state-dependent application output, such as animations. Here we describe Player, an interface component that facilitates sequencing these animations. One difficulty of integrating animations into interactive systems is that animation scripts typically only work in very specific contexts. Care must be taken to establish the required context prior to executing an animation. Player employs a precondition and postcondition-based specification language, and automatically computes which animation scripts should be invoked to establish the necessary state. Player's specification language has been designed to make it easy to express the desired behavior of animation controllers. Since planning can be a time-consuming process inappropriate for interactive systems, Player precompiles the plan-based specification into a state machine that executes far more quickly. Serving as an animation controller, Player hides animation script dependencies from the application. Player has been incorporated into the Persona UIMS, and is currently used in the Peedy application.
© All rights reserved Kurlander and Ling and/or ACM Press
Glinert, Ephraim P., Blattner, Meera, Chang, Shi-Kuo and Kurlander, David (1994): Panel: Visual Languages and Programming in the Year 2004. In: VL 1994 1994. pp. 162-166.
Kurlander, David (1993): Graphical Editing by Example. In: Ashlund, Stacey, Mullet, Kevin, Henderson, Austin, Hollnagel, Erik and White, Ted (eds.) Proceedings of the ACM CHI 93 Human Factors in Computing Systems Conference April 24-29, 1993, Amsterdam, The Netherlands. p. 529.
Graphical editing, like many applications facilitated by computers, often involves repetitive tasks. To reduce repetition, programmers can write procedures to automate these tasks, however most users do not know how to program, and the repetitive tasks that they perform are frequently too specialized for the application programmer to anticipate. End users would benefit from the ability to customize and extend their applications for the tasks they usually perform. Programming by example systems and demonstrational interfaces aim to give end users this capability. Such systems are programmed simply by using the applications, rather than through an ancillary extension language. Innovative systems such as Pygmalion, Tinker, SmallStar, Peridot, Metamouse, and Eager have all explored ways of bringing more power to the non-programming end user . The accompanying videotape demonstrates Chimera, a system built to explore new demonstrational techniques in the domains of graphical editing and interface building.
© All rights reserved Kurlander and/or ACM Press
Kurlander, David (1993): Reducing Repetition in Graphical Editing. In: Proceedings of the Fifth International Conference on Human-Computer Interaction 1993. pp. 409-414.
People producing illustrations with graphical editors often need to repeat the same steps over and over again. This paper describes five techniques that reduce the amount of repetition required to create graphical documents, by having the computer play a role in automating repetitive tasks. These techniques: graphical search and replace, constraint-based search and replace, constraints from multiple snapshots, editable graphical histories, and macros by demonstration, have all been implemented within the Chimera editor framework. Chimera, which contains an object-based editor for producing 2D illustrations, was built as a testbed for this research. All of these techniques are demonstrational or example-based. The user specifies concrete examples of tasks, and the system applies the tasks to other data. In addition to reducing repetition, these techniques allow users to customize the editor for the tasks that they frequently perform, and expert users to encapsulate their knowledge in a form that other users can exploit.
© All rights reserved Kurlander and/or Elsevier Science
Kurlander, David (1993). Graphical Editing by Example (Doctoral Thesis). Columbia University
Constructing illustrations by computer can be both tedious and difficult. This thesis introduces five example-based techniques to facilitate the process. These techniques are
independently useful, but also interrelate in interesting ways:
• Graphical Search and Replace, the analogue to textual search and replace in text editors,
is useful for making repetitive changes throughout graphical documents.
• Constraint-Based Search and Replace, an extension to graphical search and replace, allows users to define their own illustration beautification rules and constraint inferencing rules by demonstration.
• Constraint Inferencing from Multiple Snapshots facilitates constraint specification by automatically computing constraints that hold in multiple configurations of an illustration.
• Editable Graphical Histories, a visual representation of commands in a graphical user interface, are useful for reviewing, undoing, and redoing sets of operations.
• Graphical Macros By Example, based on this history representation, allow users to scroll through previously executed commands and encapsulate useful sequences into
macros. These macros can be generalized into procedures, with arguments and flow of control using graphical and constraint-based search and replace.
Individually and in combination, these techniques reduce repetition in graphical editing tasks, visually and by example, using the application’s own interface. These techniques have been implemented in Chimera, an editor built to serve as a testbed for this research.
© All rights reserved Kurlander and/or his/her publisher
Kurlander, David and Feiner, Steven K. (1992): Interactive Constraint-Based Search and Replace. In: Bauersfeld, Penny, Bennett, John and Lynch, Gene (eds.) Proceedings of the ACM CHI 92 Human Factors in Computing Systems Conference June 3-7, 1992, Monterey, California. pp. 609-618.
We describe enhancements to graphical search and replace that allow users to extend the capabilities of a graphical editor. Interactive constraint-based search and replace can search for objects that obey user-specified sets of constraints and automatically apply other constraints to modify these objects. We show how an interactive tool that employs this technique makes it possible for users to define sets of constraints graphically that modify existing illustrations or control the creation of new illustrations. The interface uses the same visual language as the editor and allows users to understand and create powerful rules without conventional programming. Rules can be saved and retrieved for use alone or in combination. Examples, generated with a working implementation, demonstrate applications to drawing beautification and transformation.
© All rights reserved Kurlander and Feiner and/or ACM Press
Kurlander, David and Feiner, Steven K. (1992): A History-Based Macro by Example System. In: Mackinlay, Jock D. and Green, Mark (eds.) Proceedings of the 5th annual ACM symposium on User interface software and technology November 15 - 18, 1992, Monteray, California, United States. pp. 99-106.
Many tasks performed using computer interfaces are very repetitive. While programmers can write macros or procedures to automate these repetitive tasks, this requires special skills. Demonstrational systems make macro building accessible to all users, but most provide either no visual representation of the macro or only a textual representation. We have developed a history-based visual representation of commands in a graphical user interface. This representation supports the definition of macros by example in several novel ways. At any time, a user can open a history window, review the commands executed in a session, select operations to encapsulate into a macro, and choose objects and their attributes as arguments. The system has facilities to generalize the macro automatically, save it for future use, and edit it.
© All rights reserved Kurlander and Feiner and/or ACM Press
Kurlander, David and Feiner, Steven K. (1991): Editable Graphical Histories: The Video. In: Robertson, Scott P., Olson, Gary M. and Olson, Judith S. (eds.) Proceedings of the ACM CHI 91 Human Factors in Computing Systems Conference April 28 - June 5, 1991, New Orleans, Louisiana. pp. 451-452.
Show list on your website
Join the design elite and advance:
Changes to this page (author)09 Nov 2012: Modified16 Jun 2009: Modified
26 May 2008: Added
26 May 2008: Added
28 Jun 2007: Modified
27 Jun 2007: Modified
28 Apr 2003: Added
Page maintainer: The Editorial Team