One thing you will find in abundance are libraries of interactions, often called widgets. Richie Hazlewood posted this link to the HCI distribution list earlier today, but it’s not the only one. The “components” that ship with Flash are another set, and information architect folks (e.g., Garrett) likewise have a standardized collection of interaction diagrams.
To me, these feel more like libraries than languages, and I’ve been thinking about what I mean by that distinction. Are the elements of the language of film more or less equivalent to search boxes, accordians, table filters, tabs, shopping carts, and store locators? My gut tells me that there is a difference, in that one is oriented toward human expression, and another is oriented toward UI engineering, that is, how we structure code and interfaces for optimal performance. But is this distinction legitimate (i.e., that there really is a difference out there), or is it habit (i.e., that we’re just used to thinking about things that way)?
I actually would like to hear what you all think about this; it may or may not come up in class this semester. So I encourage comments, opinionating, and even pontificating here, where appropriate.
Is a language not a library of ideas? (Wow, that sounds very Andrew Ryan from Bioshock)
I think libraries and/or languages operate on different levels. For film, you have ideas like formalism/realism as part of a “higher” level language of expression but you also have very “low” mechanical stuff like fades, cuts, zooming, panning, etc.
Most interaction design libraries seem to be oriented towards the mechanical, searching, buttons, pick lists, etc. In my experience with the field, there doesn’t seem to be much of a language for expression or criticism. A lot of the literature (scholarly, professional, blog wackos) focuses on creating such a language.
So, yes, I agree there’s a difference and I do not quite know what it is, but I think criticism and critique have something to do with it. Language breeds critique and criticism but libraries do not .. at least not as directly.
I agree with Tyler about the relationship between “language” and criticism. When we talk about the language of film its not just because there exists names for a set of techniques like cuts, lighting, panning, etc. What’s more important is that there exists a body of criticism that tries to explicate how these techniques contribute to the overall experience or meaning of a film. Out of this criticism you get bigger ideas like realism/formalism, and notions of genre.
In this sense, there is sort of a language of interaction. We have a kind of criticism in HCI, but as Jeff says it not oriented to human expression. Its rather focused on the logic of computation, representation of data, and usability. This big ideas we get out of this criticism have to do with affordances, feedback, etc. The current ‘language of interaction’ then consists of best practices for how to use elements like accordions and shopping carts in order to represent certain kinds of data and facilitate tasks.
However, when a designer seeks to create a certain quality of experience, I guess he or she is mostly left in the dark with no best practices to learn from. And I suppose the new theory focused on experience aims to fill some of this gap…
To me, the stuffs mentioned in the pattern library are more like camera, costume, make-up, lights, music, etc in film production. But they’re not like “Montage”, “Flashback”, etc in film theory. So I guess the library is part of the HCI language, but not all.
We use language to express our point, to send out message to our audience, which means that it has certain meanings. Maybe some people would argue that those patterns have their meanings too, but I’d like to say their meanings at a more loosely level. They could be background or tools, but not the focus.
My first thought was that a library is a language used to access and store other linguistic constructs. So perhaps a library is more utilitarian than expressive. Of course, a library could talk about, or contain, expressive works (the wells library does). It could also contain things more oriented towards engineering (an english dictionary seems to be more engineering-oriented). Either way, a library does seem to suggest that a language is sufficiently developed that it needs some organization to make it more usable.
I agree with jeff that a film libraries seems to contain more expressive elements, while interaction design libraries contain mostly elements for things like usability (although I don’t have any specific examples to justify this). I’m not sure I agree that “library” v. “language” is the important distinction… to me it seems like it just depends what’s in the library, i.e. what is the library talking about and organizing?