Pattern usage

7 Nov 2003 - 5:28pm
10 years ago
8 replies
542 reads
Jenifer Tidwell
2003

Hello everyone. Twice this week, existing UI pattern collections have
been mentioned on this list -- the Welie pattern site, and my own
(http://www.welie.com/patterns and http://time-tripper.com/uipatterns).
In preparation for a local UPA talk, I'd like to find out more about how
people use them.

* Are you familiar with the "pattern" concept, as used by the
"Design Patterns" and "Design of Sites" books, Christopher Alexander,
and the sites mentioned this week? If so, do you find it a useful
idea, either for design instruction or for the practice of design?
What do you like about it?

* Have you used, or tried to use, "Design of Sites" or the collections
listed above in your design practice? How? Were they useful to you,
or not particularly so? Do you have suggestions for how they might
be more useful?

* Have you used them for design instruction, or for mentoring or
advising less-experienced designers? How did that work for you?

I will summarize, if people send me replies offline. Feel free to
discuss it here if there is sufficient interest.

- Jenifer

--------------------------------------------
Jenifer Tidwell
w: jtidwell at mathworks.com
h: jtidwell at alum.mit.edu
http://time-tripper.com/uipatterns/

Comments

9 Nov 2003 - 12:18pm
Dan Saffer
2003

Personally, I've always been interested in design patterns, but haven't
ever been successful in integrating them into my process except in the
most theoretical way.

One reason for this is that one of the best things they could be used
for is to solve problems you've never encountered before, but it is
very difficult (to me at least) to map a detailed, specific problem to
a general patterned solution easily.

Perhaps a greater number of them, drilling down into very low-level
problems, would be more useful. Many of the patterns available now are
at a high-level (navigation) or at a middle-level (screen structure).
Some of yours, Jenifer, start to get into low-level detail (constrained
resize, for example), which is great.

Dan

Dan Saffer
M.Des. Candidate, Interaction Design
Carnegie Mellon University
http://www.odannyboy.com

11 Nov 2003 - 5:39pm
Victor Lombardi
2003

I had the same thought as Dan, below. The pattern
language book from Alexander et al resonates strongly
because they are arranged hierarchically, allowing
readers to implicitly understand how they are related.
And there are enough patterns to design with, or to
put it metaphorically, to 'speak' with, hence the term
pattern 'language' seems so appropriate.

> From: Dan Saffer <dan at odannyboy.com>
...
> Perhaps a greater number of them, drilling down into
> very low-level
> problems, would be more useful. Many of the patterns
> available now are
> at a high-level (navigation) or at a middle-level
> (screen structure).
> Some of yours, Jenifer, start to get into low-level
> detail (constrained
> resize, for example), which is great.

=====
Victor Lombardi
http://www.noisebetweenstations.com

__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree

11 Nov 2003 - 6:03pm
Jenifer Tidwell
2003

So would it be too simplistic to say that existing UI pattern
collections (I hesitate to call them "languages" yet) would
be more useful if they had:

(1) more patterns in general, covering more of the design space,
(2) more low-level patterns, which would address smaller-scale
design problems?

I wonder why the latter is true. Are the larger-scale design
issues, like navigation structures and page layout, generally
better understood? Or are there no patterns yet -- or no best
practices -- that address the really hard problems?

Also, would it help to see lots of examples in a given pattern?
I'm guessing that designers would just as soon see a well-chosen
set of examples as read an exposition about them. True?

- Jenifer

--------------------------------------------
Jenifer Tidwell
w: jtidwell at mathworks.com
h: jtidwell at alum.mit.edu
http://time-tripper.com/uipatterns/

On Tue, 11 Nov 2003, Victor Lombardi wrote:

> I had the same thought as Dan, below. The pattern
> language book from Alexander et al resonates strongly
> because they are arranged hierarchically, allowing
> readers to implicitly understand how they are related.
> And there are enough patterns to design with, or to
> put it metaphorically, to 'speak' with, hence the term
> pattern 'language' seems so appropriate.
>
> > From: Dan Saffer <dan at odannyboy.com>
> ...
> > Perhaps a greater number of them, drilling down into very low-level
> > problems, would be more useful. Many of the patterns available now are
> > at a high-level (navigation) or at a middle-level (screen structure).
> > Some of yours, Jenifer, start to get into low-level detail
> > (constrained resize, for example), which is great.

11 Nov 2003 - 9:30pm
Victor Lombardi
2003

--- Jenifer TiTidwelljtjtidwellnanimatorarlingtona.us>
wrote:
> So would it be too simplistic to say that existing
> UIUIattern
> collections (I hesitate to call them "languages"
> yet) would
> be more useful if they had:
>
> (1) more patterns in general, covering more of the
> design space,

I would say yes. I also like the Design of Sites book,
but I find the number of examples only get me started,
they don't cover enough to guide me through any one
particular problem.

> (2) more low-level patterns, which would address
> smaller-scale
> design problems?

Personally I would rather see a complete set - big,
mid, and small-scale - for each problem.

> I'm guessing that designers would just as soon see a
> well-chosen
> set of examples as read an exposition about them.

Probably true, but not for everyone. I usually return
to a learning theory that says people learn
differently: some people learn through stories (e.g.
case studies), some experientially (e.g. doing an
exercise), some analytically (patterns?), and so on. A
great pattern language will probably help some
designers a lot and others not so much.

And, as you mention, we just haven't solved some of
the harder problems yet, much less summarized the
solutions. I'veveeen finding research on navigation
lately that looks more deeply in simple guidelines
like "keep it consistent" with interesting results...
<hthttp/wwwwwonoisebetweenstationsom/personal/weweblogsinderbox/ininformatewebnavigrtransitihshtml

=====
Victor Lombardi
http://www.noisebetweenstations.com

__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree

11 Nov 2003 - 9:55pm
Dave Malouf
2005

While I admire the work that Christopher Alexander and others in the
field of pattern language design have done, I have tended to generalize
this theory a tad and maybe acculturate it to my own previously
undefined way of thinking. I feel this generalization is a lot more
useful on several levels, and it removes many of what I feel are the
overcomplications of trying to take the entire scope of "Pattern
Languages" as Alexander has developed them and try to transfer them to
other meanings.

For me, I have often thought of my job as translator, or more
accurrately "Rosetta Stone Builder" as I am doing multiple translations
to create a bridge which exists in a third unrelated language (the
product).

System = business + technology

to

Interface = structure + behavior + I/O (visual design, and interface
design)

to

User Interaction = goals + motivations + business processes + other
contexts (too many to list here)

So as you can see the Interface is a language of its own. All languages
by definition of patterns, b/c only through patterns can you have
repetition, and if you cannot repeat something it cannot be communicated
through a continuum with accurracy and precision.

I have described the output of what I do more than anything else as a
pattern lanugage (no quotes or capital case). The pattern language I
design is the interface which is the bridge between the system and the
user.

Now in order to do this, I think it is important to be able to dicipher
the patterns (actually required) in both the system and the user so that
you do a proper mapping and thus your "rosetta stone" is functional.

G-d I love metaphors!

-- dave

12 Nov 2003 - 6:09pm
Dan Saffer
2003

On Tuesday, November 11, 2003, at 06:03 PM, Jenifer Tidwell wrote:

> So would it be too simplistic to say that existing UI pattern
> collections (I hesitate to call them "languages" yet) would
> be more useful if they had:
>
> (1) more patterns in general, covering more of the design space,
> (2) more low-level patterns, which would address smaller-scale
> design problems?

Yes, and yes again. The more "vocabulary" you have (and the
accompanying grammar), the more useful a language is.

>
> I wonder why the latter is true. Are the larger-scale design
> issues, like navigation structures and page layout, generally
> better understood?

Not necessarily better understood, but certainly more used.

> Or are there no patterns yet -- or no best
> practices -- that address the really hard problems?

There are some, but I imagine more are being discovered all the time
and solved by the people on this list. What isn't happening are those
solutions being made into patterns.

Dan

13 Nov 2003 - 1:27pm
Robert Reimann
2003

Hi all,

I haven't been around for all of the pattern discussion, but I thought I'd
throw in my two cents. My apologies if some of this echoes any previous
discussion...

I think the most important consideration about patterns is that they can't
b(well or easily) applied in a vacuum. Design patterns arise from the
interaction of low-level design principles (e.g., Fitt's Law) and high-level
design principles (e.g., Don't make the user feel stupid [Cooper]) within
specific contexts of activity and need. These contexts of activity are
(IMHO) best explored in a systematic, process-oriented, top-down manner, to
ensure that low-level design decisions are appropriate to the higher-level
conceptual structures that aim to address user goals.

One of the realizations that I had while researching patterns (perhaps it's
a fairly obvious realization), is that pattern application works best
following a top-down, context-relative, "recursive" design approach. In my
experience, it is most useful (as others have mentioned) to have a fairly
rich set of high-level, mid-level, and low-level patterns at hand that can
be assembled into hierarchies of interaction appropriate to the specific
context. In other words, I believe (as others have also noted) that a
well-articulated pattern language (or set of pattern languages) is far more
useful than a set of disjoint patterns that don't articulate any
hierarchical or contextual relationships (in a conversation I had with
Alexander, he mentioned that he wished that he had made the hierarchical
relationships between his patterns even more explicit).

I think that mid-level patterns tend to be the most critical, since they set
up the structure and major behaviors for the interface (they also tend to be
the least documented, especially with examples of variants). It usually
takes (in my experience) 2 or more levels of nested mid-level patterns to
sharply define an interface. I would refer only to widget-level patterns as
truly low-level patterns.

An important characteristic of both Alexander's architectural patterns and
interaction design patterns is that, except perhaps at the lowest or most
concrete level, the form of a pattern is not precisely (pre)determined, but
is rather influenced by neighboring and containing patterns, as well as by
the environment (read: business, technical, and user constraints) within
which they are deployed. This makes them uninteresting to developers from a
reuse/modularity standpoint, but this formal fluidity, which is made
concrete only once the full set of behaviors at and across levels of
hierarchy is sufficiently mapped, is critical to the application of patterns
to interaction design problems. The negotiation of how different patterns at
different levels seamlessly fit together is a fascinating research topic
itself; what I've found is that detailed interaction scenarios are very
useful for tackling this problem.

One area in which I believe Alexander was mistaken (though I can empathize
with his desire to believe in the possibility) was his idea that with a
sufficiently articulated pattern language, a non-architect or non-designer
could with small effort assemble a useful, usable, and desirable result.
The fallacy here is a belief that the complexity lies within the patterns
alone, and not in the relationships between them (which in a sense form
patterns of their own). I view patterns as design power tools that can
dramatically accelerate designer productivity once the context and design
target is understood, and a methodical approach to translating user goals
into prioritized, interrelated tasks is simultaneously applied.

Robert.

---
Robert Reimann
Bose Design Center
Framingham, MA 01701
http://www.bose.com

18 Nov 2003 - 2:42am
vila
2003

Maybe low-level patterns like browser resizing tend to be more dependent
on the current state of technology, which of course is changing very
fast. On the other hand, wider trends like navigation or layout seem
less linked to implementation, which would make them a steadier subject
for discussion and study.

Francis

-----Original Message-----
From:
discuss-interactiondesigners.com-bounces at lists.interactiondesigners.com
[mailto:discuss-interactiondesigners.com-bounces at lists.interactiondesign
ers.com] On Behalf Of Jenifer Tidwell
Sent: mercredi 12 novembre 2003 00:03
To: Victor Lombardi
Cc: discuss-interactiondesigners.com at lists.interactiondesigners.com
Subject: Re: [ID Discuss] Pattern usage

So would it be too simplistic to say that existing UI pattern
collections (I hesitate to call them "languages" yet) would be more
useful if they had:

(1) more patterns in general, covering more of the design space,
(2) more low-level patterns, which would address smaller-scale
design problems?

I wonder why the latter is true. Are the larger-scale design issues,
like navigation structures and page layout, generally better understood?
Or are there no patterns yet -- or no best practices -- that address the
really hard problems?

Also, would it help to see lots of examples in a given pattern? I'm
guessing that designers would just as soon see a well-chosen set of
examples as read an exposition about them. True?

- Jenifer

--------------------------------------------
Jenifer Tidwell
w: jtidwell at mathworks.com
h: jtidwell at alum.mit.edu
http://time-tripper.com/uipatterns/

On Tue, 11 Nov 2003, Victor Lombardi wrote:

> I had the same thought as Dan, below. The pattern
> language book from Alexander et al resonates strongly
> because they are arranged hierarchically, allowing
> readers to implicitly understand how they are related.
> And there are enough patterns to design with, or to
> put it metaphorically, to 'speak' with, hence the term pattern
> 'language' seems so appropriate.
>
> > From: Dan Saffer <dan at odannyboy.com>
> ...
> > Perhaps a greater number of them, drilling down into very low-level
> > problems, would be more useful. Many of the patterns available now
> > are at a high-level (navigation) or at a middle-level (screen
> > structure). Some of yours, Jenifer, start to get into low-level
> > detail (constrained resize, for example), which is great.
_______________________________________________
Interaction Design Discussion List discuss at interactiondesigners.com
--
to change your options (unsubscribe or set digest):
http://discuss.interactiondesigners.com
--
Questions: lists at interactiondesigners.com
--
Announcement Online List (discussion list members get announcements
already) http://interactiondesigners.com/announceList/
--
http://interactiondesigners.com/

Syndicate content Get the feed