Allen CypherPh.D.
Personal Homepage:
http://www.acypher.comCurrent place of employment:
IBM Research, Almaden Allen Cypher's main research interests are programming by demonstration and end-user programming -- giving all computer users capabilities that have traditionally belonged to programmers. He currently works at IBM Research on end-user programming on the Web, and prior to that, he was one of the founders of Stagecast Software. He was in the Advanced Technology Group at Apple Computer for 9 years. His main projects at Apple were Cocoa/KidSim, Eager, and the book "Watch What I Do". He received a B.A. in mathematics from Princeton University in 1975, a Ph.D. in computer science from Yale University in 1980, and spent several years as a post-doc in cognitive science at the University of California, San Diego.
Publications by Allen Cypher (bibliography)
» 2009 «
Cypher, Allen, Lau, Tessa, Nichols, Jeffrey and Dontcheva, Mira (2009): Workshop on end user programming for the web. In: Proceedings of ACM CHI 2009 Conference on Human Factors in Computing Systems 2009. pp. 4779-4782. Available online
In the past several years, there has been a resurgence in research activity in end user programming (EUP), all focused on the web. This work is spread across a variety of institutions and has been published in a variety of conference venues, including CHI, UIST, IUI, and WWW. This workshop will bring these researchers together for a common discussion, with the following goals: establish a sense of community amongst researchers in this area; discuss common problems and lessons learned about doing research in EUP for the web; define a standard corpus of tasks that can be used to evaluate current and future EUP systems; and plan the publication of an edited book on the topic of end user programming for the web.
Copyrights may apply
Lin, James, Wong, Jeffrey, Nichols, Jeffrey, Cypher, Allen and Lau, Tessa A. (2009): End-user programming of mashups with vegemite. In: Proceedings of the 2009 International Conference on Intelligent User Interfaces 2009. pp. 97-106. Available online
Mashups are an increasingly popular way to integrate data from multiple web sites to fit a particular need, but it often requires substantial technical expertise to create them. To lower the barrier for creating mashups, we have extended the CoScripter web automation tool with a spreadsheet-like environment called Vegemite. Our system uses direct-manipulation and programming-by-demonstration techniques to automatically populate tables with information collected from various web sites. A particular strength of our approach is its ability to augment a data set with new values computed by a web site, such as determining the driving distance from a particular location to each of the addresses in a data set. An informal user study suggests that Vegemite may enable a wider class of users to address their information needs.
Copyrights may apply
» 2008 «
Bogart, Christopher, Burnett, Margaret M., Cypher, Allen and Scaffidi, Christopher (2008): End-user programming in the wild: A field study of CoScripter scripts. In: VL-HCC 2008 - IEEE Symposium on Visual Languages and Human-Centric Computing 15-19 September, 2008, Herrsching am Ammersee, Germany. pp. 39-46. Available online
Souza, Clarisse Sieckenius de and Cypher, Allen (2008): Semiotic engineering in practice: redesigning the CoScripter interface. In: Levialdi, Stefano (ed.) AVI 2008 - Proceedings of the working conference on Advanced Visual Interfaces May 28-30, 2008, Napoli, Italy. pp. 165-172. Available online
» 2007 «
Little, Greg, Lau, Tessa A., Cypher, Allen, Lin, James, Haber, Eben M. and Kandogan, Eser (2007): Koala: capture, share, automate, personalize business processes on the web. In: Proceedings of ACM CHI 2007 Conference on Human Factors in Computing Systems 2007. pp. 943-946. Available online
We present Koala, a system that enables users to capture, share, automate, and personalize business processes on the web. Koala is a collaborative programming-by-demonstration system that records, edits, and plays back user interactions as pseudo-natural language scripts that are both human- and machine-interpretable. Unlike previous programming by demonstration systems, Koala leverages sloppy programming that interprets pseudo-natural language instructions (as opposed to formal syntactic statements) in the context of a given web page's elements and actions. Koala scripts are automatically stored in the Koalescence wiki, where a community of users can share, run, and collaboratively develop their "how-to" knowledge. Koala also takes advantage of corporate and personal data stores to automatically generalize and instantiate user-specific data, so that scripts created by one user are automatically personalized for others. Our initial experiences suggest that Koala is surprisingly effective at interpreting instructions originally written for people.
Copyrights may apply
Scaffidi, Christopher, Cypher, Allen, Elbaum, Sebastian G., Koesnandar, Andhy and Myers, Brad A. (2007): Scenario-Based Requirements for Web Macro Tools. In: VL-HCC 2007 - IEEE Symposium on Visual Languages and Human-Centric Computing 23-27 September, 2007, Coeur dAlene, Idaho, USA. pp. 197-204. Available online
» 2005 «
Kandogan, Eser, Haber, Eben, Barrett, Rob, Cypher, Allen, Maglio, Paul P. and Zhao, Haixia (2005): A1: end-user programming for web-based system administration. In: Proceedings of the 2005 ACM Symposium on User Interface Software and Technology 2005. pp. 211-220. Available online
System administrators work with many different tools to manage and fix complex hardware and software infrastructure in a rapidly paced work environment. Through extensive field studies, we observed that they often build and share custom tools for specific tasks that are not supported by vendor tools. Recent trends toward web-based management consoles offer many advantages but put an extra burden on system administrators, as customization requires web programming, which is beyond the skills of many system administrators. To meet their needs, we developed A1, a spreadsheet-based environment with a task-specific system-administration language for quickly creating small tools or migrating existing scripts to run as web portlets. Using A1, system administrators can build spreadsheets to access remote and heterogeneous systems, gather and integrate status data, and orchestrate control of disparate systems in a uniform way. A preliminary user study showed that in just a few hours, system administrators can learn to use A1 to build relatively complex tools from scratch.
Copyrights may apply
Cypher, Allen (2005): A Stagecast Retrospective. In: VL-HCC 2005 - IEEE Symposium on Visual Languages and Human-Centric Computing 21-24 September, 2005, Dallas, TX, USA. p. 14. Available online
» 2001 «
Smith, David Canfield, Cypher, Allen and Tesler, Larry (2001): Novice programming comes of age. In: Lieberman, Henry "Your Wish Is My Command: Programming by Example". Morgan Kaufmann Publishers pp. 7-19
Stagecast Creator combines programming by demonstration and visual before-after rules to enable most eight year old children, and all ten year olds, to create their own interactive stories, games and simulations. In the process, they learn and apply the key concepts of computer programming without using a programming language.
Copyrights may apply
» 2000 «
Smith, David Canfield, Cypher, Allen and Tesler, Lawrence G. (2000): Novice Programming Comes of Age. In Communications of the ACM, 43 (3) pp. 75-81
» 1996 «
Smith, David Canfield, Cypher, Allen and Schmucker, Kurt (1996): Making Programming Easier for Children. In Interactions, 3 (5) pp. 58-67
» 1995 «
Cypher, Allen and Smith, David Canfield (1995): KidSim: End User Programming of Simulations. 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. 27-34. Available online
KidSim is an environment that allows children to create their own simulations. They create their own characters, and they create rules that specify how the characters are to behave and interact. KidSim is programmed by demonstration, so that users do not need to learn a conventional programming language or scripting language. Informal user studies have shown that children are able to create simulations in KidSim with a minimum of instruction, and that KidSim stimulates their imagination.
Copyrights may apply
» 1994 «
Kvavik, Karen H., Karimi, Shifteh, Cypher, Allen and Mayhew, Deborah J. (1994): User-Centered Processes and Evaluation in Product Development. In Interactions, 1 (3) pp. 65-71
The authors describe real-life cases illustrating user-centered design processes in different settings with micro-, macro- and global foci.
Copyrights may apply
Instone, Keith, Cypher, Allen and Unger, Claus (1994): EWHCI '93. In ACM SIGCHI Bulletin, 26 (1) pp. 31-34
Smith, David Canfield, Cypher, Allen and Spohrer, James C. (1994): KidSim: Programming Agents Without a Programming Language. In Communications of the ACM, 37 (7) pp. 54-67
» 1993 «
Cypher, Allen, Halbert, Daniel C., Kurlander, David, Lieberman, Henry, Maulsby, David, Myers, Brad A. and Turransky, Alan (eds.) (1993): Watch What I Do: Programming by Demonstration. Cambridge, MA, MIT Press
View info on Amazon.com or .co.uk
Cypher, Allen (1993): The Practical Use of Macro Recording: A Case Study. In: East-West International Conference on Human-Computer Interaction: Proceedings of the EWHCI93 1993. pp. 203-210.
Macro recording is a practical technique for automating repetitive tasks on computers. The user records a series of actions, and then the computer can re-execute those actions. This paper discusses a variety of macros that were used to assist in a real-life task of editing a book manuscript. The capabilities of current tools are presented, followed by a discussion of how the limitations of these tools restrict current end users, and how some of these limitations can be overcome.
Copyrights may apply
» 1991 «
Cypher, Allen (1991): EAGER: Programming Repetitive Tasks by Example. 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. 33-39. Available online
Eager is a Programming by Example system for the HyperCard environment. It constantly monitors the user's activities, and when it detects an iterative pattern, it writes a program to complete the iteration. Programming by Example systems create generalized programs from examples provided by the user. They are faced with the problem of how to display these abstract procedures. Eager utilizes a new interface technique, called anticipation, to show how it has generalized: when it detects a repetitive activity, it highlights menus and objects on the screen to indicate what it expects the user to do next. As users continue to perform their activity, they will notice that the objects they are about to select have already been highlighted by the system. When it becomes apparent that Eager knows how to perform the task correctly, they can tell Eager to complete the task for them. The use of anticipation allows Eager to interfere minimally with the users' normal activities.
Copyrights may apply
Myers, Brad A., Cypher, Allen, Maulsby, David, Smith, David Canfield and Shneiderman, Ben (1991): Demonstrational Interfaces: Coming Soon?. 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. 393-396. Available online
A "demonstrational interface" watches while the user executes conventional direct manipulation actions, creating a general abstraction from the specific examples. The panel will discuss how demonstrational interfaces can be used, and when and whether they will become more common.
Copyrights may apply
Cypher, Allen (1991): EAGER: Programming Repetitive Tasks by Example. 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. 445-446. Available online
Cypher, Allen, Grudin, Jonathan, MacLean, Allan, Naimark, Michael, Okada, Ken-ichi, Patel, Mukesh, Press, Larry, Price, Blaine, Tarantola, Carlo and Welles, Marilyn (1991): The First Moscow International Workshop on Human-Computer Interaction. In ACM SIGCHI Bulletin, 23 (4) pp. 11-12
The First Moscow International Workshop on Human-Computer Interaction gathered approximately 15 non-Soviet and 75 Soviet computer professionals for a week-long workshop at the International Center for Scientific and Technical Information (ICSTI) in Moscow. At this workshop, 50 paper presentations and 25 product and prototype demos were presented. This report provides a brief description of the workshop and opportunities for future interaction.
Copyrights may apply
Cypher, Allen (1991): Customizing Application Programs. In: First Moscow International HCI91 Workshop Proceedings 1991. pp. 152-157.
Users of personal computers often perform a large number of individual steps to carry out routine tasks. We discuss approaches to simplifying routine tasks, and then describe in detail a program which automates iterative tasks.
Copyrights may apply
» 1983 «
Bannon, Liam, Cypher, Allen, Greenspan, Steven and Monty, M. L. (1983): Evaluation and Analysis of Users' Activity Organization. In: Smith, Raoul N., Pew, Richard W. and Janda, Ann (eds.) Proceedings of the ACM CHI 83 Human Factors in Computing Systems Conferenc December 12-15, 1983, Boston, Massachusetts, United States. pp. 54-57.
Our analyses of the activities performed by users of computer systems show complex patterns of interleaved activities. Current human - computer interfaces provide little support for the kinds of problems users encounter when attempting to accomplish several different tasks in a single session. In this paper we develop a framework for discussing the characteristics of activities, in terms of activity structures, and provide a number of conceptual guidelines for developing an interface which supports activity coordination. The concept of a workspace is introduced as a unifying construct for reducing the mental workload when switching tasks, and for supporting contextually-driven interpretations of the users' activity structures.
Copyrights may apply
SHOW THIS LIST ON YOUR HOMEPAGE
What do YOU think?
Give us your opinion! Do you have any comments/additions
that you would like other visitors to see?
You say:
Mar 21st, 2010
Changes to this page (author)
17 Feb 2010: Enabled abstracts to be shown on Allen Cypher's author page.18 Aug 2009: Author was edited 18 Aug 2009: Author was edited
17 Jun 2009: Author was edited
17 Jun 2009: Author was edited
16 Jun 2009: Author was edited
16 Jun 2009: Author was edited
02 Jun 2009: Author was edited
09 May 2009: Author was edited
01 May 2009: Author was added to the bibliography (approved by an editor)
04 Nov 2007: Page was edited
25 Jul 2007: Author was edited
25 Jul 2007: Author was edited
27 Jun 2007: Author was edited
24 Jun 2007: Author was edited
23 Jun 2007: Author was edited
19 Jun 2007: Author was edited
11 Jun 2007: Author was edited
28 Apr 2003: Added the author to the bibliography