Sunday, January 1, 2012

Wikis Suck

There, I said it. They suck. And it's not just wikis; pretty much every documentation system I've seen sucks. I'm not going to outline a solution here, because I don't have one. I can only say that these things are pretty awful, and until we can find something that actually solves these problems, we won't have a truly great documentation system out there.

I apologize for the nature of this post. It's a problem I've seen for years, and been trying to find an answer to. I just don't have one, and the problem is only getting worse. Maybe somebody out there can help to refine this problem into something that an answer can happen. In no particular order, here's the problems I've got with wikis:

Organization. I have yet to see something really handle this well. A straight up hierarchy doesn't work. Too often, a given document belongs in two places (or more). Anything that enforces a hierarchy must require a choice of where to place something. On the flip side, when discussing a wiki, very few of them impose any sort of hierarchy. In fact, some of them don't even have a hierarchy at all, placing every item in the same "folder". This makes for a mess when it comes time to search for something. Tags can help in this regard, but they're still far from ideal. How do we make sure that a given article is sufficiently tagged? How do we make sure that the searcher knows which tag will provide the desired results?

Authoritativeness. Sometimes, you need documentation that you know the source. You need to know it came from the right person or team. Documentation that is crowd-sourced simply doesn't always cut it. On the other hand, sometimes you need to have areas where the crowd can update things. This is a balancing act that is very difficult to get right, and I'm not convinced that the open model of the wiki is the right solution. Simply locking a contentious page doesn't actually solve the problem of determining accuracy, and the lack of accuracy in those cases undermines authoritativeness.

Access Control. When dealing with something open to the public, you're going to get spammers and defacers who don't care about what you have to offer. They're just going to come in and update every page they can with their garbage, and you have to clean up the mess. Some wiki systems simply go with "allow the user to revert to a previous version of the page", which is not actually useful at prevention.

Cross-Referencing. This seems like I'm talking about the primary strength of wiki: It cross-references so easily it's amazing. I can reference something anywhere (within the wiki, outside the wiki) without much effort at all. And yet, it's still a major weakness. Cross-references are entirely manual across all of these systems. If I'm reading a wiki, and decide to make a new page for a given phrase, I can find myself surprised that the page already exists. I have no way of knowing it unless someone else does the work of making the link.

Supported Formats. They support one specific type of media: Specialized markup text using the markup style of their choice. Why can I not upload a PDF, or DOC, or ODT? Hell, any other format. And I don't mean as an attachment: I mean as a first class piece of data to be reviewed, searched, and edited.

wikis are impressive, and do a difficult job. I'm not convinced they do it well, though, and I'm sure I'll have other issues to discuss about them later. I just wish I had a solution, instead of a rant.

The closest description I can have is that the ideal documentation system would be automatically cross-referencing, supporting a variety of data formats, with an intelligent search that would help me find what I'm looking for. It sounds like I'm asking for some sort of local internet with a Google search. Maybe I am, but I don't think so.

I just don't know. Does anybody else have any thoughts?

2 comments:

JJ said...

Totally agree. In my experience corporate wikis provide very low usability and efficiency. They are probably better than nothing, but they are just not very good, for all the reasons you mentioned.

I would add that I think a big part of the problem is that there are so many different ways of representing textual/visual content (spreadsheets, presos, prose, flowchart, org chart, engineering docs, etc) and very often you want to use a special-purpose editor to get good results. So we have many different kinds of file formats, and wikis rarely play well with these. Then there's the fact that moving files between your desktop and the wiki is annoying - keeping it synched with whatever external editor you're using stinks.

I'm glad you pointed out that you don't have a better solution in mind - neither do I!

Funk said...

The belief that the need for access control is somehow mitigated by the fact that you can revert changes is similar to the brain malfunction leading to antivirus software or other types of after-the-fact damage prevention.

Until someone engineers a working persistent information store that supports millions of users, access control (accountability) will be necessary.

I have been trying to work on such a thing, but so far I don't even have a conceptual model of how it could work, since you need to assume that 99% of users (bots) are actively trying to spoil the party for the actual users.