I've been using MoinMoinWiki for several months now at work. The size of the Wiki, being used actively by about 6 people, has finally reached a point where the organization is a problem. But then I discovered two really great things 1) The CategoryCategory page, and 2) Template feature. Boy, this Wiki is a nice balance of powerful and simple. Really worth it's salt. At first I didn't think much of it, but I'm really starting to appreciate it.
I highly recommend everyone try the MoinMoinWiki which can be found at this SourceForge page. For those unfamiliar with WikiWikiWebs, here's some of the salient points, based on my experience with MoinMoinWiki:
- The editing style is simple text, so you don't need
to do very much to create okay looking docs. For example,
in MoinMoin you can get a large headline with "== Headline
and if you start some lines with "1. " it turns that into
a numbered list. There are a bunch of these, but it's
quite easy to get started.
- Linking between documents is automatic. You
use a WikiWord, and it's automatically highlighted as
a link. A WikiWord is two or more words conjoined
at the hip and differentiated with capitalization.
Eg. WikiWord is a WikiWord, CharlesThayer is a WikiWord,
and so are AgentFunctionalSpec, MoonRakerReleaseNotes,
XmlLinks, RpcLinks, BestQuotes, WalnutCreekPhoneList, etc.
- A Wiki let's anyone create very unstructured documents.
People can format short documents quickly, and migrate
them to fancier more official documents when they become
- The web interface makes it possible to do this
from just about anywhere without the overhead of
an application plus version control. But it still provides
very readable docs and the ability to track changes.
- In MoinMoinWiki you can turn off anonymous
updates, or allow anyone to make changes. The
whole notion behind WikiWebs is that folks can make
updates immediately and easy. Also, see differences
between versions is quite easy.
- MoinMoinWiki is a fairly simple code base of
python which doesn't take much effort to install.
- In relation to the World-Wide Web a wiki is: (a) editable by everyone (b) quick (c) let's you link easily out of a page, and trivially see links *to* the page you're looking at.
Let me describe the two features of MoinMoinWiki that I mentioned earlier:
- CategoryCategory: To tag a document as belonging
to a category, one simply puts a link to the Category
page. If I have a category for collections of web links,
I create a page called "CategoryLinks". Then on
pages which I want under this category, I put a link
to "CategoryLinks". From this page, I include
the list of all pages pointing to it. Voila, the
CategoryLinks page is an index for any page that
refers to it. If I wanted to create a page of web
about XML, for example, I'd create XmlLinks and put
a mention of CategoryLinks at the bottom. Note
that the CategoryLinks page would include a
reference to CategoryCategory so that it appears
on that page (and vice versa).
- Templates: Naming a page with Template at the end results in a Template. When you go to create a new page, you're given a list of templates to choose from. In this way, you can loosely specify the structure for different types of documents. For the Links example above, I'd create LinksTemplate and at the bottom I'd have the text "Part of: CategoryLinks". This way any page about links would auto-magic-ally on the links page CategoryLinks
For more advanced features there's a perl wiki called TWikiWeb which I haven't looked into yet. It seems to support some sophisticated structured data (ie. fill-out forms).