Learning Dougspeak: The Importance of Shared Language

I worked with Doug Engelbart in various capacities from 2000 through 2003, and I often retell lessons and stories from those experiences. My favorite — untold on this blog so far — is how I almost wrote Doug and his ideas off early in my exposure to him. It’s a tale of one of my most significant transformative experiences and of the importance of Shared Language.    (1VF)

I had known of Doug’s inventions for many years because of my interest in Computer History, but my first exposure to his ideas about bootstrapping and organizational improvement occurred in 1998, when I attended a talk he gave at BAYCHI. I was hoping to hear stories about working at SRI in the 1960s and his perspective on usability today. What I got was an abstract lecture on organizational knowledge processes and cognitive frameworks. I walked away very confused.    (1VG)

A year later, Institute for the Future organized a day-long seminar at Stanford to mark the 35th anniversary of the mouse. It consisted largely of testimonial after testimonial from people whose lives and work had been touched by Doug, as well as hints of his larger, more humanistic goals. I was struck by the tremendous intellectual and emotional impact he had had on so many people’s lives, many of whom had gone on to do important work themselves. Both the speakers list and the attendees list read like a who’s who of the history of Silicon Valley.    (1VH)

In 2000, Bootstrap Institute organized a followup colloquium at Stanford. It was a 30-hour (over 10 weeks) seminar on Doug’s ideas, taught by Doug himself and featuring an impressive list of guest speakers. Naturally, I enrolled.    (1VI)

The first week’s session was great. Doug outlined his big picture, which was mind-blowing in and of itself, then marched out several guest speakers who provided some real-world context for Doug’s work.    (1VJ)

The second and third weeks were not as good. Doug began drilling down into some specifics of his framework, and it was starting to feel redundant and irrelevant. I was also getting the feeling that Doug was unaware of what had happened in the world over the past 30 years. “We know all of this already,” I thought. I wasn’t gaining any new insights.    (1VK)

After the fourth session, I had coffee with my friend, Greg Gentschev, who asked me how the colloquium was going. I told him I was going to stop attending, that the content was worthless, and that Doug was a kook. Greg, knowing little of Doug or his work, asked me to explain.    (1VL)

So I did. I started describing Doug’s conceptual universe. I explained his larger motivation regarding the complexity of the world’s problems and mentioned scaling effects and where humans and tools fit in. I translated some of his terminology and threw in some of my own examples.    (1VM)

As I talked, I had an epiphany. I had learned something significant over the past four weeks. I had spent 40 hours mentally processing what I heard, and when I finally had the opportunity to describe this stuff to someone, I realized I had a rich language for describing a powerful conceptual framework at my disposal. Doug wasn’t teaching new facts or force-feeding his opinions. He was rewiring our brains to see the world as he did.    (1VN)

That conversation with Greg convinced me to stick out the colloquium, which led to me getting to know Doug, which eventually led to what I’m doing now.    (1VO)

I recount this story here not out of nostalgia but because of the value it reaffirmed. Language is critical to learning, and Shared Language is critical for collaboration.    (1VP)

The first phase of an MGTaylor workshop is known as a Scan phase. It often consists of explorations of themes that have seemingly nothing to do with the topic at hand. Even worse, those explorations are often kinesthetic and quite playful. People don’t feel like they’re doing work at all, much less the work they think they’re there for. Many people get upset after the first third or half of an MGTaylor workshop.    (1VQ)

That usually changes in the end, though. That first phase is all about developing Shared Language. Once that language has been developed, the work (or “Action” phase) is highly accelerated. People are more productive working together than ever before.    (1VR)

Every effective facilitation technique I’ve seen incorporates this Shared Language phase at the beginning. Allen Gunn‘s tends to be more directed. Jeff Conklin‘s is entirely about developing Shared Language — he comes in for a few hours or a day and facilitates Shared Language via Dialogue Mapping. MGTaylor‘s is particularly effective with large, eclectic groups. However, it’s also critical that people stay for the entire event, despite their frustration. Otherwise, they miss out on the epiphany.    (1VS)

People get frustrated with meetings when they’re all talk, no action. The problem is that people then think that meetings are a waste, that they want all action, no talk. This type of thinking gets you nowhere. The problem is that the talk phase is not effective. People are not going through a conscious Shared Language phase. Once you develop Shared Language, you are now capable of acting collaboratively.    (1VT)

Tim Bray on Purple Numbers

I’ve long been a fan of Tim Bray‘s work, and although we had never crossed paths before, I had always assumed it would be instigated by me making some comment about something he had done or written about. (A few months back, I emailed him about ballparks in the Bay Area, because we seem to share a love for the sport, but that doesn’t count.) So I was surprised and pleased to see that Tim had made first contact and had (temporarily, as it turned out) implemented Purple Numbers on his blog. Not surprisingly, this is starting to generate some talk in the blogosphere. In particular, see:    (1G9)

Chris has done an excellent job of quickly addressing many of these issues. I’ll just toss in a few thoughts and references here and will look forward to more feedback.    (1GE)

Stable, Immutable IDs    (1GF)

Several people have pointed out that the IDs need to be stable. In other words, as the paragraphs move around or as new ones are added or deleted, the IDs stick to their original paragraphs. This was a fundamental motivation for Engelbart’s statement identifiers (SIDs), which we have renamed node identifiers (NID).    (1GG)

Both Purple (which needs updating) and PurpleWiki handle this correctly. You’ll notice that the addresses are stable on my blog and on Chris’s, as well as on all of the PurpleWiki installations (e.g. Collab:HomePage, PurpleWiki:HomePage). It’s because we use plugins for our respective blog software that call PurpleWiki‘s parser, which manages NIDs for us.    (1GH)

By using PurpleWiki to handle the purpling, blog content has NIDs unique to both the blog and the Wiki, which allows us to do fun stuff like transclude between the two. We get a similar effect with perplog, the excellent IRC logger written by Paul Visscher and other members of The Canonical Hackers. For example, check out Planetwork:Main Page and the chat logs over there.    (1GI)

Mark Nottingham noted that even if the NIDs are stable in the sense that they are attached to certain paragraphs, the paragraphs themselves are not semantically stable. This is a point on which I’ve ruminated in the past, and we still don’t have a good solution to it.    (1GJ)

History and Other Worthy Projects    (1GK)

I’ve written up my own brief history of Purple Numbers, which fills in some holes in Chris’s account. In it, I mention Murray Altheim‘s plink. Plink is no longer available on the net, because it has been subsumed into his latest project, Ceryle. Everything that I’ve seen about Ceryle so far kicks butt, so if you’d like to see it too, please drop Murray an email and encourage him to hurry up and finish his thesis so that he can make Ceryle available! You can tell him I sent you, and you can forward him the link to this paragraph; he’ll understand.    (1GL)

Matt Schneider is the creator of the PurpleSlurple purple numbering proxy, which will add Purple Numbers to any (well, most) documents on the Web. PurpleSlurple deserves a lot of credit for spreading the meme.    (1GM)

Mike Mell implemented Purple Numbers in ZWiki for last year’s Planetwork Conference (see ZWiki:ZwikiAndPurpleNumbers), which in turn influenced the evolution of Purple Numbers in PurpleWiki. Mike and Matt have both experimented with JavaScript for making the numbers less intrusive.    (1GN)

The latest version of the Compendium Dialogue Mapping tool exports HTML maps with Purple Numbers.    (1GO)

In addition to Murray, Matt, and Mike, several other members of the Blue Oxen Associates Collaboration Collaboratory have contributed to the evolution of Purple Numbers, especially Peter Jones, Jack Park, and Bill Seitz. In addition to his contributions to the technical and philosophical discussions, Peter wrote the hilarious Hymn of the Church Of Purple and excerpts of the Book of the Church Of Purple.    (1GP)

Finally, many good folks in the blogosphere have helped spread the meme in many subtle ways, particularly those noted connectors Seb Paquet and Clay Shirky.    (1GQ)

Evangelism and The Big Picture    (1GR)

Okay, that last section was starting to sound like an award acceptance speech, and although none of us have won any awards, one thing is clear: The contributions of many have vastly improved this simple, but valuable tool. I’m hoping that momentum picks up even more with these recent perturbances. I’m especially heartened to see experiments for improving the look-and-feel.    (1GS)

I want to quibble with one thing that Chris Dent said in his most recent account. (When we have distributed Purple Numbers, I’ll be able to transclude it, but for now, you’ll just have to live with the cut-and-paste):    (1GT)

When he [Eugene] and I got together to do PurpleWiki, we were primarily shooting for granular addressability. Once we got that working, I started getting all jazzed about somehow, maybe, someday, being able to do Transclusion. Eugene was into the idea but I felt somehow that he didn’t quite get it. Since then we’ve implemented Transclusion and new people have come along with ideas of things to do that I’m sure I don’t quite get, but are probably a next step that will be great.    (1GU)

There are many things I don’t quite get, but Transclusions are not one of them, at least at the level we first implemented them. That’s okay, though. Ted Nelson felt the same way about my understanding of Transclusions as Chris did, although for different reasons. (And, I suspect that Ted would have had the same opinions of Chris.) I mention this here not so much because I want to correct the record, but because it gives me an excuse to tell some anecdotes and to reveal a bit about myself.    (1GV)

Anyone who knows Doug Engelbart knows that he complains a lot. The beauty of being an acknowledged pioneer and visionary is that people pay attention, even if they they don’t think much of those complaints. When I first began working with Doug in early 2000, I would occasionally write up small papers and put them on the Web. Doug would complain that they didn’t have Purple Numbers. At the time, I recognized the value of granular addresses, but didn’t think they were worth the trouble to add them to my documents. I also didn’t think they were the “right” solution. Nevertheless, because Doug was Doug, I decided to throw him a bone. So I spent a few hours writing Purple (most of which was spent learning XSLT), and started posting documents with Purple Numbers.    (1GW)

Then, a funny thing happened. I got used to them. I got so used to them, I wanted them everywhere.    (1GX)

A few people just get Purple Numbers right away. Murray was probably the first of those not originally in the Engelbart crowd to do so; Chris followed soon thereafter, as did Matt. The vast majority of folks get the concept, but don’t really find them important until they start using them. Then, like me, they want them everywhere. Getting people past that first step is crucial.    (1GY)

A few nights ago, I had a late night conversation with Gabe Wachob (chair of the OASIS XRI committee) on IRC. (This eventually led to a conversation between Chris and me, which led to Chris’s blog entry, which led to Tim discovering Purple Numbers, which led to this entry. Think Out Loud is an amazing thing.) Gabe knew what Purple Numbers were, but hadn’t thought twice about them. I had wanted to ask him some questions about using XRI addresses as identifiers, and in order to do so, I gave him a quick demonstration of Transclusions. The light bulb went off; all of a sudden, he really, truly got it.    (1GZ)

Richard Gabriel, one of our advisors, is well known for his Worse Is Better essays (among other things). I think Purple Numbers are an outstanding example of Worse Is Better. They fulfill an immediate need, and they cause us to think more deeply about some of the underlying issues. I’d like to see Purple Numbers all over the place, but I’d also like to see a group of deep thinkers and tinkerers consider and evolve the concept. It’s part of a larger philosophy that I like to call The Blue Oxen Way.    (1H0)

This last point is extremely important. Chris has thankfully been a much more enthusiastic evangelist of Purple Numbers than I have, and in the past he’s called me “ambivalent” about Purple Numbers. That’s not so far from the truth. It’s not that I’m any less enthusiastic about Purple Numbers themselves — I am a card-carrying member of the Church Of Purple, and the current attention and potential for wider usage thrill me. However, I’m cautious about evangelizing Purple Numbers, because I don’t want people to get too caught up in the tool itself and forget about the bigger picture. It’s the reason I didn’t mention Purple Numbers at all in my manifesto.    (1H1)

At the Planetwork forum two weeks ago, Fen Labalme, Victor Grey, and I gave the first public demo of a working Identity Commons Single Sign-On system. We were tickled pink by the demo, which to everyone else looked just like any other login system. The reason we were so excited was that we knew the system used an underlying infrastructure that would eventually enable much greater things. The demo itself, unfortunately, didn’t convey that to anyone who didn’t already understand this.    (1H2)

I’m probably a bit oversensitive about this sort of thing, and I’m constantly seeking better balance. But it’s always in the back of my mind. When I talk to people about Blue Oxen Associates, I usually spend more time talking about the sociological aspect of collaboration rather than the tools, even though I have plenty to say about the latter. Can Purple Numbers make the world a better place? I truly, honestly, believe that they can. (This is a topic for another day.) But when I see groups that excel in collaboration (or conversely, those that stink at it), Purple Numbers are usually the furthest thing from my mind. Much more important is the need to identify and understand these patterns of collaboration (of which tool usage is an important part).    (1H3)

Dialog Mapping Use Cases

The Compendium Dialogue Mapping tool came up in conversation on the Collaboration Collaboratory. In the course of the discussion, I explained that I use Compendium for three purposes:    (XW)

  • Personal note-taking.    (XX)
  • Taking shared notes during meetings.    (XY)
  • Facilitating face-to-face group meetings.    (XZ)

John Sechrest asked in response:    (Y0)

I have a client come in. We talk about what? And that causes what to show up on the compendium screen?    (Y1)

Specifically, what is the social process that compendium is facilitating?    (Y2)

And how is that different than just writing an outline in an editor?    (Y3)

I mean different things by taking notes on a Shared Display versus facilitating group meetings, so I’ll treat them separately in answering John’s questions.    (Y4)

There are three advantages to taking shared notes real-time. First, you know that a record is being kept of the meeting, which is reassuring. Second, you know that the notes are immediately available. Third, you have the chance to validate the notes as they are being taken.    (Y5)

Taking notes on a Shared Display is a great pattern, regardless of the tool you use. In fact, using a Wiki or a program like SubEthaEdit instead of Compendium may be more valuable in some ways because the note-taking can be collective. When I use Compendium to do this, only I can edit the notes.    (Y6)

The advantage that Compendium has over these other tools is the graphical IBIS grammar. IBIS (which can be expressed as a text outline) is slightly more semantically rigorous and slightly more compact than an outline. Graphical IBIS is superior to a textual outline, because the second dimension serves an additional reference for finding what you’re looking for.    (Y7)

Another advantage of the IBIS grammar is that it encourages, even forces participants to consider the underlying questions (a precursor to the Left-Hand Move pattern). This really comes through in facilitated meetings (with facilitators who are trained in Dialogue Mapping).    (Y8)

The most important thing Dialogue Mapping does in a facilitation context is depoliticize discussion. Dialogue Mapping focuses attention on ideas rather than on people by making sure that all ideas are captured and captured anonymously.    (Y9)

Jeff Conklin, the man responsible for graphical IBIS and Dialogue Mapping, has written a book on Dialogue Mapping that does a great job of explaining how it’s best used as well as the underlying theory. I’m not sure if the book is available yet, but I’ll check. In the meantime, I highly recommend Jeff’s Dialog Mapping workshops. I wrote an article a few years back describing one of these workshops.    (YA)

perlIBIS: The Virtue of Thinking Out Loud

Read Danny Ayers‘s blog this morning, and saw an entry describing Ken MacLeod‘s recent experiment with IBIS Dialogue Mapping. I took a look, and was surprised and thrilled at what I saw. Ken had used (and improved) perlIBIS, which I had written and last released two years ago.    (JU)

I note this not just because I’m pleased (I am), but because it also shows the importance of knowledge capture and thinking out loud. I had announced this work to members of the small Dialogue Mapping community, and had received some positive feedback but little else. That was fine; my motivation in writing the tool was to Scratch Your Own Itch and experiment with some ideas, and I accomplished that. That said, it was gratifying to see that the ideas and the tool had propagated outside of that community, and that someone else was doing something valuable with it.    (JV)

Perhaps this will be the kick in the pants I need to finally write up some of my notes on Dialogue Mapping, both for synchronous and asynchronous collaboration.    (JW)

OHS Launch Community: Experimenting with Ontologies

My review of The Semantic Web resulted in some very interesting comments. In particular, Danny Ayers challenged my point about focusing on human-understandable ontologies rather than machine-understandable ones:    (5D)

But…”I think it would be significantly cheaper and more valuable to develop better ways of expressing human-understandable ontologies”. I agree with your underlying point here, but think it’s just the kind of the Semantic Web technologies can help with. The model used is basically very human-friendly – just saying stuff about things, using (triple) statements.    (5E)

Two years ago, I set out to test this very claim by creating an ad-hoc community — the OHS Launch Community — and by making the creation of a shared ontology one of our primary goals. I’ll describe that experience here, and will address the comments in more detail later. (For now, see Jay Fienberg’s blog entry, “Semantic web 2003: not unlike TRS-80 in the 1970’s.” Jay makes a point that I want to echo in a later post.)    (5F)

“Ontologies?!”    (5G)

I first got involved with Doug Engelbart‘s Open Hyperdocument System (OHS) project in April 2000. For the next six months, a small group of committed volunteers met weekly with Doug to spec out the project and develop strategy.    (5H)

While some great things emerged from our efforts, we ultimately failed. There were a lot of reasons for that failure — I could write a book on this topic — but one of the most important reasons was that we never developed Shared Language.    (5I)

We had all brought our own world-views to the project, and — more problematically — we used the same terms differently. We did not have to agree on a single world-view — on the contrary, that would have hurt the collaborative process. However, we did need to be aware of each other’s world-views, even if we disagreed with them, and we needed to develop a Shared Language that would enable us to communicate more effectively.    (5J)

I think many people understand this intuitively. I was lucky enough to have it thrown in my face, thanks to the efforts of Jack Park and Howard Liu. At the time, Jack and Howard worked at Vertical Net with Leo Obrst, one of the authors of The Semantic Web. Howard, in fact, was an Ontologist. That was his actual job title! I had taken enough philosophy in college to know what an ontology was in that context, but somehow, I didn’t think that had any relevance to Howard’s job at Vertical Net.    (5K)

At our meetings, Jack kept saying we needed to work out an ontology. Very few of us knew what he meant, and both Jack and Howard did a very poor job of explaining what an ontology was. I mention this not to dis Jack and Howard — both of whom I like and respect very much — but to make a point about the entire ontology community. In general, I’ve found that ontologists are very poor at explaining what an ontology is. This is somewhat ironic, given that ontologies are supposed to clarify meaning in ways that a simple glossary can not.    (5L)

Doug himself made this same point in his usual ridiculously lucid manner. He often asked, “How does the ontology community use ontologies?” If ontologies were so crucial to effective collaboration, then surely the ontology community used ontologies when collaborating with each other. Sadly, nobody ever answered his question.    (5M)

OHS Launch Community    (5N)

At some point, something clicked. I finally understood what ontologies (in an information sciences context) were, and I realized that developing a shared ontology was an absolute prerequisite for collaboration to take place. Every successful communities of practice had developed a shared ontology, whether they were aware of it or not.    (5O)

Not wanting our OHS efforts to fade into oblivion, I asked a subset of the volunteers to participate in a community experiment, which — at Doug’s suggestion — we called the OHS Launch Community. Our goal was not to develop the OHS. Our goal was to figure out what we all thought the OHS was. We would devote six-months towards this goal, and then decide what to do afterwards. My theory was that collectively creating an explicit ontology would be a tipping point in the collaborative process. Once we had an ontology, progress on the OHS would flow naturally.    (5P)

My first recruits were Jack and Howard, and Howard agreed to be our ontology master. We had a real, live Ontologist as our ontology master! How could we fail?!    (5Q)

Mixed Results    (5R)

Howard suggested using Protege as our tool for developing an ontology. He argued that the group would find the rigor of a formally expressed ontology useful, and that we could subsequently use the ontology for developing more-intelligent search mechanisms into our knowledge repository.    (5S)

We agreed. Howard and I then created a highly iterative process for developing the formal ontology. Howard would read papers and follow mailing list discussions carefully, construct the ontology, and post updated versions early and often. He would also use Protege on an overhead projector during face-to-face discussions, so that people could watch the ontology evolve in real-time.    (5T)

Howard made enough progress to make things interesting. He developed some preliminary ontologies from some papers he had read, and he demonstrated and explained this work at one of our first meetings. Unfortunately, things suddenly got very busy for him, and he had to drop out of the group.    (5U)

That was the end of the formal ontology part of the experiment, but not of the experiment itself. First, we helped ourselves by collectively agreeing that developing a shared ontology was a worthwhile goal. This, and picking an end-date, helped us eliminate some of the urgency and anxiety about “making progress.” Developing Shared Language can be a frustrating experience, and it was extremely valuable to have group buy-in about its importance up-front.    (5V)

Second, we experimented with a facilitation technique called Dialogue Mapping. Despite my complete lack of experience with this technique (I had literally learned it from Jeff Conklin, its creator, the day before our first meeting), it turned out to be extremely useful. We organized a meeting called, “Ask Doug Anything,” which I facilitated and captured using a tool called Quest Map. It was essentially the Socratic Method in reverse. We asked questions, and Doug answered them. The only way we were allowed to challenge him or make points of our own was in the form of a question.    (5W)

That meeting was a watershed for me, because I finally understood Doug’s definition of a Dynamic Knowledge Repository. (See the dialog map of that discussion.) One of the biggest mistakes people make when discussing Doug’s work is conflating Open Hyperdocument System with Dynamic Knowledge Repository. Most of us had made that mistake, which prevented us from communicating clearly with Doug, and from making progress overall.    (5X)

Epilogue    (5Y)

We ended the Launch Community on November 9, 2001, about five months after it launched. We never completed the ontology experiment to my satisfaction, but I definitely learned many things. We also accomplished many of our other goals. We wanted to be a bootstrapping community, Eating Our Own Dogfood, running a lot of experiments, and keeping records of our experiences. We also wanted to facilitate collaboration between our members, most of whom were tool developers. Among our many accomplishments were:    (5Z)

The experiment was successful enough for me to propose a refined version of the group as an official entity of the Bootstrap Alliance, called the OHS Working Group. The proposal was accepted, but sadly, got sidetracked. (Yet another story for another time.) In many ways, the Blue Oxen collaboratories are the successors to the OHS Working Group experiment. We’ve adopted many of the same principles, especially the importance of Shared Language and bootstrapping.    (64)

I believe, more than ever, that developing shared ontology needs to be an explicit activity when collaborating in any domain. I’ll discuss where or whether Semantic Web technologies fit in, in a later post.    (65)