CS 584: Human Factors of Programming Languages, Winter 2012
Instructor:
Dr. Burnett
Office: KEC 3051
E-Mail: burnett at eecs dot oregonstate dot edu
Dr. Burnett's Office Hours are
listed on my home
page
Course Objectives
CS 584, Human Factors of Programming Languages, is a
four-credit
course for graduate students. Programming languages today have been
designed primarily with machine efficiency in mind, with little
attention given to the efficiency of the human doing the programming.
Since labor costs far exceed machine costs in software development,
this past way of designing programming languages is no longer
appropriate. This course presents basic principles and evaluation
methods for designing and evaluating programming languages that
emphasize human productivity and problem solving.
The theme for this term is "Consumer Programming
Languages/Environments". Students will each pick their own "consumer",
whether it be a particular professional programmer, a business owner
doing their own web applications, a school teacher setting up
educational simulations, or whatever. This consumer will motivate
(almost) everything the student does all term. Finally, by the end of
the term, the student will present a design of a (portion of) a
language or environment for this consumer.
The course will focus on the following topics, drawing from
both
emerging research and from fundamentals established over the last 20+
years. Therefore, students should come away with a fundamental understanding of:
- What is known about human factors in programming.
- Techniques for evaluating programming languages/environments from a human factors perspective.
- Language design techniques and problems for programming languages for humans
- Case studies of a few languages/environments that have been designed with human factors of particular consumers as the primary design goal
- Dr. Burnett's projects as case studies: Topics from end-user programming and end-user software engineering
- Critical thinking about human factors in programming.
- Critical thinking about doing quality research relating to human factors in programming.
Grading
Your grade will be computed as follows:
- 25% Homework. (Late policy: No late homeworks accepted.)
- 25% Presentations
and other in-class contributions (Unless otherwise stated, each
presentation should cover at least 4 discussion questions, plus 1
application specific to your particular "consumer". There will be a
firm time limit, including discussion time, on each presentation.)
- 25% "hands-on test" of ability to evaluate programming
languages/environments from a human perspective. Your task will be to turn in a written
evaluation of the human aspects of some projects I will assign to you by applying what you
have learned in CS 584.
- 25% Final project
Prerequisites
Graduate standing in CS and interest in programming language design issues,
or permission of the instructor. Senior undergraduates who are
interested in taking this course as an elective should discuss this with Dr. Burnett
during her office hours.
Frequency
The course is offered only every second year at most.
Education Methods
This is not a lecture-oriented class. I will do some lectures, but the class is very active-learning based. Thus, it will be quite critique-oriented, with student presentations and analyses regarding research papers and with a strong element of group critiques as work begins to emerge.
No textbook -- we will be reading papers instead. No programming is expected, except a little of it might come in handy in the final project.
Students should approach the course with the attitude that they get out of it what they put into it.
Tentative Schedule (subject to change)
- Week 1 (week of 1/9):
- Tu: Dr. Burnett: Intro to the class, intro to research on people's success/failures in software development, good research vs. bad research in this area. Type: HCI foundation/technique.
- Th: Class contribution due.
- Tu, Th: Dr. Burnett: A few theories that can be applied. Introduction to how memory works. Type: HCI foundation/technique.
- Week 2 (week of 1/16):
- Monday 12:00 noon: HW #2 is due.
- Tu: (class ran the full 2 hours, making up for part of a class missed in week #4).
Vasanth, Sanchit: Software Design: Theoretical Approaches (ch 3, Detienne 2002). Omit Cognitive Dimensions (we will do them in more depth later). Type: HCI foundation/technique.
Faezeh: Burnett et al. 2010: ESEM'10: Gender differences across programming populations. Download from ACM Digital Library. Type: People/tasks.
- Th:
Ali : Subrahmaniyan et al. 2008: CHI'08: Testing vs. Code Inspection... (gender differences in EUPs debugging). Download from ACM Digital Library. Type: People/tasks.
Balaji: Jill Cao CHI'10: End-user mashup programming: Through the design lens. Download from ACM Digital Library. Type: People/tasks.
Nikhil: Grigoreanu et al. 2010: CHI'10 paper:
A strategy-centric approach to the design of end-user debugging tools. Type: Case study.
- Friday midnight: Project proposal due to Dr. Burnett's email
- Week 3 (week of 1/23): Note: this week we will use the full 2-hour sessions both days. (This makes up for almost half the classes missed in week 4)
- Week 4 (week of 1/30):
- Thurs midnight -- HW #pre-design: User research due date
- Tu, Th: No class -- Dr. Burnett attending AFOSR and NSF research meetings. (We're making up for these in weeks 2, 3, and 10)
- Week 5 (week of 2/6):
- Mon noon: HW #4 due. (Applying 3-4 Cognitive Dimensions (CDs) to your project.)
- Tu: Charlie, Islam: Green and Petre 1996: Cognitive dimensions (CDs). See papers list
below for download information. Type: HCI foundation/technique. Note: no discussion questions are required for this paper. Instead, you (and each of the presenters) should apply 3-4 CDs to your project.
Pengfei: Alan Blackwell, First steps in programming: a rationale for attention investment models, Proc. IEEE Human-Centric Computing Languages and Environments, Arlington, VA, Sept. 3-6, 2002, 2-10.
- Wed noon: HW #5 due. (Applying 3-4 Representation Benchmarks (RBs) to your project.)
- Th: Bharatwaj: One consumer -- the end-user programmer of Excel spreadsheets (Peyton Jones et al. 2003), with improvements tied to Attention Investment, Cognitive Dimensions, and Representation Benchmarks Type: Case study.
- Th: Dr. Burnett: Yang et al. 1997: Representation benchmarks. See papers list below for download information. Note: no discussion questions are required for this paper. Instead, you should apply 3-4 Benchmarks to your project. Type: HCI foundation/technique.
- Week 6: (week of 2/13)
- Mon noon: HW #6 is due.
- Tu: Design Gallery #1 (user research Insights and Concepts). Poster content due electronically at midnight.
- Th: Vasanth: Ko et al. 2004, Learning Barriers Type: HCI foundation/technique,
Alex: Cao et al. 2011, Idea Garden (VLHCC'11), Type: HCI foundation/technique,
Jonathan: Scaffidi et al. 2009, Topes, EUD'09. Type: Case study.
- Week 7: (week of 2/20)
- Mon noon: HW #7 is due.
- Tu:
Mike: [Eisenberg et al. 2010] This is about Jeff Stylos's system on helping programmers reuse from big libraries of APIs Type: Case study,
Darren: [Abraham and Erwig 2004]: This is about UCheck, which can be viewed as an approach to types for end-user languages. Type: Case study
Nikhil: [Chang et al. 2010] Tsung-Hsiang Chang, Tom Yeh, and Robert C. Miller, GUI Testing Using Computer Vision, ACM Conference on Human Factors in Computing Systems, Atlanta, GA, Apr. 10-15, 2010, pp. 1535-1544. They call it Sikuli Test. Uses computer vision compiled by tester demo's to generate visual test scripts by demonstration. Type: Case study
- Th:
Sanchit: Burnett et al. 2006, "An Integrated Software Engineering Approach for End-User Programmers": WYSIWYT, assertions, fault localization in spreadsheets. Type: Case study,
Faezeh: [Bogart et al. 2008] A paper on how people really used CoScripter, with some emphasis on types of reuse. Type: People and Tasks
Arwa: [Subrahmaniyan et al. Softvis '08] This is a case study of an accountant using a spreadsheet debugging tool that aims to support code inspection Type: People and Tasks
- Week 8: (week of 2/27)
- Mon noon: HW #8 is due.
- Tu:
Islam: [Hundhausen et al. 2006] Christopher Hundhausen, Sean Farley, and Jonathan Brown, Can direct manipulation lower the barriers to programming and promote positive transfer to textual programming? An experimental study, IEEE Symposium on Visual Languages and Human-Centric Computing, Brighton, UK, Sept. 4-8, 2006, pp. 157-164. Type: People/Tasks, also Case Study,
Charlie: Zimmerman et al. 2007: a mixed-initiative way for end users to program.
Pengfei: [Segal 2007]: on computational scientists' attitudes toward programming Type: People and Tasks
- Th: Design Gallery #2 (emerging Prototype plus use of your selected 1-2 Intellectual Techniques). Poster content due electronically at midnight.
- Week 9 (week of 3/5): Final project presentations and hands-on tests.
- Tu: Final project presentations (@25 minutes including QA) by: Islam, Jonathan, nobody
- Th: Final project presentations (@25 minutes including QA) by: Pengfei, Ali, Arwa
- Week 10 (week of 3/12): Final project presentations and hands-on tests. These will require the entire 2 hours both days to fit everything in, so this makes up for the remaining classes missed in week 4.
- Tu: Final project presentations (@25 minutes including QA) by: Iftekar, Darren, Vasanth, Faezeh
- Th: Final project presentations (@25 minutes including QA) by: Bharatwaj, Charlie, Alex, Sanchit
- Finals week (2:00 pm Mon 3/19): Final project presentations and hands-on tests.
- Final project presentations(@25 minutes including QA) by: Nikhil, Sheela, Balaji, Mike
An Overview of Papers We Might Cover
We will ultimately cover a subset of a superset of this group, but it gives you an idea of the kinds of papers we're covering. We'll probably read 6-7 of the Foundations papers, and the rest will be a fairly equal division between the remaining two classifications.
How to obtain these papers: Unless otherwise specified, you can obtain them from the ACM Digital Library or the IEEE Digital Library. OSU has subscriptions to both, so all you have to do is
(1) be using an OSU IP# and you can just go to the ACM Digital Library or IEEE Xplore directly, or
(2) if you're working from elsewhere, go to the OSU Library e-journals access page,
make your way to the ACM Digital Library or the IEEE Digital Library, and be ready to type in your ONID username and password.
HCI Foundations
- Beckwith dissertation theory chapter (2007) on gender differences
- [Blackwell 2002] Alan Blackwell, First steps in programming: a rationale for attention investment models, Proc. IEEE Human-Centric Computing Languages and Environments, Arlington, VA, Sept. 3-6, 2002, 2-10. This is the best and most up-to-date paper so far on attention investment.
- [Cao et al. 2011] Jill Cao, Scott Fleming, and Margaret Burnett. An exploration of design opportunities for `gardening' end-user programmers' ideas, IEEE Symposium on Visual Languages and Human-Centric Computing, Pittsburgh, PA, Sept. 18-22, 2011, pp. 35-42.
- [Coughlan and Johnson 2006] Tim Coughlan and Peter Johnson, Interaction in creative tasks: ideation, representation, and evaluation in composition, ACM Conference on Human Factors in Computing Systems, Montreal, Canada, Apr 22-27, 2006, pp. 531-540. Good paper! Its about the design of tools to support creative activities. Note: programming is a creative endeavor -- why dont programming environments/languages use these ideas?
- Detienne chapters 3 and 6. (These will be handed out in class as needed.)
- Green/Petre 1996, Cognitive dimensions. Take the 1996 JVLC paper. (Other optional resources on Cognitive dimensions are available too.)
- Grigoreanu et al., Sensemaking and debugging.
- Pane/Myers 2006, Natural Programming.
- [Spool et al. 2004] Spool, J., Profetti, C., and Britain, D., Designing for the scent of information, User Interface Eng. (2004). Will be handed out in class as needed.
- Yang et al., Representation benchmarks. Go to Dr. Burnett's home page/Papers link. It's paper #8, 1997.
- TBA, Personas (maybe)
People/Tasks/Situations
- [Alankus et al. 2010] Gazihan Alankus, Amanda Lazar, Matt May, and Caitlin Kelleher, Towards Customizable Games for Stroke Rehabilitation, ACM Conference on Human Factors in Computing Systems, Atlanta, GA, Apr. 10-15, 2010, pp. 2113-2122.
- [Bogart et al. 2008] Christopher Bogart, Margaret Burnett, Allen Cypher, and Christopher Scaffidi,
End-User Programming in the Wild: A Field Study of CoScripter Scripts,
IEEE Symposium on Visual Languages and Human-Centric Computing, Herrsching am Ammersee, Germany, Sept. 2008, pp. 39-46.
- Burnett et al., 2010, gender differences across programming populations.
- Cao et al., 2010, End-user mashup programming: Through the design lens (CHI'10).
- [Cherubini et al. 2007] Mauro Cherubini, Gina Venolia, Rob DeLine, Andrew Ko, Lets go to the whiteboard: How and why software developers use drawing, ACM Conference on Human Factors in Computing Systems, San Jose, CA, Apr 28-May 3, 2007, pp. 557-566.
- [Ellis et al. 2007] Brian Ellis, Jeffrey Stylos, and Brad Myers, The factory pattern in API design: A usability evaluation, International Conference on Software Engineering, Minneapolis, MN, May 20-26, 2007, pp. 302-311. The commonly held belief that the Factory Pattern is better gets debunked empirically here. They then go into a fair amount of CD analysis to see why they got this result.
- Gilmore/Green '84: What/how
- [Hundhausen et al. 2006] Christopher Hundhausen, Sean Farley, and Jonathan Brown, Can direct manipulation lower the barriers to programming and promote positive transfer to textual programming? An experimental study, IEEE Symposium on Visual Languages and Human-Centric Computing, Brighton, UK, Sept. 4-8, 2006, pp. 157-164.
- Kissinger et al., AVI'06 on what people want to know
- [Ko and Chilana 2010] Andrew Ko and Parmit Chilana, How Power Users Help and Hinder Open Bug Reporting, ACM Conference on Human Factors in Computing Systems, Atlanta, GA, Apr. 10-15, 2010, pp. 1665-1674.
- Ko et al., ICSE'05
- [Ko et al. 2004] Andrew Ko, Brad Myers, and Htet Htet Aung, Six learning barriers in end-user programming systems, IEEE Symposium on Visual Languages and Human-Centric Computing, Sept. 27-30, 2004, 199-206.
- Lawrance et al., Using Information Scent to Model the Dynamic Foraging Behavior of Programmers in Maintenance Tasks,
Joseph Lawrance, Rachel Bellamy, Margaret Burnett, Kyle Rector,
ACM CHI 2008, Florence, Italy, April 2008. (CHI'08)
- [Leshed et al. 2008] Gilly Leshed, Eben Haber, Tara Matthews, Tessa Lau, CoScripter: Automating & Sharing How-To Knowledge in the Enterprise, CHI'08. CoScripter is an end-user language for web scripting. The paper is about how people use it.
- [Ozenc et al. 2010] Fatih Kursat Ozenc, Miso Kim, John Zimmerman, Stephen Oney, Brad Myers, How to Support Designers in Getting Hold of the Immaterial Material of Software, ACM Conference on Human Factors in Computing Systems, Atlanta, GA, Apr. 10-15, 2010, pp. 2513-2522.
- Petre, What experts want
- [Prabaker et al. 2006] M. Prabaker, L. Bergman, and V. Castelli, An evaluation of using programming by demonstration and guided walkthrough techniques for authoring and utilizing documentation, ACM Conference on Human Factors in Computing Systems, Montreal, Canada, Apr 22-27, 2006, pp. 241-250. This is their work on documenting-by-demonstration. ie, theyre documenting the procedure of how to do something on the computer. Handles multiple examples, if-thens, editing and annotation. There is an evaluation with users with thought-provoking results.
- [Rashid et al. 2006] Al Mamunur Rashid, Kimberly Ling, Regina Tassone, Paul Resnick, Robert Kraut, and John Riedl, Motivating participation by displaying the value of contribution, ACM Conference on Human Factors in Computing Systems, Montreal, Canada, Apr 22-27, 2006, pp. 955-958. So, maybe this could be used for Reward motivating end-user programmers to contribute to a repository of code, a la open source...
- [Scaffidi et al. 2006] Christopher Scaffidi, Andrew Ko, Brad Myers, and Mary Shaw, Dimensions characterizing programming feature usage by information workers, IEEE Symposium on Visual Languages and Human-Centric Computing, Brighton, UK, Sept. 4-8, 2006, pp. 59-62. This is their study of 800+ InfoWeek readers. These were mostly managers and non-programmers, although about 20+% were IT people of some sort.
- [Segal 2007] Judith Segal, Some problems of professional end user developers, IEEE Symposium on Visual Languages and Human-Centric Computing, Couer dAlene, Idaho, Sept. 23-27, 2007, pp. 111-118. Field studies with financial mathematicians, planetary/space scientists, and biologists.
- Shirky: Situated Programming essay
- Soloway/Erlich
- [Stylos and Myers 2007] Jeffrey Stylos and BradMyers, Mapping the space of API design decisions, IEEE Symposium on Visual Languages and Human-Centric Computing, Couer dAlene, Idaho, Sept. 23-27, 2007, pp. 50-57. Design decisions include eg, design pattern choices, naming classes, class design, ...
- [Stylos and Clarke 2007] Jeffrey Stylos and Steven Clarke, Usability implications of requiring parameters in objects constructors, International Conference on Software Engineering, Minneapolis, MN, May 20-26, 2007, pp. 529-538. Big picture theme: testing each API is too expensive; lets instead learn about API design choices that can inform our design of APIs in general.
- [Subrahmaniyan et al. 2008] Neeraja Subrahmaniyan, Laura Beckwith, Valentina Grigoreanu, Margaret Burnett, Susan Wiedenbeck, Vaishnavi Narayanan, Karin Bucht, Russell Drummond, and Xiaoli Fern, Testing vs. Code Inspection vs. ... What Else? Male and Female End Users Debugging Strategies, ACM Conference on Human-Computer Interaction, April 2008.
- [Tullio et al. 2007] Joe Tullio, Anind Dey, Jason Chalecki, James Fogarty, How it works: A field study of non-[technical users interacting with an intelligent system, ACM Conference on Human Factors in Computing Systems, San Jose, CA, Apr 28-May 3, 2007, pp. 31-40. End users perceptions of how a machine-learned program works. A field study with 8 workers. Participants early models (which varied a lot between participants!) were remarkably persistent even given counterevidence. Still, their smaller misconceptions did give way to feedback. Participants sometimes did a good job of guessing the machine learning algorithms (in lay terms). Used a series of semi-structured interviews over time, and also surveys.
- A. Marie Vans, Anneliese von Mayrhauser, and Gabriel Somlo. Program understanding behavior during corrective maintenance of large-scale software. International Journal of Human-Computer Studies, Academic Press Ltd., 1999, 51, 31-70.. Type: HCI foundation/technique.
- [Zheng et al. 2006] Q. Zheng, K. Booth, and J. McGrenere, Co-authoring with structured annotations, ACM Conference on Human Factors in Computing Systems, Montreal, Canada, Apr 22-27, 2006, pp. 131-140. I see this as being relevant to EUSE and perhaps allowing the user to explain or supporting collaborative eu development/debugging/maintenance of software.
Case Studies of Languages/Tools for People
- [Abraham and Erwig 2004] Robin Abraham and Martin Erwig. Header and unit inference for spreadsheets through spatial analyses, IEEE Symposium on Visual Languages and Human-Centric Computing, Sept. 27-30, 2004, 165-172. Describes the design and implementation of a unit and header inference system. Several heuristic algorithms are involved, such as "fence identification", content-based cell classification, region-based cell classification, and footer-to-core expansion.
- [Abraham and Erwig 2007] Robin Abraham and Martin Erwig, A type system based on end-user vocabulary IEEE Symposium on Visual Languages and Human-Centric Computing, Couer dAlene, Idaho, Sept. 23-27, 2007, pp. 215-222. Did a think-aloud with UCheck on some teachers. The teachers basically were able to use UCheck to find and fix errors, but they had some difficulty tracking down errors that manifested themselves in other cells sometimes. Thus, the authors added an ability to spot irregularities in formula regions (eg, concavities, holes, etc.) as an addition to the fault localization they already do.
- [Assogba and Donath 2010] Yannick Assogba and Judith Donath, Share: A Programming Environment for Loosely Bound Cooperation, ACM Conference on Human Factors in Computing Systems, Atlanta, GA, Apr. 10-15, 2010, pp. 961-970.
- Beckwith et al., VLHCC'05 on software designs to reduce gender gaps
- [Boshernitsan et al. 2007] Marat Boshernitsan, Susan Graham, Marti Hearst, Aligning development tools with the way programmers think about code changes, ACM Conference on Human Factors in Computing Systems, San Jose, CA, Apr 28-May 3, 2007, pp. 567-576. A visual transformation language that allows programmers to update their programs in significant ways.
- [Bragdon et al. 2010] Andrew Bragdon, Robert Zeleznik, Steven P. Reiss, Suman Karumuri, William Cheung, Joshua Kaplan, Christopher Coleman, Ferdi Adeputra, Joseph J. LaViola Jr., Code Bubbles: A Working Set-based Interface for Code Working Set-based Interface for Code Understanding and Maintenance, ACM Conference on Human Factors in Computing Systems, Atlanta, GA, Apr. 10-15, 2010, pp. 2503-2512. See also the 8-minute video at codebubbles.org
- Burnett et al., end-user software engineering (CACM 2004)
- [Burnett et al. 2006] Margaret Burnett, Gregg Rothermel, and Curtis Cook, "An Integrated Software Engineering Approach for End-User Programmers", in End User Development, (H. Lieberman, F. Paterno, and V. Wulf, eds.), Springer, 87-113, 2006. You can download this from Dr. Burnett's papers page. It is #12 under 2006.
- [Chang et al. 2010] Tsung-Hsiang Chang, Tom Yeh, and Robert C. Miller, GUI Testing Using Computer Vision, ACM Conference on Human Factors in Computing Systems, Atlanta, GA, Apr. 10-15, 2010, pp. 1535-1544.
- Clarke, using personas in API design
- [Dixon and Fogarty 2010] Morgan Dixon and James Fogarty, Prefab: Implementing Advanced Behaviors Using Pixel-Based Reverse Engineering of Interface Structure, ACM Conference on Human Factors in Computing Systems, Atlanta, GA, Apr. 10-15, 2010, pp. 1525-1534. Meaty paper -- no extra reading required when presenting this one.
- [Eisenberg et al. 2010] Daniel S. Eisenberg, Jeffrey Stylos, Andrew Faulring, Brad A. Myers, Using Association Metrics to Help Users Navigate API Documentation, 2010 IEEE Symposium on Visual Languages and Human-Centric Computing, 2010.
- [Faaborg and Lieberman 2006] Alexander Faaborg and Henry Lieberman, A goal-oriented web browser, ACM Conference on Human Factors in Computing Systems, Montreal, Canada, Apr 22-27, 2006, pp. 751-760. Programming by example based on goals.
- [Fernaeus and Tholander 2006] Ykva Fernaeus and Jakob Tholander , Finding design qualities in a tangible programming space, ACM Conference on Human Factors in Computing Systems, Montreal, Canada, Apr 22-27, 2006, pp. 447-456. This is a tangible (ie with physical objects) programming environment for children to collaboratively construct screen-based programs.
- [Grigoreanu et al. 2010] A strategy-centric approach to the design of end-user debugging tools at CHI'10. Supports "to-do listing" in debugging.
- [Kelleher et al. 2007] Caitlin Kelleher, Randy Pausch, Sara Kiesler, Storytelling Alice motivates middle school girls to learn computer programming, ACM Conference on Human Factors in Computing Systems, San Jose, CA, Apr 28-May 3, 2007, pp. 1455-1464.
- [Ko and Myers 2004] Andrew Ko and Brad Myers, Designing the Whyline: A Debugging Interface for Asking Questions about Program Behavior, ACM Conference on Human Factors in Computing Systems, Vienna, Austria, Apr 24-29, 2004, pp. 151-158. The WhyLine. Very interesting work. Really helped debugging.
- Ko et al. 2010, End-user software engineering (ACM Computing Surveys 2010).
- [Lee et al. 2010] Brian Lee, Savil Srivastava, Ranjitha Kumar, Ronen Brafman, Scott R. Klemmer, Designing with Interactive Example Galleries, ACM Conference on Human Factors in Computing Systems, Atlanta, GA, Apr. 10-15, 2010, pp. 2257-2268.
- [Li et al. 2010] Ian Li, Jeffrey Nichols, Tessa Lau, Clemens Drews, and Allen Cypher, Here's What I Did: Sharing and Reusing Web Activity with ActionShot, ACM Conference on Human Factors in Computing Systems, Atlanta, GA, Apr. 10-15, 2010, pp. 723-732.
- [Liu and Li 2007] Alan Liu and Yang Li, BrickRoad: A light-weight tool for spontaneous design of location-enhanced applications, ACM Conference on Human Factors in Computing Systems, San Jose, CA, Apr 28-May 3, 2007, pp. 295-298. I see this as end-user soft. eng. (design stage) for designers at an early stage. Its programming to set up Wizard of Oz experiments, so that they can evaluate their design concepts with human subjects. They do _not_ specify any application logic with this tool -- its strictly for design ideas.
- [Moraveji et al. 2007] Neema Moraveji, Jason Li, Jiarong Ding, Patrick OKelley, Suze Woolf, Comicboarding: Using comics as proxies for participatory design with children, ACM Conference on Human Factors in Computing Systems, San Jose, CA, Apr 28-May 3, 2007, pp. 1371-1374. This technique elicited design ideas very well, even for reluctant children. I think the details of how they did it also made a big difference. Food for thought on how to elicit designs from timid end users (eg, females?) in end-user software engineering design. Particularly interesting from a gender perspective, given Kellehers results about storytelling being effective at motivating females.
- [Myers et al. 2006] Brad Myers, David Weitzman, Andrew Ko, and Duen Horng Chau, Answering why and why not questions in user interfaces, ACM Conference on Human Factors in Computing Systems, Montreal, Canada, Apr 22-27, 2006, pp. 397-406. Very cool. Why didnt it fix my spelling error this time? Or, why did it? Etc.
- [Nichols et al. 2006] Jeffrey Nichols, Brad Myers, and Brandon Rothrock, UNIFORM: Automatically generating consistent remote control user interfaces, ACM Conference on Human Factors in Computing Systems, Montreal, Canada, Apr 22-27, 2006, pp. 611-620. Good paper! Its about automatically creating personally uniform remote controls on your PDA.
- [Pane et al. 2002] J.F. Pane, B.A. Myers, and L.B. Miller, Using HCI techniques to design a more usable programming system. Proc. IEEE Human-Centric Computing Languages and Environments, 3-6 Sept. 2002, 198 - 206.
- [Repenning and Ioannidou 2006] Alexander Repenning and Andri Ioannidou, AgentCubes: Raising the ceiling of end-user development in education through incremental 3D, IEEE Symposium on Visual Languages and Human-Centric Computing, Brighton, UK, Sept. 4-8, 2006, pp. 27-31. AgentSheets goes 3D in terms of what its trying to support (rich media environments, etc.).
- Rothermel et al., WYSIWYT (ICSE'98)
- [Scaffidi et al. 2009] Scaffidi, C., Myers, B., and Shaw, M. (2009) Fast, accurate creation of data validation formats by end-user developers. 2nd International Symposium on End-User Development, 242-261. (You can download this paper from Dr. Scaffidi's papers page.)
- Subrahmaniyan et al., VLHCC'07 on filling information gaps
- [Tarkan et al. 2010] Sureyya Tarkan, Vibha Sazawal, Allison Druin, Evan Golub, Elizabeth M. Bonsignore, Greg Walsh, Zeina Atrash, Toque: Designing a Cooking-Based Programming Language For and With Children, ACM Conference on Human Factors in Computing Systems, Atlanta, GA, Apr. 10-15, 2010, pp. 2417-2428.
- [Wilson et al. 2003] A. Wilson, M. Burnett, L. Beckwith, O. Granatir, L. Casburn, C. Cook, M. Durham, and G. Rothermel, Harnessing Curiosity to Increase Correctness in End-User Programming, ACM Conference on Human Factors in Computing Systems, Ft. Lauderdale, FL, Apr. 3-10, 2003, 305-312. Surprise-Explain-Reward
- [Wong and Hong 2007] Jeffrey Wong and Jason Hong, Making mashups with Marmite: Towards end-user programming for the web, ACM Conference on Human Factors in Computing Systems, San Jose, CA, Apr 28-May 3, 2007, pp. 1435-1444.
- [Wright et al. 2006] William Wright, David Schroh, Pascale Proulx, Alex Skaburskis, and Brian Cort, The sandbox for analysis - Concepts and methods, ACM Conference on Human Factors in Computing Systems, Montreal, Canada, Apr 22-27, 2006, pp. 801-810. Its to support people doing analytical sense-making.
- [Zimmerman et al. 2007] John Zimmerman, Anthony Tomasic, Isaac Simmons, Ian Hargraves, Ken Mohnkern, Jason Cornwell, Robert Martin McGuire, VIO: A mixed-initiative approach to learning and automating procedural update tasks, ACM Conference on Human Factors in Computing Systems, San Jose, CA, Apr 28-May 3, 2007, pp. 1445-1454. This is in the Koala class of work, but also might be a case of the Surprise-Reward parts of Surprise-Explain-Reward. Theres also an interesting empirical strategy in which they succeed in teasing apart AIs effects vs. the interfaces effects.
- TBA, papers under review. Handed out in class as needed.
A few misc. resources
Margaret M. Burnett
Date of last update: Mar. 2, 2012