TITLE: Myth and Patterns
AUTHOR: Eugene Wallingford
DATE: September 12, 2004 10:38 AM
DESC: patterns and XP are myths
Yesterday was an unusual day for
we didn't have any writers workshops. This year, we squeezed all of
the paper sessions into the first two days of the conference, setting
aside Saturday for two extended sessions by Norm Kerth and Ward Cunningham.
Among their many accomplishments, Norm and Ward are two of the founding
fathers of the software patterns community, and their talks commemorated
the first PLoP conference ten years ago.
Norm led a discussion on myths. I like two of the definitions offered.
One person defined a myth as "a story that is so true you can't use the
facts to explain it."
definition turned on a myth's effects: A myth is "a story capable of
generating stories in every person who hears it."
Many folks might think that a discussion of myth is out of place at a
conference on software development, but this session was spot on at
PLoP for two reasons. First, this session celebrated the conference's
tenth anniversary, and so stories about its founders and founding were
on everyone's mind. The conference's
focused on the Genesis Myth of the patterns community, sprinkling facts
among the essential truths. Norm's session this morning was more about
the Hero's Journey myth, told in various forms by all cultures.
More important is the second reason. Science is itself a myth. It
is a set of stories that purport to explain how and why the world is.
We hold some of these stories true (the Greek theory of atoms) until a
better story comes along (Newtonian physics, relativity, quantum mechanics,
Software folks have their myths, too. Software engineering is a
comprehensive one. Extreme programming is a myth, one of a complex
set of myths that we call agile software development.
Patterns are themselves myths. They are stories we tell about the
successful systems we see around us in the world. They have a
narrative form and expected components. We use them to help others
understand what we think we understand, and we write them to help
I don't worry that these ideas are "just" stories that we tell. They
embody our current understanding of the world. We try to use more
scientific methods than our forbears in constructing and refining our
stories, but we must always keep in mind that they are just that --
stories -- and that we can them. One of the beauties of XP
is that Kent Beck and his colleagues chose to create a story with
such a challenging premise and the promise of something different.
Because it is agile, it is made to be shaped to its environment,
retold in as many different forms as there are tellers, as we all
work together to find deeper truths about how to build better software
Deep truths often lie inside stories that are themselves not strictly
factual. A classicist who now does software at IBM reminded us of
this during the session. I love PLoP.
"... as we all work together to find deeper truths ..." is a great
segue to Ward's afternoon session, but because I didn't post this
last night I will have to wait to tell that story after I get home
from the conference.