Interfacing thought: cognitive aspects of human-computer interaction
Distributed cognition: toward a new foundation for human-computer interaction research
ACM Transactions on Computer-Human Interaction (TOCHI) - Special issue on human-computer interaction in the new millennium, Part 2
A methodology for testing spreadsheets
ACM Transactions on Software Engineering and Methodology (TOSEM)
Harnessing curiosity to increase correctness in end-user programming
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
First Steps in Programming: A Rationale for Attention Investment Models
HCC '02 Proceedings of the IEEE 2002 Symposia on Human Centric Computing Languages and Environments (HCC'02)
Supporting Reuse of Evolving Visual Code
VL '97 Proceedings of the 1997 IEEE Symposium on Visual Languages (VL '97)
Designing the whyline: a debugging interface for asking questions about program behavior
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Communications of the ACM - End-user development: tools that empower users to create their own software solutions
Rewarding "Good" Behavior: End-User Debugging and Rewards
VLHCC '04 Proceedings of the 2004 IEEE Symposium on Visual Languages - Human Centric Computing
Effectiveness of end-user debugging software features: are there gender issues?
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Design Planning in End-User Web Development
VLHCC '07 Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing
Testing vs. code inspection vs. what else?: male and female end users' debugging strategies
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Using information scent to model the dynamic foraging behavior of programmers in maintenance tasks
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Software visualization for end-user programmers: trial period obstacles
Proceedings of the 4th ACM symposium on Software visualization
Fixing the program my computer learned: barriers for end users, challenges for the machine
Proceedings of the 14th international conference on Intelligent user interfaces
Can information foraging pick the fix? A field study
VLHCC '08 Proceedings of the 2008 IEEE Symposium on Visual Languages and Human-Centric Computing
Proceedings of the First Asia-Pacific Symposium on Internetware
Hi-index | 0.00 |
End-user programmers may not be aware of many software engineering practices that would add greater discipline to their efforts, and even if they are aware of them, these practices may seem too costly (in terms of time) to use. Without taking advantage of at least some of these practices, the software these end users create seems likely to continue to be less reliable than it could be. We are working on several ways of lowering both the perceived and actual costs of systematic software engineering practices, and on making their benefits more visible and immediate. Our approach is to leverage the user's cognitive effort through the use of distributed cognition, in which the system and user collaboratively work systematically to reason about the program the end user is creating. This paper demonstrates this concept with a few of our past efforts, and then presents three of our current efforts in this direction.