The core wiki concept circles around the idea to utilize a minimum set of functions. Only the functionality should be implemented that is necessary to make a web collaboration tool practical and easy to learn and use. It means to create a tool as simple as possible, both in code and user interaction.
1. Wiki Design PrinciplesThese are the wiki design principles[link4] compiled by Ward Cunningham[link5]:
- Simple – easier to use than abuse. A wiki that reinvents HTML markup (**bold**, for example) has lost the path!
- Open – Should a page be found to be incomplete or poorly organized, any reader can edit it as they see fit.
- Incremental – Pages can cite other pages, including pages that have not been written yet.
- Organic – The structure and text content of the site are open to editing and evolution.
- Mundane – A small number of (irregular) text conventions will provide access to the most useful page markup.
- Universal – The mechanisms of editing and organizing are the same as those of writing, so that any writer is automatically an editor and organizer.
- Overt – The formatted (and printed) output will suggest the input required to reproduce it.
- Unified – Page names will be drawn from a flat space so that no additional context is required to interpret them.
- Precise – Pages will be titled with sufficient precision to avoid most name clashes, typically by forming noun phrases.
- Tolerant – Interpretable (even if undesirable) behavior is preferred to error messages.
- Observable – Activity within the site can be watched and reviewed by any other visitor to the site.
- Convergent – Duplication can be discouraged or removed by finding and citing similar or related content.
Here are some additional principles that guide them, but were not of primary concern to me.
- Trust – This is the most important thing in a wiki. Trust the people, trust the process, enable trust-building. Everyone controls and checks the content. Wiki relies on the assumption that most readers have good intentions.
- Fun – Everybody can contribute; nobody has to.
- Sharing – of information, knowledge, experience, ideas, views...
... there is certainly much more that is important. A secure web server, for example.
In a few words, if someone editing a wiki page writes a "WikiName" (consisting of an upper-case letter followed by one or more lower-case letters, another upper-case letter, and zero or more lower-case letters), then if a page of that name exists in the wiki, then a link will appear when the edited page is displayed. Otherwise, a question mark will be displayed next to the name; clicking on the question mark will bring up an editor that will allow the user to add content and save it, thereby creating the page.
2.1. Wiki Addressing
All WikiNames[link6] in the system are automatically linked in the text.
2.2. InterWiki Addressing[link3]
With the aid of the list of external URLs, it is possible to link to pages on other wikis and web sites. Any reference of the form "ExternalSite:Destination" will automatically link to the appropriate page of the external site. Example: Google:search[link7].
3. Formatting concept
Formatting in wiki follows the principle of WYTIWYG (what you think is what you get), and consists of a pseudovisual markup.
For example, the following:
this * test * test1
is displayed as
this 1. test 1. test1
is displayed as
4. Authorship concept
4.1. Multiuser Access
Well, what can we say? Double-click anywhere here and start editing this page.
You can even save your changes. So, how does one deal with vandals?
4.2. Version control and diff
Version control turns out to be an excellent defense against vandals (and is pretty useful on its own, too). Every version of a page is saved in the database and you can view the difference between any two versions
- There is no formal moderator role in most Wikis.
- Wikis tend to rely on users to act responsibly when editing pages to which multiple users collaborate.
- You can always use the revisions link at the bottom of a page to see what has been added or deleted, when and by whom.
- Page owners, and admins, can delete pages.
How can all this be used?
5. Methods of Use
- Collaboration for
- documentation (and its presentation format)
- texts (books, articles) (and the format of a hyperbook)
- what else?
- Managing ToDo lists
- Creating web sites
- Organizing one's thoughts
- Learning how to use real hypertext
- (see Patterns [Russian][link8])
6. Wiki TechnologyWiki is a technology for gathering and structuring information into a wiki site based on the wiki markup language, using a wiki engine and characterized by:
- Separation of information into hyperlinked pages, where each has its own name;
- multi-authoring (wiki pages can be edited by all resource visitors);
- the possibility of multiple edits of the text without the use of special tools on the editor's side;
- manifestation of changes immediately after their introduction;
- Save versions and the ability to roll back to earlier versions.
The wiki technology allows each user to participate in the development of the content of the Internet project as a full-fledged author and editor – on a par with the administration.
To do this, the user gets the technical opportunity to make changes to the pages of the site without having special technical knowledge and skills.
You can edit the content of the wiki-site with simple and intuitive wiki-markup or with the help of function buttons.
Technology Wiki assumes that the visitor wants to bring the project a benefit, not harm.
Protection from destruction and damage to materials is ensured by the preservation of all changes that have occurred with all articles since they were created. At any time you can compare the version of the article, if necessary, correct the page or return to the old version.
To fix the damage in the wiki environment is easier than to apply it.
7. Wiki Markup Language
Wiki – the language of hypertext markup of documents, the most simple and "human readable" way of text structuring.
Wiki markup allows you to:
- to structure sections, paragraphs, lists and other elements of the document
- Define and customize hyperlinks to images, media files, other pages, including non-existent articles.
- use Interwiki (a special way of linking to friendly wiki projects by installing before the article title of the resource prefix)
- select and format paragraphs, tables, lines, symbols, quotes, etc.
- use the markup language LaTeX to work with complex formulas
- insert special symbols (Greek letters, signs of operators, relations, punctuation, commercial, symbols with diacritical signs, etc.)
If HTML encoding forbids links to non-existent pages, then in the wiki this is the only way to create new records. In order to create a new record, you first need to specify in the text a link to this, as yet non-existent record.
Wiki markup, being simple for human perception, is complex for formal description (much more complicated than XML or programming languages).
There are no standards for wiki markup, and every wikiware developer comes up with his own, incompatible with others, dialect.
8.1. What does "Wiki" mean?
"Wiki wiki" is a Hawaiian word meaning "quick."
8.2. I still don't understand: What's the point of using a wiki?
The point is this:
- you can create an environment for collecting and organizing knowledge
- you can use an environment that is convenient to collaborate on documents and todo lists
- you get an environment that allows convenient intersection of contexts (see: classical hypertext)
8.3. Still, what does a wiki SPECIFICALLY do? What do I get if I set up a wiki and use it for the first time?
You get a wiki site with a minimum set of pages. It won't do anything except serve visitors with that minimum set of pages and give them the ability to edit them and create new pages.
8.4. Oh yeah? How does that happen? Everyone can create their own content?
That depends on the settings.
There were no restrictions in the original implementation of the wiki concept: anyone could change anything. This is of limited utility in real life, and wacko provides for flexible management of reading and writing rights.
By default, everyone can create pages.
But you can change the default, either for the entire wiki or on a page-by-page basis.
9. Interesting links
P.S. You really didn't address the issue of vandals. How do you deal with them?
- allow only registered users to make changes to content
- restore vandalized pages (the old content is still in the database).
P.P.S. So it turns out that users have complete control over content?
- To a great extent, yes, but not entirely. You can always "roll back" content to fix improper changes.
P.P.P.S. OK, so let's assume you're inundated with vandals and hooligans. The wiki will simply be paralyzed.
- You won't be able to roll back over "improper" changes, because there'll be so many of them.
- You won't be able to make "proper" changes, because they'll be lost in the flood of "improper" ones and will end up getting thrown out with the latter.
RomanIvanov[link9]: In practice, this hasn't happened. If this happens, I know a number of ways to deal with it. For example, limit access to the content being vandalized only to registered users, or perhaps an even narrower group.
AlexLane[link10]: The P.P.P.S. assumes long-term coordination and cooperation among the bad guys, which is hard to sustain for any time. Additional information that addresses this issue is set forth in Wiki:WhyWikiWorks. Plus, vandalism isn't the only thing that can bring a site down to its knees... just getting mentioned in Slashdot[link11] is enough!