Channels ▼

Book Reviews

Dr. Dobb's Programmer's Bookshelf Newsletter

The Nature of Order, the four-volume series by Christopher Alexander, is a good candidate to become one of the most important software-engineering books of the 21st century. Although it aims at the theoretical foundation of architecture, the series contains a general theory of order and of complex systems that's applicable to software development and, as some computer scientists have predicted, may change the way we develop software.

The Phenomenon of Life: The Nature of Order, Book 1 lays down the foundations of Alexander's theory--that human beings perceive everything as alive. For example, beautiful places in mountains are perceived as having more life than typical steel-and-glass office buildings. Traditional societies thought it obvious that clouds, trees, stones, and places were alive and personal. In modern times, however, this is not necessarily so. Alexander argues that, to some degree or another, life exists in every part of space and matter. That life is well defined, objectively existing, and measurable. That life depends on structural properties of objects. Alexander identifies 15 fundamental structural properties that appear again and again in things that have life. For software engineers, Alexander's concept of "life" is one of the more challenging (and often misunderstood) aspects of his theory, but it is of great importance for software development. Life, as Alexander understands it, is tightly connected with function. For example, the beauty of a flower is the result of paying attention to function at every step of development, not aesthetic considerations. In other words, life is the result of perfect adaptation of form to function.

For many developers, the most interesting of the four books in the series is probably The Process of Creating Life: The Nature of Order, Book 2. In this volume, Alexander examines the importance of process in building living structures. Only what Alexander calls "living processes" are capable of creating life. Such processes are commonly found in nature; for example, the development of embryos or the growth of flowers from seeds. Living processes are always generative. While this is probably the most important feature of living processes, generative processes are not currently used in software development to any great extent. It is worth noting that practically all successful complex systems are the result of generative processes, and complexity is one of the greatest challenges in software development. Features of generative processes include:

    * Generative processes always operate on the whole, such as in embryo development where the system is not composed from parts, but the whole unfolds from the very beginning.
    * This unfolding is through a sequence of transformations, which Alexander calls "structure-preserving transformations." Such transformation acts and elaborates on existing wholeness, preserving its structure, similar to what we see in software with refactoring, where transformation of the code preserves the function (but not the structure). Another example of a structure-preserving transformation is proper use of patterns.
    * Generative processes are highly adaptive. At each step, there is maximal adaptation to inner and outer forces.

There are a number of primitive structure-preserving transformations that other transformations are composed of. These primitive transformations correspond directly to the 15 fundamental properties of living structures--each primitive transformation introduces into the system one property.

Alexander has managed to define and successfully apply living processes to architectural projects, some of which are described in A Vision of a Living World: The Nature of Order, Book 3.

In The Luminous Ground: The Nature of Order, Book 4, the most philosophical book in the series, Alexander argues that his theory and collected data force both changes in our world view and the emergence of a new cosmology. In this new view, space and matter are alive and personal and this is an objective feature. It is a cosmology that places our experience of the self as the link that unites each individual with the whole, connecting consciousness and matter.

The Nature of Order is an abundant source of ideas and inspiration for software engineers, although for some people it may be difficult to grasp (both in size and in meaning). It has the deepest insights into software development that I have ever read, although meaningful adaptation to software engineering requires a lot of systematic effort. In any event, The Nature of Order is a must-read for architects, designers, and anyone interested in the development process.

The Phenomenon of Life: The Nature of Order, Book 1
Christopher Alexander
Center for Environmental Structure, 2003
476 pp., $75.00
ISBN 0972652914

The Process of Creating Life: The Nature of Order, Book 2
Christopher Alexander
Center for Environmental Structure, 2003
636 pp., $75.00
ISBN 0972652922

A Vision of a Living World: The Nature of Order, Book 3
Christopher Alexander Center for Environmental Structure, 2004
690 pp., $75.00
ISBN 0972652930

The Luminous Ground: The Nature of Order, Book 4
Christopher Alexander
Center for Environmental Structure, 2003
356 pp., $75.00
ISBN 0972652949

Jacek has a Ph.D. in mathematics and has been working in software engineering for the last 10 years. His current research area includes adaptation of Alexander's theory to software development.

What the Dormouse Said

by Michael Swaine

But what did the Dormouse say?" one of the jury asked. "That I can't remember," said the Hatter. --Lewis Carroll, Alice in Wonderland

The title of John Markoff's new book is What the Dormouse Said (subtitle: How the 60s Counterculture Shaped the Personal Computer Industry), so--literal-minded fact-check freak that I am--I felt compelled to research this dormouse question.

As anyone with even the slightest pretense of knowledge of 20th Century popular culture knows, it was singer-songwriter-giclee artist Grace Slick of Jefferson Airplane, in her song "White Rabbit," who attributed the advice "feed your head" to the dormouse of Lewis Carroll's Alice in Wonderland. Or else she didn't. Whether Slick really meant to put these words in the dormouse's endangered little mouth is ultimately a question of punctuation, an arcane art probably never fully mastered by any singer-songwriter-giclee artist. Slick may have meant:

Remember what the dormouse said: Feed your head.

or she may have meant:

Remember what the dormouse said. Feed your head.

which is something else altogether. In any case, Lewis Carroll's dormouse never said "feed your head." The question of what that fictional Muscardinus arvellanarius said arises explicitly in Chapter 11 of Alice in Wonderland, where it is explicitly left unanswered. In the story itself, that is. But there's nothing (other than logic and proportion) stopping anyone from Googling the (public domain, web-posted) text, and so I am prepared to answer the question: What did the dormouse say?

Mostly "treacle," it turns out, with an impressive run of "twinkle."

In the detritus drawn in by my Googling net, several further dormouse facts were beached: Common dormice spend three quarters of their life asleep. In Britain, the loss of ancient woodlands and changes in climate have led to a decline in dormouse numbers, and they are now protected by law and may not be disturbed except under license. A Dormouse Disturbing License, I guess. In Edirne, Turkey in 1999, at the 4th International Conference on Dormice (they should be up to 10 by now), Dr. Pat Morris proposed a web site and an e-mail newsletter "to facilitate contacts among scientists and to discuss standard methods for future dormouse research" (see For $850 you can pick up a trippy 11x14 Grace Slick giclee dormouse (

Off With His Whiskers

"Collar that Dormouse!" the Queen shrieked out. "Behead that Dormouse! Turn that Dormouse out of court! Suppress him! Pinch him! Off with his whiskers!" --Lewis Carroll, Alice in Wonderland

Enough about the dormouse. Let us consider this whole dormouse topic as dead as an overworked simile. Just forget what the dormouse said. The dormouse is a red herring.

Although Markoff and most reviewers of the book might disagree, I contend that Markoff's book is not really about what either its title or its subtitle says it's about. There is a fascinating story to be told of the influence of 1960s counterculture on those who brought the personal computer into existence. It's so fascinating, in fact, that it's been told several times. In 1984, Steven Levy told that story in his way in Hackers, and Paul Freiberger and I told it in our way in Fire in the Valley. But Stewart Brand had already spelled it out in his way in "Spacewar: Fanatic Life and Symbolic Death Among the Computer Bums" in Rolling Stone before any of us knew what was going on ( And that's just the journalists who hung out on the fringes for the contact high; there was Ted Nelson reporting from the trenches while drafting the revolutionary manifesto for the countercultural nascence of the personal computer. And so on. So there's no reason why Markoff shouldn't recount that story in his way, especially since he has dug up some fascinating details that we all missed.

If that was really what the book was about, reviewing it here would make a nice counterpoint to my review three months ago of The Hypermanic Edge in which John Gartner suggests that the computer revolution was caused by a bunch of ADD CEOs with a hypomanic personality disorder. But if that was really what Markoff's book was about, it would also be no more than a fresh collection of anecdotes in support of an already well argued thesis. And there would be a lot more drug stories in it.

But what the book is really about is the influence of two laboratories--Douglas Engelbart's Augmented Human Intellect Research Center at SRI and John McCarthy's Stanford Artificial Intelligence Laboratory (SAIL)--on the development of the personal computer. At least, I think that that is the real contribution it makes to the history of computing.

Engelbart's cohesive vision of the future of computing was amazing in its scope and its prescience. His story is by turns inspiring, tragic, and again inspiring. Is it a story of failure or success? Markoff understands that it is not one or the other. Engelbart succeeded in raising funding, in running a lab for years dedicated to exploring his ideas, in developing breakthrough technologies like the mouse, and then succeeded in putting on the mother of all demos and inspiring talented developers to create the future. On the other hand, his grand plan has never really been implemented. But he's still at it, working to bring to fruition his vision of collaborative computing. He's a fascinating thinker, as I think would be the opinion of one former DDJ editor (not me) who went off to work with him.

Markoff told me things in this book that I didn't know about Engelbart as he related how he got to the point where he had to think his big thoughts and then try to make them real, about the wrangling for the money and freedom to do his work, and about those who worked with him.

The material on SAIL is not as extensive, but still has some information that was new to me. And you'll also find stories here about some other familiar names: Jim Warren, DDJ's first editor, Larry Tesler, Alan Kay, Stewart Brand, activist Fred Moore, and others.

Now it is undeniably true that Markoff also weaves through the book a counterculture theme, recounting what was going on in parallel with the technological developments. He touches on the Berkeley Free Speech Movement, the Free University, drugs, sexual freedom, hot tubs, communes, the antiwar movement, and CIA operatives trying to infiltrate all of the above. He wants us to see that the direction of the technological developments was influenced by the counterculture, and I do think that he largely succeeds. I would think that, of course; I've argued the same thesis myself. I am, for example, convinced that Fred Moore's political activism influenced the People's Computer Company and the Homebrew Computer Club and through them the direction that personal computer technology took, and I believe that certain values that came to the foreground in the '60s were directly generative of the hacker ethic and the open-source movement.

Where Markoff loses me is when he contends, for example, that using LSD increased Doug Engelbart's creativity. Chalk it up to my substance ignorance, but I don't buy the drug wisdom myth. Ultimately, I think that Markoff's original contribution here lies in documenting Engelbart's contribution and the work at SAIL.

What the Dormouse Said: How the 60s Counterculture Shaped the Personal Computer
John Markoff
Viking Adult, 2005
336 pp., $25.95
ISBN 0670033820

Michael is editor-at-large for DDJ. He can be contacted at [email protected]

Jerry Pournelle Recommends...

The computer book of the month is Jonathan Hassell, Learning Windows Server 2003 (O'Reilly & Associates, 2004). Hassell knows his subject, and if you find yourself needing to migrate to 2003 Server, this is the book to have when you do it.

Learning Windows Server 2003
Jonathan Hassell
O'Reilly & Associates, 2004
704 pp., $44.95
ISBN 0596006241

Jerry is a science-fiction writer and senior contributing editor to You can contact him at [email protected]

Recent Releases

Design of Embedded Control Systems
Marian Andrzej Adamski, Andrei Karatkevich, Marek Wegrzyn (Editors)
Springer, 2005
268 pp., $139
ISBN 0387236309

This volume presents new results in the design of embedded control systems, with each chapter authored ban expert. The text focuses on current issues with new approaches for the analysis and synthesis of discrete systems and is aimed at programmable logic controllers and their specification and design.

Building Sci-Fi Moviescapes
Matt Hanson
Focal Press, 2005
176 pp., $39.95
ISBN 0240807723

A behind-the-scenes examination of how the digital city and space-scapes in science fiction movies are created through the eyes of directors, producers, production designers, and visualization artists. From seminal movies of the 1980s such as Tron and Bladerunner, to classic series such as The Matrix and Star Wars, this book is the definitive guide to the imagined aesthetics of the future. Through authoritative commentary and interviews with key directors, producers, production designers, and 3D visual artists, the book explores trends and digital visualization methods in science fiction films from the last three decades.

Hands-On Microsoft Access: A Practical Guide to Improving Your Access
Bob Schneider
Addison-Wesley Professional, 2005
528 pp., $39.99
ISBN 0321245458

Millions of people use Microsoft Access, but only a small fraction of them are really comfortable with it. If you're ready to go "beyond the wizards" and become a confident, highly effective Access user, this book promises to help you do it.

Degunking Your Mac, Tiger Edition
Joli Ballew
Paraglyph, 2005
400 pp., $24.99
ISBN 1933097051

Focusing on the Mac's new Tiger OS, Apple expert Joli Ballew provides scores of tips and tons of advice on fixing your desktop; cleaning up your iPod; straightening out the dock, finder, and menu bar; and getting the most out of Dashboard. The author leads readers through her guaranteed recipe for a faster, more-efficient computing experience.

Ship it!: A Practical Guide to Successful Software Projects
Jared Richardson and Will Gwaltney
Pragmatic Bookshelf, 2005
200 pp., $41.95
ISBN 0974514047

This book introduces the common technical infrastructure that every project needs. Readers can choose from a variety of recommended technologies according to their skills and budgets to get the job done.

Contact Us

To contact Dr. Dobb's Programmer's Bookshelf Newsletter, send e-mail to Deirdre Blake, DDJ Managing Editor, at [email protected].

All content copyright 2005, CMP Media LLC.

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.