Channels ▼

What the Dormouse Said

August, 2005: What the Dormouse Said

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

"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 (http://www

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 (http://www.wheels .org/spacewar/stone/rolling_stone.html). 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.

Tiger Is a Pussycat

The twelve jurors were all writing busily on their slates...
"They're putting down their names," the Gryphon whispered... "for fear they should forget them before the end of the trial."
"Stupid things!"
...all the jurors were writing down "Stupid things" on their slates...
—Lewis Carroll, Alice in Wonderland

It felt like Fat Book Week.

I define weeks by the book(s) that I'm reading, and during the week in which I finished this column, Nancy and I ate lunch together with our current light reading in hand: She reading M.F.K. Fisher's The Art of Eating (2.47 lbs.), I reading Douglas Adams's The Ultimate Hitchhiker's Guide to the Galaxy (1.78 lbs.), both in paperback—as was the copy of Lewis Carroll's Complete Works (1.83 lbs.) that I was consulting in my dormouse research. In contrast, What the Dormouse Said is a normal-sized book at 310 pages and only 1.26 lbs. in hardback. One of my favorite books is Italo Calvino's If on a winter's night a traveler (1.05 lbs. hardback), an exercise in delicious frustration that consists of nothing but first chapters of imaginary novels. I'm afraid that the rest of this column may read a little like If on a winter's night a traveler.

I've started looking seriously at several Apple technologies that were released in the latest version of its operating system and that are designed to empower users, including Spotlight searching, Dashboard Widgets, and Automator actions and workflows. But I'm just about to head out for Apple's Worldwide Developer's Conference, and I admit that I have held off getting too deeply into these (admittedly rather shallow) technologies until I get my dose of WWDC propaganda—er, education. Thus the abortive introductions here.

One thing that I assume I'll be learning at WWDC is that ordinary users are too stupid to appreciate nested Boolean queries or iteration or branching. Obviously they are, because Apple has left these features out of the user interfaces to the aforementioned technologies.

Lost and Found Department

"...even Stigand, the patriotic archbishop of Canterbury, found it advisable—"
"Found what?" said the Duck.
"Found it," the Mouse replied rather crossly. "Of course you know what 'it' means."
—Lewis Carroll, Alice in Wonderland

Apple's new desktop search technology, Spotlight, is getting mostly positive reactions, but there are some rough edges. As a user, if you're just looking for a file on your main hard disk or on a constantly attached external hard disk, it's a lightning fast search tool with an elegantly simple user interface, always available and providing a rich breakdown of found items and much customizability. But if you are searching on a disk for the first time, or on a disk that has been modified since it was last attached to your machine, or want to do complex searches, you may be a little frustrated.

Apple doesn't see fit to share the fact with the great unwashed, but it is possible to use Boolean operators in your Spotlight searches. NOT xxx is expressed as (-xxx), xxx AND yyy is expressed as xxx|yyy, and xxx OR yyy is expressed as xxx yyy. That Apple doesn't even mention this is either evidence of its disdain for the intelligence of its target user or evidence of my misunderstanding of just who that target user is, probably the former, particularly given that you can't nest these Booleans.

The key to Spotlight's speed is that it precollects file metadata, and this collecting is integrated tightly into file I/O at the kernel level using metadata importer plug-ins, one for each type of file Spotlight expects to be able to handle. Apple encourages developers to supply plug-ins for their apps' unique file types; Apple itself ships with Spotlight all the plug-ins for the obvious file types.

Although the default UI for Spotlight is logic-crippled, the API lets you build complex searches, as you would hope. The syntax for this is C-like and bears no relationship to the UI syntax. Apple supplies some nice command-line tools for constructing searches, too. More about this, maybe, next month.

Two-Faced Apps

"One side will make you grow taller, and the other side will make you grow shorter."
—Lewis Carroll, Alice in Wonderland

Widgets, the Desk Accessories for OS X, are simple apps created using HTML, CSS, and Javascript. Dashboard is an always-on application that displays these widgets on the desktop and lets you control which will be displayed. Typically, clicking on the corner of a widget causes it to rotate visually, showing you its back where you can tweak its settings. widgets fall into one of three categories: widgets that package access to Internet information, widgets that provide an alternate interface to an application, and Accessory Widgets such as clocks and calculators. Anyone who can write a web page can write a widget. That's the short story.

A widget can also be programmed partly in Perl or Applescript or any UNIX scripting language, opening up a lot of system capability to widget developers. And there's drawing capability available via the canvas tag, one of a very few additions Apple has made to standard HTML for widgets. Also, widgets can run any code that Apple's Webkit can run, including Quicktime movies and Shockwave apps. Finally, you can extend widgets with Objective-C code. This suggests that there might be at least two tiers of widgets, the easy and the hard. Or, as you might want to put it, the dull and the interesting.

Managing Verbs

"...verbs, they're the proudest—adjectives you can do anything with, but not verbs—however, I can manage the whole lot of them!"
—Lewis Carroll, Alice in Wonderland

At last year's WWDC, the technology released this year as Automator was known as "Pipeline."

Automator is a simple graphical tool for combining existing chunks of code into what Apple calls a "Workflow." The chunks are called "actions" and can be written using Perl, Python, shell scripting, Applescript, Objective-C, or whatever. Actions can also be application specific, in which case they are stored in the Application's bundle and read from there. Script-based and C-based actions are treated somewhat differently—for one thing, they are run in different threads—but can be freely intermixed in a workflow.

All available actions are listed in a window when Automator runs. Each action can have a single input and a single output, and when you drag an action into the Workflow window, it snaps together visually with actions above and below it only if the output data type of an action matches the input data type of the action below it. Depending on how the action was written, it may offer some options to select via pop-ups, buttons, and so on. You can specify that the output of one action is to be used as input for the following, or let it be discarded.

You can, for example, hook up a TextEdit Ask for Text action that queries users for text and a Spotlight search action, and the user-input text will be used as the Spotlight search string. Selecting the Show Action When Run option and saving this workflow as an application gives you a new interface to Spotlight, subverting the sometimes annoying feature that has Spotlight constantly refine its search with each letter that you type.

The structure you build in the Workflow window always fits nicely (with scrolling) because the structure is strictly linear: There's no branching and no iteration. One Apple-supplied action does allow for a decision, but it doesn't help much: It queries users at runtime, and based on user input either terminates the Workflow or continues.

Workflows can be saved as Automator documents, standalone applications, or plug-ins.

Within these limitations, Automator can be a useful tool for system administrators or video producers or graphic designers. It makes it possible for anyone with zero programming knowledge to automate repetitive tasks. I've found several uses for it already, creating my own little bulk file compactor, automating certain routine editing operations on and labeling of images, and so forth.

All the power of Automator and the Workflows it creates comes from the predefined actions, of course. A number of app developers have come up with actions specific to their apps; there's a third-party web site, http://www.automatorworld .com/, dedicated to sharing actions, workflows, and information; and Apple provides help in creating your own actions. About which, perhaps, more next month.

What I'm especially interested in exploring, and I can see from the downloads at Apple and at http://www that I'm not alone, are the possibilities for interaction among all these scripting/searching technologies.

"Of course, of course; just what I was going to remark myself."
—The Dormouse, Alice in Wonderland


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.