Hi,
Dick Gabriel has written a position statement for OOPSLA 2000 called "Is
Worse (Still) Better?" -
http://www.dreamsongs.com/NewFiles/WorseIsBetterPositionPaper.pdf
The following section is from that paper:
"More disappointing is witnessing this same effect at work in the
patterns community. Christopher Alexander�s ideas of patterns has as its
smallest part the pattern form � the concept of patterns really has to
do with pattern languages and QWAN (the Quality Without a Name). It is
not about construction tricks. It is about building artifacts not only
suitable for human habitation, but artifacts that increase their human
inhabitants� feeling of life and wholeness. Alexander is all about
beauty and quality, not about how to stick things together cleverly.
Yet, the most popular form of software patterns is exemplified by those
found in �Design Patterns,� by Gamma, Helm, Johnson, and Vlissides,
which contains little more than techniques for coding in C++ constructs
found in other programming languages � for example, 16 of the 23
patterns represent constructs found in the Common Lisp language. There
is no pattern language involved, and there is nothing about QWAN.
Interest in patterns is coagulating around the so-called Gang of Four
style, and it looks like things could get worse. In fact, I would say
that patterns are alive and well as a form of documentation and a quest
for clever solutions to common programming problems, and pattern
languages, QWAN, and the quest for a better future are now on their way
to the sewage treatment plant � the same place they went to in the world
of architecture. Down with quality, up with clever hacks. Why worry
about what makes a user interface beautiful and usable when you can
wonder how to do mapcar in C++."
Some more food for thought can be found in Christopher Alexander's
OOPSLA'96 keynote - see
http://www.patternlanguage.com/archive/ieee/ieeetext.htm
"I understand that the software patterns, insofar as they refer to
objects and programs and so on, can make a program better. That isn't
the same thing, because in that sentence �better� could mean merely
technically efficient, not actually �good.� Again, if I'm translating
from my experience, I would ask that the use of pattern language in
software has the tendency to make the program or the thing that is being
created is morally profound -- actually has the capacity to play a more
significant role in human life. A deeper role in human life. Will it
actually make human life better as a result of its injection into a
software system? Now, I don't pretend that all the patterns that my
colleagues and I wrote down in A Pattern Language are like that. Some of
them are profound, and some of them are less so. But, at least it was
the constant attempt behind our work. That is what we were after. I
don't know whether you, ladies and gentlemen, the members of the
software community, are also after that. I have no idea. I haven't heard
a whole lot about that. So, I have no idea whether the search for
something that helps human life is a formal part of what you are
searching for. Or are you primarily searching for - what should I call
it - good technical performance? This seems to me a very, very vital issue."
Pascal
--
Tyler: "How's that working out for you?"
Jack: "Great."
Tyler: "Keep it up, then."