Nardi, Bonnie A. A small matter of programming: Perpectives on end user computing. MIT Press, 1993.

The importance of end-user computing is widely recognized in the computer and information science communities and Bonnie Nardi's book provides a highly readable examination of how end-users benefit from extensible software packages that are designed for specific task domains. When people customize and extend software to meet particular needs they engage in formal specification of procedures programming. Nardi shows how they are able to do so by taking advantage of their domain knowledge and a community of coworkers. She first illustrates how visual programming and programming by example environments allow users to leverage theirdomain knowledge when using computers. She then describes the important roles that intermediaries who know both the domain and the application package play in organizations. Both of these lessons are important for information service providers.

The book is relatively short and divided into seven chapters that illustrate her thesis with clear and easy-to-understand examples. Chapter I provides a structure for the ideas by defining a 2-dimensional space of application types ranging on an expressiveness dimension from parameter selling to traditional programming, and on an interactive construction dimension from low to high. DOS and Unix are placed as low interactive construction and parameter setting. Macintosh preferences are given as examples of high interactive construction parameter setting, Lisp and HyperTalk are low interactive construction programming environment, and visual programming and spreadsheet macro languages are offered as high interactive construction programming. Although readers may quibble with where their favorite applications arc placed, the space cor responds we]l with other frameworks (e.g.. Kay 1 984). Empir- ical studies of how end-users worked with spreadsheets and CAD packages are used as the basis for examples throughout the book and these are introduced in chapter l.

Chapter 2 lays out the methodological perspective for Nardi's work. The theories of situated cognition and Grician communication provide the perspective for interviews and o observations of end-users "conversing" with their computers. Nardi distinguishes human conversation from the "mundane conversations" users conduct with computers when doing their work. This perspective lays the foundation for formal languages discussed in subsequent chapters.

Chapter 3 discusses how easily people learn formal languages when they are motivated and the languages are specific to tasks. This point of view is illustrated with examples from baseball scoring and knitting each of which depend on complex and systematic "languages." The principles are extended to spreadsheels which require specific and complex commands and actions that are made comprehensible b the tasks users seek to execute with them. She notes that functionality is more important than form in formal languages and argues that task- specific programming languages are both useful and powerful. The consequent design recommendation is highlighted by the statement ". . . formal task-specific languages -as opposed to natural language conversations-seem to be the technically correct way to communicate With computers . . ." An interesting- benefit of such an approach is that communication can be more universal and less ethnocentric than natural language. This is a particularly important point in a diverse and worldwide community.

Chapter 4 argues for diversity in interfaces that are based on extensible and powerful task-specific mechanisms rather than some generic user model. visual programming and pr programming by example are illustrated as viable techniques to support such task specific design. Chapter 5 focuses the discussion on visual interfaces by arguing for integration of text and graphics according to the requirements of the task. Logo and CAD systems are used to illustrate these arguments.

Chapter 6 discusses the: power of humans working together to accomplish tasks. Evidence from her own studies and those of others is used to illustrate;le how people depend on each other to use application packages and some people develop expertise as intermediaries. Nardi suggests that more attention should be en to formalizing "gardeners" who work to improve productivity by assisting end-users with macro and specialized routines that are geared to group needs rather than individual need. This chapter addresses activities most similar to the roles that professional intermediaries have in linking end-users with information. "Gardeners" must have both domain expertise and expertise with the computer system, just as information specia]ists must have domain expertise along with information science expertise.

Chapter 7 presents some examples of how a sophisticated end-user programming environment is used for medical a application and reiterales the argument for design that is not "dumbed down" to endusers. "Rather, designers. should start with a clear ,sense of and respect for the tasks that end use will be doing, and then design a system that best supports those tasks.''

Nardi's training as an anthropologist shows throughout he hook in form of careful anecdotes, interviews, and observations- used to reinforce the arguments for design and end user support. This book is a welcome addition to the growing al- collection of work on end-users in two ways, first, it treats end- users as intelligent professionals and focuses attention on the tasks they execute rather than the arcane machinations of tech nology. Borrowing a chord from politics, the message for de- igners is simple-''It's the task stupid." What types of formal, task-specific languages are best and how those languages should be implemented will continue to be debated and will require the reader visit additional sources. Second, the analysis of collaboration in end-user computing is penetrating and illustrates - the social nature of work. Focusing attention on support for group tasks obviously leads to different types of computational tools. What is more important for information science, practice and training is that support for group tasks necessitates new types of professional intermediaries and foreshadows new challenges and opportunities for those willing to gain domain, system, and information science expertise.

Gray Marchionini
College of Library and Information Science
University of Maryland
4121 Hornbake
College Park, MD 20742

Reference
Kay. A. 1984. Cumputer software . Scientific American 251, 53-9.



back to ... Bonnie Nardi, A Small Matter...