Programming-by-Demonstration for Behavior-based User Interface Customization

Programming by demonstration (PBD) is a powerful tool for creating new user interface controls by capturing user behavior. A programming by demonstration system watches what the user does, infers the user’s intent, and on request, performs actions on the user’s behalf. Personal Wizards is a desktop programming by demonstration system running on Windows platforms. We describe the Personal Wizards PBD system, and speculate on several ways in which existing user interfaces could be customized with new controls.
Keywords: Programming by demonstration, user interface customization, adaptive interfaces, machine learning customize user interfaces.

By: Lawrence D. Bergman, Tessa A. Lau, Vittorio Castelli, Daniel Oblinger

Published in: RC23116 in 2004


This Research Report is available. This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article (e.g., payment of royalties). I have read and understand this notice and am a member of the scientific community outside or inside of IBM seeking a single copy only.


Questions about this service can be mailed to .