Alternatives To Wiki

I think it's about time I GaveUpOnWiki. The new "posts" feature is a nice step towards accountability, but it's proving not to be enough. I think that what I'd like is a community where:

I'm not too concerned about the topic. C2's topic has kinda grown over the years, but mostly it hasn't been a problem. Sometimes I'm interested in the ThingsOnWikisMind; sometimes I'm not. That's just fine. I can certainly imagine ways of making it easier for a more diverse range of topics to live side-by-side. (And I think having explicit accounts will help - my RecentChanges can filter out different things than your RecentChanges.)

Does a site like this already exist? If not, does anybody feel like making one? I don't have time these days, but I'd love to be part of a community of people like most of the people I've found here on c2. For years, this place has been wonderful, but I think I'm convinced now that I'd like a site with a little bit more accountability.

-- AdamSpitz

SimplestThing: UseModWiki has a way to lock all pages and provide 'editor' passwords (though it's not the automated system described in your UserStories - it could be a start though). It seems like the 'blog' could be a user's HomePage and their 'space' could be the sub-pages of that HomePage. Permission to edit could be given by email . . . -- KyleWakefield

Consider a FactionModel? - it avoids the PermissionBasedModel? but it collectivizes responsibility somewhat. Remember, all reputation is negative. Details on it at and related model at

You're right about how a user's "blog" should just be his homepage - simpler, more uniform. I like it. I also like the idea that subpages give him infinite easily-ignorable space to work in.

I don't know enough about UseModWiki's permission system. Would it ensure that every edit you do can be traced back to you? Would it allow a person's access to be revoked later, by the community?

-- AdamSpitz


All right, I'm convinced. And I also think I don't understand AdvoGato's trust metric properly yet. From what little I've read about it, I got the impression that it was clever enough to deal with things like this. I'll take a closer look at it when I have more time.

I'm finding it tempting to define "anti-endorsements", but that won't help; it's too easy to create new identities.

One thing I like is that even if a person loses all their endorsements, it's not like they're completely silenced. They'll still be able to do things inside their own space, and their comments will still show up when people (who haven't chosen to ignore them) look at the main wiki pages. So I'm still kinda wondering whether peer pressure might be enough to convince Henry to unendorse Bob, or Henry's friends to unendorse Henry.

Ugh. This system certainly doesn't have wiki's simplicity.

-- AdamSpitz

This sounds a lot like GarbageCollection. And, just like it, it has the problem of CircularReferences?!!! (two spammers who trust each other will remain full members, even if everyone else hates them)
There are many ways for groups of people to work together. Two of them are quite simple, though not necessarily just: Anarchy, and Dictatorship. In an Anarchy you don't really have explicit rules, although for it to work out you have to spend a lot of time trying to figure out the best compromise for everybody. So there aren't complex rules about who gets to lead (nobody and anybody, depending) though of course there are always complex dynamics about influence. In a Dictatorship, one person leads the whole thing, and if you don't like it, you get out. There's no need to spend a lot of time arguing about it, since one person makes the decisions and if you don't like it, well, there's the door.

In this (very simplistic) universe of political choices, wikis tend to be anarchies, and blogs tend to be dictatorships. They both work, for different reasons. Wikis seem to work really well when you have a high degree of trust and people who want their ideas to commingle with one another, but like other forms of anarchy, they become extremely difficult to maintain past a certain size. Blogs work well for people with strongly divergent opinions who don't have to worry about building consensus or even being polite. The space is owned by just one person, and even if others can leave comments or trackbacks you're free to delete those, too.

There're are other models of group interaction, of course, and one we're very familiar with is Democracy. Democracy works pretty well, but it has a lot of overhead, what with RobertsRulesOfOrder and bylaws and constitutions and separation of powers and all that. You go to the trouble of instituting a democratic structure and then following its rules -- in a club, a corporation, a non-profit organization, a city, etc. -- if:

Pretty much ever since people starting hanging around online there's been a lot of talk about online democracy but very few successes. Certainly it's a model many are familiar with, and it does wonders in the real world. But online, what's the point? There's nothing at stake but a bunch of talk. And it's really easy to just pack up and go. -- francis
If you're looking for alternatives to wiki you should read: WikiNeedsTrustMetrics for a set of interesting perspectives on how to add trust metrics to wiki. My perspective has changed a little since then. Instead of starting with a wiki and adding trust metrics or collaborative filtering I think we have to start with something like AdvoGato (everybody gets their own diary/blog/homepage, we use HardSecurity) and then move towards the WikiDesignPrinciples to create a collaborative space that can only be written to by the current set of trusted members of the community. The aggressive user mentioned on the WikiNeedsTrustMetrics page is still there flaming away but no-one sees his material because they've filtered him out. Despite that it's still possible albeit difficult for him to earn enough trust to become visible again.
After wrestling with the TrustMetric thing for a while, I'm finding my thoughts moving in a different direction. Maybe the TrustMetric thing could be done, but I've got some philosophical problems with it, so let's try something different.

What I've learned from recent events here at C2 is that I value the right to choose where to spend my attention just as much as I value the right to speak. You have the right to speak; you should not have the right to be heard by people who don't want to hear you. (See AttentionEconomy.)

What I've learned from other areas of my life is that I don't value wiki's "group text" aspect very much. I like being able to go to the StupendousProgramming? page and find out what people think about StupendousProgramming?, but I would much rather read a collection of individual opinions than a group consensus opinion. (The collection of individual opinions will be bulkier and have more duplication, but I'm betting it'll also be much more interesting.)

The things that I value most about wiki are its organic and incremental nature. I like the "fortunate collisions" that you get in a wiki when people are thinking about the same thing. And I like the web of connections that you get from the simple linking. So let's try to keep those.

As a first cut at it (which has about a million weaknesses, but it's good for the first example to be simple), how about this:

It would be pretty much impossible to have a community-owned DocumentMode page in this system (which I don't mind so much, but we can try to fix it). It would also be pretty hard to have a conversation (which I do mind, but that should be easier to fix). The thing that I like about this system is that it allows individuals to build their own vision of the world, while still maintaining some of the "fortunate collision" collaboration feeling that C2 gives me.

(I've got my own PersonalWiki here on my hard drive, where I try to write down everything I know. I think it would be really cool for my personal wiki to be able to show me the stuff in other people's personal wikis, whenever the topics coincide.)

-- AdamSpitz

I've been thinking along the same lines myself. Everyone should have a personal space where they can write what they want without anybody else messing with it, and when multiple people write about the same topic, there should be some sort of automatic link creation. However, I also see value in a shared space, and in providing a means for people to give editing capabilities in their personal spaces to other authors so that collaborative writing can occur.

I've been reading more blogs than wiki these days, as I value the clarity of individual authors' writing, the ability to choose which authors to read, and the lack of flamage. However, I miss the interaction between authors. Some bloggers will comment on others' blogs, but the discussion is limited because the authors' forums are disconnected. Also, focusing on blogs means that I am only reading the works of the couple dozen authors who I find interesting. I think any replacement for wiki needs to maintain the collaborative spirit, and be open to anyone who wants to join.

-- KrisJohnson

I don't want a "deterrent" to force people to behave the way I want them to behave. I just want to be able to separate A's actions from B's actions, so that I can ignore B. -- AdamSpitz

Well, there's the combination of RecentPosts and the history. Probably a bit more inconvenient than you'd like though.

I don't suppose just refactoring the page until B's drivel is either gone or not drivel would work?

I do think you've hit on a fundamental flaw in WhyWikiWorks, in that it assumes consensus is possible. Refactoring only works if people can agree on a general direction for the page. Some folks are too stubborn, and some topics too controversial, to reach such a topic. The usual result is huge unfollowable ThreadMess, where everyone's opinions get blended together and there's no sorting the signal from the noise.

I wonder if some sort of overlay mechanism may work, letting you select contributions from specific authors for viewing. I've been toying with the idea of using Wiki for (writer's) workshopping, where everybody can edit every story. This has similar problems, in that you want to be able to view only one editor's work at a time. But conflict detection would be a do you decide how to merge contributions when they're building off different bases?

-- JonathanTang

Yes. :) Those are the same issues I'm thinking about. I want to preserve individual ownership, but sometimes it really is valuable (or necessary) to have a group document, and sometimes it's really nice that people can make little edits or additions to other people's stuff.

Right now I'm imagining a system where everybody owns his own objects, but there are lots of different kinds of objects. For example, an object could be: And then we rely on the UI to integrate and cross-link all the various objects in lots of different ways. (The obvious one, which I suggested on the AlternativesToWiki page, is that when you go to look at, say, the StupendousProgramming? page, the UI should show you the contents of all the pages named StupendousProgramming? in the system. And maybe it could sort them to put the ones created by the people on your "interesting" list at the top, and filter out the ones created by the people on your "annoying" list...)

The other kinds of objects ("patches" and so on) only exist to try to get back some of the flexibility that wiki gives us. So if I made a page with a typo, you wouldn't be able to go in and change my page to fix the typo, but you'd be able to create a "patch" saying, "Here's what I think the new version of your page should look like." And the next time I logged into the system, I'd see that you created this patch for my page, and I could fix my page if I wanted to. (And then you could choose to throw away your patch, if you wanted to.)

Whatever. The details aren't important. The fundamental principles are: every object is owned by its creator, and we rely on the UI to integrate and cross-link things in order to try to regain some of wiki's good "group document" feeling.

It would certainly be a lot more complex than wiki, which is a shame. But what we'd get is a system that (hopefully) still gives us some of the good community feeling that wiki gives us, but doesn't dilute the individual people's viewpoints, and makes it a lot easier for you to choose who to spend your attention on.

(Even just the simple step of giving everybody a login identity would go a long way towards helping the UI help you. You could have your own custom RecentChanges page, for example, which could highlight pages on topics you're interested in, and pages made by "interesting" people. Stuff like that.)

-- AdamSpitz

Hrmm, interesting. The biggest problem I see is there's no convenient way to merge threads. On Wiki, ThreadMess tends to expand exponentially as there are multiple responses to each comment (this thread is a good example, where I'm commenting along a very different line from Robert, against a comment that was made from another see how it could get hard to read). The only limiting factors seem to be: Under your system, it seems like it'd get even more messed up, because threads are easier to read and hence the 'complexity ceiling' before everyone gives up is higher. And they're harder to refactor - if you're merging and removing duplication, which object do you make the "patch" to? Logically, it'd have to coalesce multiple threads, and so it'd be a "patch" to all the versions. But then how do you view only those authors/subjects you're interested in? What happens to other threads spawned off a page that's been refactored?

I've been thinking about how I normally go about refactoring, and ConvertThreadModeToDocumentMode. A page usually starts as a document, and then grows as a tree, where each comment inspires several branches. Each leaf of the tree represents a readable ThreadMode document, where the flow of the document is represented by the path from the root to the leaf. This gives you the ability to select the topics and authors you're interested in.

Then...the conversion to DocumentMode usually begins by moving related comments together. This could be represented by drag & drop on the nodes of the tree - you'd move a subcomment or subdiscussion over to a different node, which would change the flow of the document. There'd have to be overlays for refactorings or something like that, because when you're doing a refactoring, you want to see all comments and not just a single thread. Plus, a half-refactored document usually doesn't make sense when viewed in ThreadMode.

Then, the next step in a refactoring is usually to remove duplication. This works by coalescing several nodes down into a single summary, converting the tree into a DAG. There'd probably be a means for participants to "sign off" on the refactoring, though I dunno if this is even necessary. I'd imagine the original nodes would remain open for further ThreadMode, because I hate running across interesting history and then being unable to respond.

The end result will be a single node - which could serve as the root of another tree! We could probably dispense with pages entirely, having only "topics". We'd need a direct-manipulation interface anyway to have any sort of useful "ownership" or "refactoring", which means ditching the web. So there's no need to import the web's imposed structure.

And we automatically get versioning out of this. While you'd normally want the most current summary on a topic, you'd always be able to view the threads that led up to it. And you'd be able to merge spun-off threads into the evolving summary - this is kinda like the "patch" you describe, but more general.

-- JonathanTang

I value ThreadMode because it helps the individual participants learn. By asking you questions about your point of view, I can learn to understand it better. And by answering your questions about my point of view, I can learn to present my own better. And sometimes I'll even learn things that make me change my opinions.

I value DocumentMode because it lets an individual present a coherent statement of his thoughts. I've got my own PersonalWiki here on my hard drive for exactly that purpose. Writing down my thoughts encourages me to flesh them out and see how they all fit together.

But I don't care whether a ThreadMode conversation reaches a consensus or not. I don't care whether a DocumentMode page presents a position that everybody agrees with. The thing that I care about is what the individual people believe, not what the "collective" believes. There's a kind of ConceptualIntegrity that emerges from the writings of a really interesting person. Those are the people I learn the most from. That magic always seems to get lost in a collective system.

And so I do value trying to ConvertThreadModeToDocumentMode, but I don't think my system makes it harder. What my system does, instead, is make it clear that when you create a summary of a thread, that summary belongs to you. I want it to reflect the things that you believe. You don't need to try to get people to sign off on your summary. You don't need to patch the thread. You just learn what you can from the thread, and write down what you've learned.

-- AdamSpitz

Reference Engine

As a possible partial solution to the EditWars, what if Wiki was simply a "reference engine". Each person maintains their own info on their own servers and Wiki simply links it all? Vandals and info-terrorists then cannot delete stuff that they don't like (outside of hacking), only delete references at best. It is still not a perfect solution, but reference wars may be less annoying than content wars.

Wiki can weave the references together (as a virtual view). Further, individuals may agree to join up on their own terms to make cooperative editing easier. This provides a kind of "group self-policing" that the current wiki lacks. If you piss people off, they won't corporate with you. But, it does not squelch unpopular, but possibly valid opinions either.

Generally a content submitter will provide:

(Editing features may reduce need to type actual numbers)

Rather than "compile" it for every view, the wiki engine would do it periodically. Links that go bad may be excluded after a month or so. This may help clean stuff up over time.

Further, references that are deleted are still kept in an "attachment" to the document for a while. Maybe have a threshold view option such that one can see the old stuff in place by specifying how far back (in decimal days) they want to see. Thus, things don't really get deleted, but perhaps just "fade" gradually. However, Wiki perhaps would not buffer the deleted content, unlike "active" content. Perhaps the "see deleted" option would use JavaScript to reconstruct the page instead of putting the burden on the server to fetch the pieces.

Different viewing options include:

These are not necessarily mutually-exclusive.

Other options to consider include a "friends" and "enemy" lists. People give the URL of their lists and wiki (or a volunteer) allows people to browse with filters based on such lists. People could see the "Costin" view for example that excludes any mention of my alternative type definition.

I am just kicking around ideas. I don't claim this idea is ripe. And, I am not sure the topic name is appropriate. It is "half centralized". Suggestions?

-- top

Reinventing WikiChangeProposal?

How so?

WikiWeb will likely remain as it is, so if you feel strongly about this, you might want to reserve your web site, look over WikiWikiClone & WikiEngines, and get started. If you OpenSource the project, some of us might drop in to lend a hand. Keep us posted on your progress, and good luck.

See also ViewPoint, ManaMana

View edit of June 8, 2010 or FindPage with title or text search