12. Esthetics and Style in Technical Design

Monticello: Jefferson’s adaptation of Palladio’s adaptation of Roman style
iStockphoto

image

Firmitas, utilitas, venusitas
    (Firmness, usefulness, delight)

MARCUS VITRUVIUS [22 BC],
DE ARCHITECTURA

Style is the dress of thought, and a well-dressed thought, like a well-dressed man, appears to great advantage.

LORD CHESTERFIELD [1774], LETTER CCXL, 361

Esthetics in Technical Design

Vitruvius famously asserted that a good building architecture achieves “firmness, usefulness, and delight.”1 Delight is equal with firmness and usefulness, although from a purely utilitarian point of view firmness and usefulness should quite suffice.

The whole human experience confirms him. We have always wanted our public and private structures to satisfy the soul’s need for beauty, and we have almost always been willing to invest extra work toward that end.

The cave man painted on the walls of his cave; Native Americans decorated their hide tepees. Prehistoric Britons decorated their pottery with fingernail carvings. Moldings, carving, tiling, paneling, and painting have supplemented the firm structures and the convenience features of dwellings through the centuries. Standards of beauty have varied widely, from the ornate to the lean, by culture and by epoch, but visual beauty has always been a goal for building design.

What is the role of beauty, of esthetics, in technical design? Cars, airplanes, and ships have physical forms and therefore are capable of visual beauty. But this is not the whole story. We find ourselves talking about “elegant” and “ugly” programming languages. When we speak of a “clean” computer, we are referring not at all to the visual appearance of its industrial design, but to some property of its logical structure.

We rejoice as we behold and use some designs. Others with equivalent function and equal soundness fail this test, and we care. The delight may be visual, auditory, gustatory, or haptic. It may even be purely intellectual, as with a beautiful proof or a well-dressed thought. Our language captures this in many ways—we casually talk about an “elegant” program, and our hearers know what we mean.2

What Is Logical Beauty?

Parsimony

“Elegance” Requires Parsimony

One definition of elegance in mathematics is “accomplishing a great deal with few elements.” This certainly applies to proofs. Alas, too many math textbook authors believe it applies as well to explication. Clearly sufficiency is not enough for good explication; clarity demands expansion and illustration with examples.

One is tempted to design programming languages with parsimony as the guiding principle. And computer design clearly must place a high value on parsimony, the use of few elements.3

Lisp, for example, has a tiny core, but elegant provisions for extensibility and composability give it power. Visual Basic, on the other hand, is considerably more complex, but much more difficult to extend.

Not the Whole Story

Parsimony is not enough, however. Adding an “unnecessary” bit of componentry, such as index registers, to a computer can radically improve its performance and its performance/cost ratio. Common Lisp expands the basic language to make it easier for programmers to get about their business.

Van der Poel designed a computer with only one operation code.4 Every instruction carried out the same operation. He demonstrated the sufficiency of his operation—his machine could do anything any other computer could do. And yet it was very difficult to program. Ironically, the delight that came from using it was similar to the delight from working out a crossword puzzle—a construct of intentional complexity and no intended utility.

In practice, the effective use of van der Poel’s machine required mastery of a whole library of nonobvious idioms. Van der Poel coded up some subroutines and macro operations, and everybody else programmed in the somewhat higher-level language thus produced.

A similar story can be told of APL, a very elegant and powerful programming language. Many styles of programming can readily be expressed in APL—from the clear and straightforward to the convoluted and overcompacted. Although the operators have quite straightforward actions, nonobvious idiomatic combinations are sometimes used for high-frequency functions. Examples are given in Computer Architecture, Section A.6. Program A-41, “Force to even,” halves a number, floors it, and doubles it (Blaauw and Brooks [1997]).

In some circles, it is even fashionable to see how much function can be packed into one line of APL, however convoluted and idiomatic. “One-liners” are traded about and published with glee and pride. But again, this is crossword puzzle sport, not elegant design. Programming languages exist to facilitate the writing—and the much more frequent reading—of programs, not to serve as puzzles.5

Structural Clarity

Parsimony Is Not Enough

One also demands a certain straightforwardness in a language or a computer architecture. There should be a direct route from what one wants to say to how one says it.

Human natural language, which we may assume developed to meet a total combination of real needs, is far from parsimonious. Shannon [1949] showed that the redundancy of English is about 50 percent.6 Even with this much redundancy, human languages develop idioms, just as programming languages do.

Structure

“Elegance” in a technical design demands that the basic structural concept of the design be plainly evident and, if not logically straightforward, easily explained.

Metaphor

Both “elegance” and comprehensibility are aided by the use of familiar and simple metaphors, especially in user interfaces to the designed object. The “Desktop” of the Macintosh operating system is a prime example. VisiCalc’s “spreadsheet,” now more familiarly embodied in Excel and Lotus, is another.

Consistency

Gerry Blaauw and I have studied the question “What is good computer architecture?” Perhaps a look at that small treatment can illuminate the much larger question, “What is lovely technical design?” In the next subsection, I summarize Section 1.4 from our Computer Architecture [1997].7

What Is Good Computer Architecture?

An architecture that fails to include needed functions is erroneous. But even if the needed functions are present, they may still be awkward. Or the whole may be so complex that it is hard to learn and remember the functions and their rules. An architecture that is straightforward to use is often called clean.

Blaauw and I believe that consistency underlies all principles of quality. A good architecture is consistent in the sense that, given a partial knowledge of the system, one can predict the remainder.8

For example, the mere decision to include a square-root operation in an operation set should almost fully define the operation. The data and instruction formats should be the same as those for other floating-point arithmetic operations. Precision, range, rounding, and significance should be handled as with other results. Even taking the square root of a negative number should have an exception treatment similar to that of division by zero.

Still, the truly consistent solution can be hard to identify. For computer architecture, some touchstones are brevity of description, simplicity of code generation, and suitability for many implementations.

Derived Principles

From consistency flow three major design principles: orthogonality, propriety, and generality.

Orthogonality: Do Not Link What Is Independent

A change in one orthogonal function has no observable effect on any other function in the set. For an alarm clock, for instance, a set of functions might include a lighted face and an alarm. Orthogonality would be violated if the alarm operated only when the face was lighted. We give many examples of the violation of orthogonality in computer architectures in our book.

Propriety: Do Not Introduce What Is Immaterial

A function meeting an essential requirement is called proper. For a car, functions such as steering, speed control, lights, and windshield washer are proper to its purposes.

The opposite of propriety is extraneousness. An example is the automotive gearshift. Shifting gears is not proper to driving; the extraneous component of the user interface arises from the implementation of the car.

An example of propriety in computers is the unique representation of zero in twos-complement notation. In contrast, both signed-magnitude and ones-complement notations attach a sign to zero, a distinction that is extraneous. More rules have to be made as to how the signed zero behaves in arithmetic and zero-test operations; these often have unexpected effects in use.

Parsimony is a subset of propriety. Another is transparency, the property that a function’s implementation produces no visible side effects. In a computer, the implementation of the datapath with a pipelined organization should be invisible to the programmer.

Generality: Do Not Restrict What Is Inherent

Generality is the ability to use a function for many ends. It expresses the professional humility of the designer, his conviction that users will be inventive beyond his imagination and that needs may change beyond his ability to forecast. The designer should avoid limiting a function by his own notions about its use. When you don’t know, grant freedom.

The Intel 8080A has an operation called Restart. It was indeed intended for restarting after an interruption. But it was designed with enough generality that its most frequent use is for return from a subroutine.

The major ways generality is achieved are open-endedness (space for future development), completeness of function sets, decomposition of functions into orthogonal components, and composability.

More Virtues of Consistency

Consistency is reinforcing and self-teaching, because it confirms and encourages our expectations. It also solves the conflict between ease of use and ease of learning. Ease of learning requires a simple architecture, as with fixed-point arithmetic. Ease of use requires a complex one, as with floating-point arithmetic. When the designer makes fixed-point a subset of floating-point, the user’s comprehension of the architecture can grow naturally.

Style in Technical Design

On tuning in to the middle of a piece of classical music, a knowledgeable listener can usually guess the century and often the composer, even if he has never heard the particular work. On seeing an unfamiliar painting, we often can say, “Looks like a Rembrandt,” or “Dutch Golden Age.” British WRENs during World War II learned to recognize the characteristic Morse code “fist” of each Axis broadcaster and were thereby able to identify military units as they moved. So it is with bridges, automobiles, airplanes, and computer architectures. A particular computer “looks as if” Seymour Cray designed it.

One of the drivers of delight is what we call style (definition attempted below). Two style components affect delight: the consistency with which a style is effected, and the intrinsic qualities of the style itself. In architecture, music, cuisine, or computers, no style will appeal to everyone; a mishmash of styles delights no one.9

I have earlier argued that conceptual integrity is the most important attribute of a design. Surely the most important integrity of a design is in the overall structure, the very bones of the design. But it is important to follow a uniform style in the details, the skin, as well.

A style consistently applied is a component, even if only the “dress,” of the conceptual integrity of a product. It does more than delight—it aids the comprehensibility of the design. In turn, this begets ease of initial learning, ease of use, ease of recollection after disuse, ease of maintenance, ease of extension.

Style matters in all media of design, all genres.

What Is Style?

Precisely what is this characteristic way of working that confers designer recognizability on the products? This question is harder than it appears.

Definitions

The Oxford English Dictionary defines style, in the sense we are considering, as

14. Those features of literary composition that belong to form or expression rather than to the substance of the thought or matter expressed.

21. A particular mode or form of skilled construction, execution or production; the manner in which a work of art is executed, regarded as characteristic of the individual artist or of his time and place.

Webster’s Revised Unabridged Dictionary (1913 edition):

4. Mode of presentation, especially in music or any of the fine arts; a characteristic or peculiar mode of developing an idea or accomplishing a result.

Akin [1988], “Expertise of the architect”:

Style as an expression of the designer’s personal and professional choices is a vehicle which helps limit the many degrees of freedom that design problems have.

A Characteristic of Detailing

We observe that different works by the same artist are different in the subject painted, or the genre and themes of music composed, but alike in recognizable style. Similarly, the Oak Park church by Frank Lloyd Wright has certain resemblances of parts and arrangement to other architects’ churches, but it has a close affinity of line, of detailing, of ornamentation, of palette, with Wright’s residences. Whatever style is, it has more to do with details of design than with the main purpose or thrust.10

A Hypothesis: Minimization of Mental Effort

All design, all creation, involves hundreds of microdecisions. Habits seem to be a mechanism by which humans economize on mental effort, by which we reduce the burden of decision making in everyday life. If this is indeed an inborn human trait, it surely carries over into our creative activities. Absent substantial reasons to do otherwise, we make the same microdecision the same way every time. The bundle of microdecisions, consistently made, characterizes our work and gives it the particularity, the distinctiveness, that yields recognizability.

Consistency across Microdecisions

One would expect microdecisions to be consistent not only across time but also across sets of similar decisions. In related microdecisions, the same factors enter, and the same mind would naturally weight them in a consistent way.

A Frank Lloyd Wright will tend to use rectilinear elements instead of curved ones in all his decorations, and in his structures, too. A Seymour Cray will consistently opt for maximum performance over compatibility with his earlier computers.

Clarity of Style

To the degree that a designer does indeed achieve consistency across a wide range of macro- and microdecisions, we say that he has a clear style, meaning that it is possible to describe it economically. It follows that recognition is easier.

Even a baroque architecture can show clarity of style. Wright’s architecture was spare as well as clear, but those aren’t the same property.

When little consistency across design decisions is achieved, we call the style opaque or muddled. Somehow, consistency brings clarity, and clarity brings delight.11

My working definition

Style is a set of different repeated microdecisions, each made the same way whenever it arises, even though the context may be different.

Moreover, related microdecisions are resolved in related ways.

Style unquestionably exists. A few bars tell us that a work is Bach’s, or Mozart’s, or Schubert’s. A famous exhibition brought together many Rembrandts, and many works once attributed to Rembrandt but now recognized as imitations. The experts agreed as to what was genuine; even laymen could tell surprisingly often.12

Reasonably knowledgeable people can readily tell a Seymour Cray computer from a Gerry Blaauw or Gordon Bell one.13 The authors of the unsigned Federalist Papers have been conclusively identified by details of their prose styles.14 Programmers can identify each other’s code. C. S. Lewis argues that Jesus’s miracles faithfully display the hallmarks of the Father’s creative style.15,16

Properties of Styles

Regardless of the medium of design, styles share some common properties.

Specification Is Costly

First, making a style explicit takes a remarkable amount of specification. The Chicago Manual of [English prose] Style runs 984 pages. Fowler’s Modern English Usage [1926ff.] invests some 2,800 words into defining the proper usage of the. Our implicit recognition of Bach’s style uses a lot of stored information.

Specification Is Hierarchical

Second, any style specification (explicit or implicit) is inherently hierarchical. Consider English prose:

• Dialect and diction

• Person, tense, formality, vividity of color, warmth of tone

• Balance and rhythm—prosody

• Usage—for instance, gender pronouns

• Punctuation

• Compositional layout—font, spacing, and so on

The compositional styling for this book, shown on its Web page,17 deals with book styling, chapter styling, headings, paragraphing, fonts, and other elements.

Styles Evolve

Third, styles evolve over time, even an individual’s style. Cognoscenti can tell Turner’s late pictures from his early ones.18 Larger styles, such as Gothic architecture, evolved so much that we distinguish Early, Decorated, and Perpendicular. Moreover, fashions in style evolve even faster, whether in pop music, teenage jargon, or 17th-century English gardens.

To Get a Consistent Style—Document It!

A design style is defined by a set of microdecisions. A clear style reflects a consistent set. A clear style may not be a good style; a muddled one never is.19

The aspiring designer must therefore strive for consistency of style. A design team has to work even harder at it. A sole author writing a ten-page paper, all at once, will have a clear style. The same writer, producing a book, will find he needs to document some stylistic microdecisions as he goes along, to maintain consistency. Moreover, even the ten-page paper will need a style sheet (or a careful final editor) if sections have multiple authors.

In most design contexts, many stylistic decisions are given at the start. A technical paper has the journal’s style manual; a book, the publisher’s. An automobile designer assumes a mammoth set of SAE standards plus a company catalog of preferred springs, nuts, bolts. An operating system designer has a library of standard subroutines.

Nevertheless, each particular design occasions lots of unprescribed microdecisions. Gerry Blaauw and I found that our large joint Computer Architecture grew a 19-page Writing Style Sheet.20 This of course supplemented both the overarching Chicago Manual of Style and Addison-Wesley’s own house style document. Comprehensive as these were, they left many unanswered questions that we had to specify. For example, how were we to refer to a particular computer? Manufacturer plus model number? All this for each and every mention, for only first mention? Or first mention per chapter?

Of course, a design team must document the design proper, whether in engineering drawings, building blueprints, or a user manual. They also must say why, capturing the designers’ intent so that the later maintainer will not in ignorance loose a vital stone from the edifice’s arch. This is the final work product. The team must also, to preserve conceptual integrity during maintenance, document internally the myriad of microdecisions that govern and compose the visible design.

How to Achieve a Good Style

The prescription is simple; the methods, straightforward; the work, arduous.

Study Other Designers’ Styles Intentionally

Practice working in another’s style. This will force close attention to detail and explicit thinking. It might also produce great works—consider Respighi’s Ancient Airs and Dances, or Fritz Kreisler’s Classical Manuscripts or his Praeludium and Allegro (in the style of Pugnani).21

Make Conscious Judgments

Write opinions as to what styles you like and why, what aspects of a particular style and why.

Practice. Practice. Practice.

Revise

Look for stylistic inconsistencies.

Choose Designers Carefully

Seek for your products designers who have clear styles and good taste, as demonstrated by their previous works.

Notes and References

1. Vitruvius [22 BC], De Architectura.

2. Gelernter [1988], Machine Beauty, makes a powerful argument that a sense of beauty, not just analysis, should govern design.

3. Steve Wozniak [2006], iWoz, proudly claims that the Apple I used only two-thirds as many components as other equivalent machines.

4. van der Poel [1959], “ZEBRA, a simple binary computer.” An accessible explanation of the machine is given in Blaauw and Brooks [1997], Computer Architecture, Section 13.1. See also van der Poel [1962], The Logical Principles of Some Simple Computers.

5. We commit a difficult APL one-liner in Computer Architecture in Program 9-8 on page 511 (Blaauw and Brooks [1997]).

6. Shannon [1949], The Mathematical Theory of Communication.

7. Blaauw and Brooks [1997], Computer Architecture.

8. Blaauw [1965], “Door de vingers zien”; Blaauw [1970], “Hardware requirements for the Fourth Generation.”

9. C. S. Lewis [1961], An Experiment in Criticism, argues strongly that excellence and level of style (“highbrow” versus “lowbrow”) are independent.

10. Alexander [1977], A Pattern Language, is an important architectural example.

11. Examples of clear styles that have particularly delighted me include some artificial and imitative ones:

• The open-air Spanish architecture museum, El Poble Espanyol, at Barcelona

• EPCOT at Walt Disney World, with its national pavilions

• Duke University’s Gothic campus

• Jefferson’s ten Pavilions on the Lawn at the University of Virginia, each illustrating a particular style

• Sidney Smith’s 18th-century prose

• The Respighi and Kreisler works cited

12. One work came as an imitation and went home to the Art Institute of Chicago as genuine.

13. For example, see Chapters 14 (Cray) and 15 (Bell) and Section 12.4 (Blaauw style) in the “Computer zoo” section of Blaauw and Brooks [1997], Computer Architecture.

14. Mosteller [1964], Inference and Disputed Authorship.

15. Lewis [1947], Miracles, Chapter 15.

16. Chen [1997], “Form language and style description,” is a serious review of What is style? and an attempt to quantify it.

17. http://www.cs.unc.edu/~brooks/DesignofDesign.

18. Most artists’ styles evolve. The exhibition “Monet in Normandy” (2006–2007) at the North Carolina Museum of Art emphasized the striking evolution of his style over the years.

19. One may or may not like Gaudí’s stunning Barcelona church, La Sagrada Familia, but there is no doubt about the conceptual integrity of the style.

20. Posted on this book’s Web page: http://www.cs.unc.edu/~brooks/DesignofDesign.

21. Kreisler first published Classical Manuscripts in 1905, asserting that he had found them in an old convent in the South of France. He was embarrassed to have his own name appear too often as composer on his concert programs. In 1935, he admitted that he had composed them, and they were republished as pieces “in the style of.”

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.119.121.101