I just finished re-reading Vernon Vernor Vinge’s A Deepness in the Sky where one of the protagonist’s, Pham Neuwen, is described as a Programmer Archaeologist. His experience and expertise is the underlying code and low-level functions hidden in the code beneath the levels of documentation. I started thinking about the role that history play with usability and information architecture.
Techniques for Observation
Contextual Inquiry is among the leader for mind-share in ethnographic techniques used by designers to build new software products. There are other methodologies that are based in anthropology, ethnography and archaeology including diary studies, customer interviews, . All of these are tools for understanding how people interact with technology in context, i.e., how people use and interact with tools and technology in the real-world. By observing real-world usage, designers can very quickly understand where problems exist and where to focus their efforts on designing change.
Searching for Patterns
Dictionary.com describes archaeology as “The systematic study of past human life and culture by recovery and examination of remaining material evidence, such as graves, buildings, tools and pottery.”
This systematic study of human lives leads to the identification and abstraction of patterns. These patterns exist for user interfaces, whether wizard interfaces or progress bars. By understanding when and where these patterns should be used we can build better tools.