TITLE: Ward on the Wiki of the Future AUTHOR: Eugene Wallingford DATE: September 15, 2004 11:33 AM DESC: ward discusses the evolution of wiki into a network ----- BODY: Last time I wrote about Norm Kerth's Saturday session at the recently-ended PLoP 2004. Norm's topic was myth, especially the Hero's Journey myth. Ward Cunningham led the second session of the day, beginning with some of his own history. As many of you know, Ward is best known for taking ideas and turning them into programs, or ways of making programs better. He spoke about "wielding the power of programming", to be able to make a computer do what is important to you. If you can think of an idea, you can write a program to bring it about. But programmers can also empower other people to do the same. Alan Kay's great vision going back to his grad school days is to empower people with a medium for creating and expressing thoughts. Ward pointed out that the first program to empower a large group of non-programmers was the spreadsheet. The web has opened many new doors. He called it "a faulty system that delivers so much value that we ignore its fault". Ward's wiki also empowers people. It is an example of social software, software that doesn't make sense to be used by one person. The value is in the people that use it together. These days, social software dominates our landscape: Amazon, ebay, and a multitude of web-based on-line communities are just a few examples. Wiki works best when people seek common ground; it is perhaps best thought of as a medium for making and refining arguments, carrying on a conversation that progresses toward a shared understanding. This dynamic is interesting, because wiki was predicated in part on the notion of taking a hard problem and acting as if it weren't a problem at all. For wiki, that problem is malevolent editing, users who come to a site for the purpose of deleting pages or defacing ideas. Wiki doesn't guard against this problem, yet, surprisingly, for the most part this just isn't a problem. The social processes of a community discourage malevolent behavior, and when someone violates the community's trust we find that the system heals itself through users themselves repairing the damage. A more subtle form of this is in the flip side of wiki as medium for seeking common ground: so-called "edit wars", in which posters take rigid positions and then snipe at one another on wiki pages that grow increasingly long and tedious. Yet community pressure usually stems the war, and volunteers clean up the mess. Ward's latest thoughts on wiki focus on two questions, one technical and one social, but both aimed at a common end. First, how can we link wikis together in a way benefits them all? When there was just one wiki, every reference matched a page on the same server, or a new page was created. But now there are dozens (hundreds?) of public wikis on the web, and this leads to a artificial disjunction in the sharing of information. For example, if I make a link to AgileSoftwareDevelopment in a post to one wiki, the only page to which I can refer is one on the same server -- even if someone has posted a valuable page of that name on another wiki. How could we manage automatic links across multiple wikis, multiple servers? Second, how can wiki help information to grow around the world? Ward spoke of wiki's role as a storytelling device, with stories spreading, being retold and changes and improved, across geographic and linguistic boundaries, and maybe coming back around to the originators with a trail of where the story has been and how it's change. Think of the children's game "telephone", but without the accumulation of accidental changes, only intentional ones. Could my server connect to other servers that have been the source of stories that interested me before, to find out what's new there? Can my wiki gain information while forgetting or ignoring the stuff that isn't so good? Some of these ideas exist today at different levels of human and program control. Some wikis have sister sites, implemented now with crosslinking via naming convention. But could such crosslinking be done automatically by the wikis themselves? For instance, I could tell my wiki to check Ward's nightly, looking for crossreferenced names and linking, perhaps even linking to several wikis for the same name. In the world of blogging, we have the blogroll. Many bloggers put links to their favorite bloggers on their own blog, which serves as a way to say "I find these sites useful; perhaps you will, too." I've found many of the blogs I like to read by beginning at blogs by Brian Marick and Martin Fowler, and following the blogroll trail. This is an effective human implementation of the spreading of useful servers, and much of the blogging culture itself is predicated on the notion of sharing stories -- linking to an interesting story and then expanding on it. Ward's discussion of automating this process brought to mind the idea of "recommender systems", which examine a user's preferences, finds a subset of the community whose collective preferences correlate well with the user's, and then uses that correlation to recommends content that the user hasn't seen yet. (One of my colleagues, Ben Schafer, does research in this area.) Maybe a collection of wikis could do something similar? The algorithms are simple enough; the real issue seems to be tracking and recording user preferences in a meaningful way. Existing recommender systems generally require the user to do a lot of the work in setting up preferences. But I have heard Ralph Johnson tell about an undergraduate project he directed in which preferences were extracted from Mac users' iTunes playlists. I must admit that I was a bit worried when I first heard Ward talk about having a wiki sift through its content and activity to determine who the most valuable contributors are. Who needs even narrower bandwidth for many potential posters to add useful content? But then I thought about all the studies of how power laws accurately model idea exchange in the blogosphere, and I realized that programmed heuristics might actually increase the level of democratization rather than diminish it. Even old AI guys like me sometimes react with a kneejerk when a new application of technology enters our frame of reference. The Saturday sessions at PLoP created an avalanche of thoughts in my mind. I don't have enough time to think them now or act on them, but I'll keep at it. Did I say before how much I like PLoP? -----