Number of co-authors:50
Number of publications with 3 favourite co-authors:Jeffrey Nichols:Tessa Lau:Mira Dontcheva:
Allen Cypher's 3 most productive colleagues in number of publications:Ben Shneiderman:225Brad A. Myers:154Jonathan Grudin:105
go to course
Get Your First Job as a UX or Interaction Designer
go to course
Information Visualization: Getting Dashboards Right
90% booked. Starts in 5 days
Marc Hassenzahl explains the fascinating concept of User Experience and Experience Design. Commentaries by Don Norman, Eric Reiss, Mark Blythe, and Whitney Hess
User Experience and Experience Design !
Our Latest Books
The Glossary of Human Computer Interaction
by Mads Soegaard and Rikke Friis Dam
The Social Design of Technical Systems: Building technologies for communities. 2nd Edition
by Brian Whitworth and Adnan Ahmad
Gamification at Work: Designing Engaging Business Software
by Janaki Mythily Kumar and Mario Herger
The Social Design of Technical Systems: Building technologies for communities
by Brian Whitworth and Adnan Ahmad
The Encyclopedia of Human-Computer Interaction, 2nd Ed.
by Mads Soegaard and Rikke Friis Dam
Personal Homepage: http://www.acypher.com
Current 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)
Li, Ian, Nichols, Jeffrey, Lau, Tessa, Drews, Clemens and Cypher, Allen (2010): Here's what i did: sharing and reusing web activity with ActionShot. In: Proceedings of ACM CHI 2010 Conference on Human Factors in Computing Systems 2010. pp. 723-732. http://doi.acm.org/10.1145/1753326.1753432
ActionShot is an integrated web browser tool that creates a fine-grained history of users' browsing activities by continually recording their browsing actions at the level of interactions, such as button clicks and entries into form fields. ActionShot provides interfaces to facilitate browsing and searching through this history, sharing portions of the history through established social networking tools such as Facebook, and creating scripts that can be used to repeat previous interactions at a later time. ActionShot can also create short textual summaries for sequences of interactions. In this paper, we describe the ActionShot and our initial explorations of the tool through field deployments within our organization and a lab study. Overall, we found that ActionShot's history features provide value beyond typical browser history interfaces.
© All rights reserved Li et al. and/or their publisher
Scaffidi, Christopher, Bogart, Christopher, Burnett, Margaret M., Cypher, Allen, Myers, Brad A. and Shaw, Mary (2010): Using traits of web macro scripts to predict reuse. In J. Vis. Lang. Comput., 21 (5) pp. 277-291. http://dx.doi.org/10.1016/j.jvlc.2010.08.003
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. http://doi.acm.org/10.1145/1520340.1520739
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.
© All rights reserved Cypher et al. and/or ACM Press
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. http://doi.acm.org/10.1145/1502650.1502667
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.
© All rights reserved Lin et al. and/or their publisher
Scaffidi, Christopher, Bogart, Christopher, Burnett, Margaret M., Cypher, Allen, Myers, Brad A. and Shaw, Mary (2009): Predicting reuse of end-user web macro scripts. In: IEEE Symposium on Visual Languages and Human-Centric Computing - VL/HCC 2009 20-24 September, 2009, Corvallis, OR, USA. pp. 93-100. http://doi.ieeecomputersociety.org/10.1109/VLHCC.2009.5295290
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. http://dx.doi.org/10.1109/VLHCC.2008.4639056
de Souza, Clarisse Sieckenius 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. http://doi.acm.org/10.1145/1385569.1385597
Scaffidi, Christopher, Cypher, Allen, Elbaum, Sebastian G., Koesnandar, Andhy and Myers, Brad A. (2008): Using scenario-based requirements to direct research on web macro tools. In J. Vis. Lang. Comput., 19 (4) pp. 485-498. http://dx.doi.org/10.1016/j.jvlc.2008.04.002
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. http://doi.acm.org/10.1145/1240624.1240767
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.
© All rights reserved Little et al. and/or ACM Press
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. http://doi.ieeecomputersociety.org/10.1109/VLHCC.2007.47
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. http://doi.acm.org/10.1145/1095034.1095070
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.
© All rights reserved Kandogan et al. and/or ACM Press
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. http://doi.ieeecomputersociety.org/10.1109/VLHCC.2005.9
Smith, David Canfield, Cypher, Allen and Tesler, Larry (2001): Novice programming comes of age. In: Lieberman, Henry (ed.). "Your Wish Is My Command: Programming by Example". San Francisco, CA: Morgan Kaufmann Publisherspp. 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.
© All rights reserved Smith et al. and/or Morgan Kaufmann Publishers
DiGiano, Chris, Kahn, Kenneth M., Cypher, Allen and Smith, David Canfield (2001): Integrating Learning Supports into the Design of Visual Programming Systems. In J. Vis. Lang. Comput., 12 (5) pp. 501-524.
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. http://doi.acm.org/10.1145/330534.330544
Heger, Nikolaus, Cypher, Allen and Smith, David Canfield (1998): Cocoa at the Visual Programming Challenge 1997. In J. Vis. Lang. Comput., 9 (2) pp. 151-169.
Smith, David Canfield, Cypher, Allen and Schmucker, Kurt (1996): Making Programming Easier for Children. In Interactions, 3 (5) pp. 58-67. http://www.acm.org/pubs/articles/journals/interactions/1996-3-5/p58-smith/p58-smith.pdf
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. http://www.acm.org/sigchi/chi95/proceedings/papers/ac1bdy.htm
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.
© All rights reserved Cypher and Smith and/or ACM Press
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. http://www.acm.org/pubs/articles/journals/interactions/1994-1-3/p65-kvavik/p65-kvavik.pdf
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.
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.
© All rights reserved Cypher and/or Intl. Centre for Scientific And Technical Information
Cypher, Allen (1993): Watch What I Do: Programming by Demonstration. Cambridge, MA, The MIT Press
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. http://www.acm.org/pubs/articles/proceedings/chi/108844/p33-cypher/p33-cypher.pdf
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.
© All rights reserved Cypher and/or ACM Press
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. http://www.acm.org/pubs/articles/proceedings/chi/108844/p393-myers/p393-myers.pdf
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.
© All rights reserved Myers et al. and/or ACM Press
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. http://www.acm.org/pubs/articles/proceedings/chi/108844/p445-cypher/p445-cypher.pdf
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.
© All rights reserved Cypher et al. and/or ACM Press
Cypher, Allen (1991): Customizing Application Programs. In: First Moscow International HCI91 Workshop Proceedings 1991. pp. 152-157.
Cypher, Allen (1986): The structure of users' activities. In: Norman, Donald A. and Draper, Stephen W. (eds.). "User Centered System Design: New Perspectives on Human-Computer Interaction". Hillsdale, NJ: Lawrence Erlbaum Associatespp. 243-264
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.
© All rights reserved Bannon et al. and/or ACM Press
Join our community and advance:
Page maintainer: The Editorial Team