Number of co-authors:17
Number of publications with 3 favourite co-authors:T. R. G. Green:8Simon P. Davies:3Elizabeth F. Churchill:2
David J. Gilmore's 3 most productive colleagues in number of publications:Mary Beth Rosson:142Gilbert Cockton:72T. R. G. Green:69
There is an old English folk saying that goes, "If you can't stand the heat, get out of the kitchen." I have a different approach: Do something about the heat. The folk saying would have us accept the poor designs of the world. Why? After all, if people were responsible for the "heat" in the first place, then people should be able to do something about it. Is the kitchen too hot? Redesign it.
-- Don Norman
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
Kumar and Herger 2013: Gamification at Work: Designing Engaging Business Software...
by Janaki Mythily Kumar and Mario Herger
Whitworth and Ahmad 2013: The Social Design of Technical Systems: Building technologies for communities...
by Brian Whitworth and Adnan Ahmad
Soegaard and Dam 2013: The Encyclopedia of Human-Computer Interaction, 2nd Ed....
by Mads Soegaard and Rikke Friis Dam
David J. Gilmore
Has also published under the name of:
"D. Gilmore" and "D. J. Gilmore"
Publications by David J. Gilmore (bibliography)
Gilmore, David J. (2009): Heat, fire and temperature: the industrial revolution and HCI. In: Proceedings of ACM CHI 2009 Conference on Human Factors in Computing Systems 2009. pp. 2565-2574.
HCI has many challenges and internal debates (for example, where is our theory? What is the role of design in HCI? What is the relationship between research and practice? How do we make an impact?) that recur at the CHI conference and that students either ask themselves or find they are asked by others. This paper takes a historical look at this issue and describes some of the discoveries made during the industrial revolution about heat, fire and temperature (the development of thermodynamics) and how these discoveries were made. The parallels to human-computer interaction today are explored with two primary intentions: -- to show how important it is that we continue to debate and investigate the precise nature of concepts we take for granted (e.g. usability, user interfaces, user experience), and to illustrate how practice contributes to the development of theoretical concepts.
© All rights reserved Gilmore and/or ACM Press
Gilmore, David J., Cockton, Gilbert, Churchill, Elizabeth F., Kujala, Sari, Henderson, Austin and Hammontree, Monty (2008): Values, value and worth: their relationship to HCI?. In: Proceedings of ACM CHI 2008 Conference on Human Factors in Computing Systems April 5-10, 2008. pp. 3933-3936.
Rosson, Mary Beth and Gilmore, David J. (eds.) Extended Abstracts Proceedings of the 2007 Conference on Human Factors in Computing Systems, CHI 2007, San Jose, California, USA, April 28 - May 3, 2007 2007.
Gilmore, David J. (2002): Understanding and overcoming resistance to ethnographic design research. In Interactions, 9 (3) pp. 29-35.
Holst, Shirley J., Churchill, Elizabeth F. and Gilmore, David J. (1997): Transporting Honey Bears: A Cognitive Analysis of the Effects of Interface Manipulation Style on a Constraint-Based Planning Task. In: Smith, Michael J., Salvendy, Gavriel and Koubek, Richard J. (eds.) HCI International 1997 - Proceedings of the Seventh International Conference on Human-Computer Interaction - Volume 2 August 24-29, 1997, San Francisco, California, USA. pp. 169-172.
Green, T. R. G., Davies, Simon P. and Gilmore, David J. (1996): Delivering Cognitive Psychology to HCI: The Problems of Common Language and of Knowledge Transfer. In Interacting with Computers, 8 (1) pp. 89-111.
Although cognitive psychology showed much initial promise, it has failed to make significant contributions to the study of human-computer interaction, which has led to a rejection of cognitivism in favour of situated action theory. The authors accept that the critique has much to offer, but reject the outright abandoning of cognitivism. Cognitive psychology needs a common language in which to describe interaction between people and artifacts: two examples of research in progress are described, one focused on events, the other on representations and the relationship between the information display and the conceptual model. Cognitive psychology also needs a better delivery method than the traditional research paper, and the idea is proposed of a vocabulary of 'cognitive dimensions', terms which can be meaningfully used by non-specialists (who will recognise familiar but uncrystallised concepts) and which can be used as indexes to the professional literature. These two components form a proposal for improving the effectiveness of cognitive psychology. The paper ends with the hope that mainstream cognitive psychology will broaden its area of enquiry.
© All rights reserved Green et al. and/or Elsevier Science
Davies, Simon P., Gilmore, David J. and Green, T. R. G. (1995): Are Objects that Important? Effects of Expertise and Familiarity on Classification of Object-Oriented Code. In Human-Computer Interaction, 10 (2) pp. 227-248.
This article reports a study of the use of card sorts in the categorization of fragments of object-oriented (OO) programs. We are interested in the way in which programmers think about code so that we might attempt to provide support for browsing and reuse activities within OO environments. As a consequence, we have been exploring the use of knowledge acquisition techniques in order to elicit programmers' knowledge about code. The study reported here required expert and novice programmers to sort through several cards, each containing a fragment of code. In the case of the expert group, half of the subjects were familiar with the code, and half were not. The subjects sorted the cards according to any criteria they felt were appropriate. Our results showed, contrary to our expectations, that experts tended to focus on the functional relations between the code fragments and that the novices were much more concerned with objects and inheritance relations. Moreover, those experts who were familiar with the code also appeared to focus to a greater degree on functional information compared to those who were unfamiliar with the code, who derived classifications based on object and class relations. We discuss these results in terms of the existing body of knowledge about expertise in procedural programming and with respect to the claims that have been made about the naturalness of conceiving the world in terms of objects and their relations. Last, we suggest several directions for future research into the psychological mechanisms that might underpin OO design and programming.
© All rights reserved Davies et al. and/or Taylor and Francis
Davies, Simon P., Gilmore, David J. and Green, T. R. G. (1995): Factors Influencing the Classification of Object-Oriented Code: Supporting Program Reuse and Comprehension. In: Proceedings of the Sixth International Conference on Human-Computer Interaction July 9-14, 1995, Tokyo, Japan. pp. 653-658.
This paper reports a study of the use of card sorts in the categorisation of fragments of object-oriented programs. We are interested in the way in which programmer's think about code so that we might attempt to provide support for browsing and reuse within object-oriented environments. Hence, we have been exploring the use of knowledge acquisition techniques in order to elicit programmer's knowledge about code. Our results showed that experts tended to focus upon the functional relationships between the code fragments, and that the novice group were much more concerned with objects and inheritance. We discuss these results in terms of claims that have been made about the naturalness of conceiving the world in terms of objects and their relationships.
© All rights reserved Davies et al. and/or Elsevier Science
Green, T. R. G., Gilmore, David J., Blumenthal, B. B., Davies, S. and Winder, R. (1992): Towards a Cognitive Browser for OOPS. In International Journal of Human-Computer Interaction, 4 (1) pp. 1-34.
Software engineers have developed sophisticated "object-oriented" programming environments that are intended to make the reuse of program code easy. Experience has shown that these environments can be improved: Even very experienced programmers have problems in locating and comprehending code for reuse. Programs cannot be modified as readily as had been anticipated. We describe the problems in terms of "cognitive dimensions" of notational systems and show how improved support for opportunistic design may be achieved. A central tenet is that programmers are not at present able to externalize enough of their knowledge about a program. We propose a scheme for attaching a "description level" in which arbitrary attributes and relationships can be recorded in a "browsable" form. Our conclusions stress improving the means for programmers to represent facts rather than the provision of predefined knowledge bases.
© All rights reserved Green et al. and/or Lawrence Erlbaum Associates
Gilmore, David J. (1991): "Studying the Novice Programmer," edited by E. Soloway and J. C. Spohrer. In International Journal of Man-Machine Studies, 35 (6) pp. 927-933.
Gilmore, David J. (1991): Visibility: A Dimensional Analysis. In: Diaper, Dan and Hammond, Nick (eds.) Proceedings of the Sixth Conference of the British Computer Society Human Computer Interaction Specialist Group - People and Computers VI August 20-23, 1991, Heriot-Watt University, Edinburgh, UK. pp. 317-329.
This paper presents an analysis of visibility -- a common HCI guideline which is often only loosely described. Although it might appear that visibility should be thought of as a cognitive dimension of notations (Green, 1989), my analysis separates it into three dimensions, two of which are static properties of the notation, while the third is dynamic. The two static dimensions are accessibility and salience, both of which can be examined through the use of structure maps (Green, 1991), whilst the third dimension is congruence which changes according to the user, their task and their strategy. Accessibility refers to the ease with which information structures can be accessed (psychologically), and this is assessed directly from the structure map and the number of different routes to certain information. Salience refers to the relative accessibility of an information structure in a display -- relative to the accessibility of other information structures in the display. Congruence reflects the extent to which the salient structure is relevant to the use being made of the display at any moment. An information search task is used to provide experimental evidence for this analysis, revealing that the effects of accessibility and salience on search performance and search strategy are separable. Accessibility affects speed of performance, but not strategy, whereas salience has an effect on strategy choice, and not necessarily on speed. The results also suggest that it is important to consider a display congruence, which is the match between the information structure required by the users strategy and the salience of that structure. The paper concludes with a brief analysis of the visibility of various programming languages, revealing that the dimensions of visibility can be assessed.
© All rights reserved Gilmore and/or Cambridge University Press
Diaper, Dan, Gilmore, David J., Cockton, Gilbert and Shackel, Brian (eds.) INTERACT 90 - 3rd IFIP International Conference on Human-Computer Interaction August 27-31, 1990, Cambridge, UK.
Gilmore, David J. and Green, T. R. G. (1987): Are 'Programming Plans' Psychologically Real -- Outside Pascal?. In: Bullinger, Hans-Jorg and Shackel, Brian (eds.) INTERACT 87 - 2nd IFIP International Conference on Human-Computer Interaction September 1-4, 1987, Stuttgart, Germany. pp. 497-503.
The program plan (Spohrer et al, 1985) has been widely accepted as a description of programming knowledge. This paper presents an empirical test of their psychological reality and the first comparison of plan structures across languages. Subjects with 2-3 years' programming experience attempted to find deliberately introduced bugs of four types, one of which was bugs in plans. Graphic cues were used to highlight plan structures and/or control structures in a fully crossed design. Highlighting control structures improved the detection of control bugs in both Pascal and Basic, but only Pascal programmers benefitted from the highlighting of plan structures, showing an increase in the detection of plan bugs. We conclude that the 'plan' is a good description of Pascal programming knowledge. Can it be that Basic programmers do not use plans? That would be surprising because the structure of the programs was the same. We suggest that Basic programmers may use plans, but that the Basic notation is less "role-expressive", making it harder to identify plans and process them mentally. Research on other programming languages (eg. Prolog) is urgently needed if we are to confirm the plan as psychologically real.
© All rights reserved Gilmore and Green and/or North-Holland
Gilmore, David J. (1986): Structural Visibility and Program Comprehension. In: Harrison, Michael D. and Monk, Andrew (eds.) Proceedings of the Second Conference of the British Computer Society Human Computer Interaction Specialist Group - People and Computers II August 23-26, 1986, University of York, UK. pp. 527-545.
This paper draws on work by Anderson and Jeffries (1985) which examined the cause of novice LISP errors, interpreting them in terms of a processing overload model. Two experiments are reported which ask about factors which influence processing demand. Factors examined include the visibility of program structure, the length of program transactions and the programming task. The results of these experiments suggests that effects due to structural visibility may be explicable in relation to processing overload, but the effect of transaction length on performance cannot be so explained. To explain the results it is necessary to realise that processing load is not the only thing affected by language features. For example, some language features (e.g. transaction length) change strategy not processing demand. This paper closes with a consideration of utility of processing demand models, and concludes that it is more profitable to consider the relationship between specific aspects of notations and particular psychological processes.
© All rights reserved Gilmore and/or Cambridge University Press
Gilmore, David J. and Green, T. R. G. (1984): The Comprehensibility of Programming Notations. In: Shackel, Brian (ed.) INTERACT 84 - 1st IFIP International Conference on Human-Computer Interaction September 4-7, 1984, London, UK. pp. 461-464.
Empirical comparisons of the comprehension of four miniature programs were used to contrast the notational structures of four programming languages, concluding that an important determiner of comprehensibility is the match between notational structure and the task being performed by the programmer. None of the four languages was consistently the most comprehensible: the procedural notations (e.g. Pascal-like) were best suited to answering sequential questions and the declarative notations (e.g. production systems) to answering circumstantial questions. Software complexity metrics, like many models of program comprehension, do not allow for such structural and contextual effects and their validity is brought into question.
© All rights reserved Gilmore and and/or North-Holland
Green, T. R. G., Payne, Stephen J., Gilmore, David J. and Mepham, M. (1984): Predicting Expert Slips. In: Shackel, Brian (ed.) INTERACT 84 - 1st IFIP International Conference on Human-Computer Interaction September 4-7, 1984, London, UK. pp. 519-525.
Gilmore, David J. and Green, T. R. G. (1984): Comprehension and Recall of Miniature Programs. In International Journal of Man-Machine Studies, 21 (1) pp. 31-48.
Differences in the comprehensibility of programming notations can arise because their syntax can make them cognitively unwieldy in a generalized way (Mayer, 1976), because all notations are translated into the same "mental language" but some are easier to translate than others (Shneiderman&Mayer, 1979), or because the mental operations demanded by certain tasks are harder in some notations than in others (Green, 1977). The first two hypotheses predict that the relative comprehensibility of two notations will be consistent across all tasks, whereas the mental operations hypothesis suggests that particular notations may be best suited to particular tasks. The present experiment used four notations and 40 non-programmers to test these hypotheses. Two of the notations were procedural and two were declarative, and one of each pair contained cues to declarative or procedural information, respectively. Different types of comprehension question were used ("sequential" and "circumstantial"); a mental operations analysis predicted that procedural languages would be "matched" with sequential questions, and declarative languages with circumstantial questions. Questions were answered first from the printed text, and then from recall. Subjects performed best on "matched pairs" of tasks and languages. Perceptually-based cues improved the performance on "unmatched pairs" better than non-perceptual cues when answering from the text, and both types of cues improved performance on "unmatched pairs" in the recall stage. These results support the mental operations explanation. They also show that the mental representation of a program preserves some features of the original notation; a comprehended program is not stored in a uniform "mental language".
© All rights reserved Gilmore and Green and/or Academic Press
Gilmore, David J. and Smith, H. T. (1984): An Investigation of the Utility of Flowcharts During Computer Program Debugging. In International Journal of Man-Machine Studies, 20 (4) pp. 357-372.
An experiment was performed to investigate whether flowcharts improved the speed and efficiency of computer program debugging. Twenty-four subjects were given six problems, each a program containing one error. The errors could be located by studying the behaviour of the program. The subjects were divided into three groups of eight and were given the programs either as a listing, a standard notation flowchart or as a Bowles structure diagram. No significant differences were found between these three conditions for any of the three dependent variables, but there were differences in performance between problems. The analysis of performance variation across conditions and problems implies that flowchart usefulness may not be a clear-cut issue. The results suggest that both the nature of the task and the individual programmer characteristics are important determinants of flowchart utility. A framework is presented which emphasizes these factors and which is generalizable to other aspects of programming performance.
© All rights reserved Gilmore and Smith and/or Academic Press
Show list on your website
Join our community and advance:
Changes to this page (author)06 Nov 2012: Modified04 Jun 2009: Modified
09 May 2009: Modified
09 May 2009: Modified
12 May 2008: Modified
29 Jun 2007: Added
28 Apr 2003: Added
28 Apr 2003: Added
Page maintainer: The Editorial Team