Features that mainly affect the internals of the wiki engine, how it works, how efficient it is, how it is installed and how it is developed.
The use or optional use of an external revision control system as the backend in which the versioned page database is stored.
A wiki where users don’t even notice when any one machine is unplugged.
“FailSafeWiki – the idea that you might have redundancy between wiki, one goes down, the next comes on-line.”
The Wiki is connected to a database. The data in the database is accessible to wikizens and from within the wiki; database queries are possible.
Metadata support in wiki may facilitate advanced features like facet browsing, topic grouping, better categorizations, etc.
Text warehouses are convenient storage places for text.
WebDAV stands for “Web Distributed Authoring and Versioning” (sound familiar?). Sometimes just called “DAV”, it’s an extension of HTTP to allow multiple parties to update and maintain Web resources.
Instead of showing pages with a script, make them into static HTML files that are re-generated each time the page is edited.
Keep a history of older revisions of pages, allow to see how the page looked like before and revert to that version.
Wikis that don’t expire old versions. The original wiki implementation didn’t store old versions at all. Wikis based on versioning systems stored all old versions. Some wikis expire older versions, not immediately.
We can design our WikiEngines in interoperable ways.
Once that is done, it is not terribly difficult to fetch the code for a new feature from a trusted source, install it, and let users use it, all automatically.
The idea is to have an Intermap that the public can edit. That means that the system administrator doesn’t have to edit a static intermap.txt file.
See InterLink for more information about intermaps.
The wiki script is just a single file. To create a new wiki, just download that single file and put it anywhere it can be executed.
Every wiki engine needs to have some configuration. At the minimum, it needs to know where to store the pages. But how an engine can find its configuration?
User-editable program code in pages.
Which wikis are most extendable?
Users contributing to the development of their wiki’s engine.
Plugins allow you to change and extend the behavior of your wiki engine without the need for modifying the core of the application. Wiki administrators can then select and configure the plugins they want for their site, and leave out everything they don’t care about.
Leave some room on the pages for putting various additional information, extensions and links for additional actions.
Python is a dynamic object-oriented language.
I was more than half joking about this before, but the more I look at wiki engines, the more I like UseMod, and its feature-full (but more cluttered!) derivative, OddMuse.