Foreword by Richard P. Gabriel

‘Software patterns have significantly changed the way we design…’ is how POSA5 starts out—its preface, its self-explanation, maybe its justification. But design: what happens when we design? Is design about problems or about beauty? Does resolving forces while solving a problem force beauty into the design? Or can beauty and ideal problem solving emerge only after a (pattern) language has been tooled over the raw material? Someone once told me that any establishment where the entrance is obvious is not worth visiting.

The Oxford English Dictionary, second edition, informs us about design as follows:

1. A mental plan.

1.a. a plan or scheme conceived in the mind and intended for subsequent execution;…the preliminary conception of an idea that is to be carried into effect by action; a project;

In Guy Steele's 1998 talk at OOPSLA, ‘Growing a Language,’ he said:

A design is a plan for how to build a thing. To design is to build a thing in one's mind but not yet in the real world—or, better yet, to plan how the real thing can be built.

I once wrote:

Design is the thinking one does before building.

Carliss Baldwin and Kim B. Clark define design like this:

Designs are the instructions based on knowledge that turn resources into things that people use and value.

Between ‘Knowledge’ and ‘the Economy’: Notes on the Scientific Study of Designs

Each of these definitions and characterizations revolve around ideas, plans, knowledge, problems, values and ...

Get Pattern Oriented Software Architecture Volume 5: On Patterns and Pattern Languages now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.