What forms are available to contributors on a wiki such as this one? Which ones do we want to encourage in order to build a living community?


What is a pattern language for wikis going to be? The pattern language is there to both recognize good ways of running a wiki, and it is there to tell us what kind of decisions we need to make in order to run a good wiki. It is both descriptive and prescriptive.

What is a good wiki? One that feels right. It has the quality without a name. Phrases like the following are a rough idea of what we are talking about: A wiki where people feel like contributing, coming back, reading, of value for the greater community. Since there is no way to find an exact definition, we'll just leave it at that and work on the pattern language itself.

We'll talk about the technical and social features of software, host, founder, contributors, and readers: What kind of features we think are necessary, how to reworking pages, what structure to use for the site, how to communicate amongst each other, etc.

See PatternLanguage for some of the properties we're expecting.

Pattern Relations

(sketchy ideas in all-lowercase)

		            |		     |				      
		      ForwardIndex     WikiCategories			      
       SocialPages                          		     |
     |       |        |          |             PlainSearch   PageNamesAreLinks
     |   NamePage     |    RapidIdeaEntry
     |                |
 NoLeader         NetworkOfFriends             DeepPages
     |                |                            |
     |            |                        |                          |              
     |     WelcomeNewcomers                |                          |
     |                               |                |               |
     |                     EssayAndDiscussion   PatternLanguageEntry  |
     |                               |                |               |
               |                |                |                    |
            |              |                                          |
            |              |                              |              |
            +----+       RoleModel               WikiIsNoDictionary      |
                 |                                                       |
            SignPosts                                                RoadMap

I might replace this diagram in the future by some generated graphic, but for the moment ASCII-art will do.

Pattern List

To feel at home, we have:

To write great pages we have:

To structure the site we have:


[fr] WikiLangageDeFormes


ProgrammersDesignPatterns? all have a lot in common. They all use standard arrangements of objects to solve some common problem. They are all programming problems. The list above seems to have less in common. WikiCategories is really different than PeerPressure. – LionKimbro

Perhaps that just shows how monotonous programming is. ;) Christopher Alexander has pattern examples from towns, to buildings, to houses, to rooms, to window places, to the materials used for the window. It is a language in that you can describe what you see and what you do. I think the same is true for wikis. Instead of spatial relations, morphology, psychology, and material sciences, we're using a different set of sources for our patterns: Management, writing, rhetoric, psychology, etc. – AlexSchroeder

I might add to your list, FormOfWriting. You know- commercial writing, plain talk, code-wise writing, etc.,. – LionKimbro

I'm still contemplating where this would go… – AlexSchroeder

Somewhere wherebouts "EssayAndDiscussion."

Also, I seem to recall there being something called "Voice" in writing, and that this is something like that.


If the pages describe patterns, wouldn't they be… ShallowPages? I ask, because the whole reason I'm down here at the bottom of the page is to say: I don't believe that ShallowPages are intrinsically bad.

Sure, I think if you write a page for "SeeAlso?," saying what that is, that that's not what you want on most wiki (unless, I don't know; It's some special wiki all about referencing systems.) But I disagree with what I consider to be "that other wiki's" (to adopt a K5-ism to CommunityWiki) hardline stance.

Oh- there's a pattern I've recognized, with respect to ShallowPages. When you see that there is some sort of continuum, it's best to write one entry that describes the continuum, rather than the individual points on the continuum. Make pages for the points point to the whole continuum.

For example, if you had concepts Red, Yellow, Blue, and Black, you would make a page called "TheColors?," or "TheSpectrum?," or "TheRainbow?," and then describe the colors there, giving the frequency for each. That way, you don't have to build and maintain a complicated system connecting them all. Only in special cases do you want to grant a page to a particular point on the spectrum.

(I'm writing it up on WikiKM:TellingPartsAndWholes?, right now, in another buffer.)


Well, a shallow page can conceivably play an important role to illustrate an idea that can only be illustrated by a network of interconnected nodes. In this case, many of these nodes will not per se be deep and thoughtful. Only a "holistic" reading of the entire network of nodes will be deep and thoughtful. In this particular case I agree that a shallow page would be interesting. The question is:

  1. Do we already have such ideas that require shallow pages? I don't think so.
  2. If we had such an idea, can't we put the network into some ASCII art and discuss the network on one page only?


BTW, I've organized some of the links. I made "Places" and "Principles." Good?


"Places" and "Principles" – I don't mind… At the moment the list is not too long, so it doesn't need subsections, but I see your point: Perhaps we have two (or more?) pattern-"types" for a wiki. In the Christopher Alexander book, there is only one type of patterns: Buildings (3d, shapes, morphology, spatial arrangements, materials). But we have different types, perhaps: Pages and behaviour, or places and principles, or infrastructure and politics… This is interesting. I am still lacking an organizing principle for the patterns, here. I tried to determine them from the graph (which is why I spent so much time thinking about the graph). Deep, Social, Structure… But "places" and "principles" is interesting… Like an orthogonal classification. I like that. – AlexSchroeder

Alex, if you are interested in the mapping process; You might want to read (raw) pages 44-47 (in the book, numbered 31-34), and raw pages 60-69 (numbered 47-56) of my notebooks book. That section is on making "Maps of Contents," and walks through making such a map. (I'd like to wiki-tize that book some day.)

I think the planar arrangement is good. It is also good that we identify groups within the patterns, such as "Places" and "Principles." Keep doing this, and the intrinsic structure will show itself to us.

I have ultimate faith in constructing maps. It is the future of education and communication that we have more and more cognitive maps. Maps of things that are not physical, but very meaningful. It is a form of VisualLanguage.

There is a convergence down the road for wiki and VisualLanguage, I strongly believe.


VisualLanguage is an interesting tangent.

As for the wiki pattern language here, I'm struggling with the division into principles and places. I'm trying to be more stringent: Shouldn't we work hard to reduce the principle-patterns to places? Without recognizable manifestations in text, these patterns would always be imprecise. Now I just need a way to reduce the principle-patterns to textual manifestations. – AlexSchroeder

Wait- no. As the instigator of the "principles" and "places" thing- I say- no.

Let the patterns show themselves to you. I just saw a bunch of places, and said, "Those are places." I saw a bunch of principles, and said, "Those are principles." But we shouldn't go around trying to make everything into principles or places. Instead, we should collect, and identify what other things there are there. The patterns will reveal themselves to us.

It's just:

 1. Collect Data
 2. Observe for Patterns
 3. Fill in Holes
 4. GOTO 1

(Not sure how to make a numbered list in this wiki.)


Yep, that's how to do patterns. I'd suggest furniture and fauna, or less jovially site and people, instead of "places" and "principles". They seem to be about the text and the community producing it. – ChrisPurcell

Define external redirect: ProgrammersDesignPatterns NetworkOfFriends TheColors LinkPattern SignPosts PageNamesAreLinks RefactorLater TellingPartsAndWholes PlainSearch PatternLanguageEntry RewardResponsibility DeepPages TheRainbow TheSpectrum HomePage FrontLawn SeeAlso PeerReview WelcomeNewcomers