An Introduction to Wiki
What is Wiki?
A Wiki is a Web-based
collaboration platform that "lets you and all other users
write, place pictures and post links, anywhere on any page". In most
cases, this means that anyone can edit anything.
And you can do this through the web interface without the need for additional software, learning HTML, or waiting for a designated webmaster to upload your files.
The "Writable Web", that is, the ability for anyone to write on any page, can be liberating. It can also be scary or
intimidating. For those who lean toward "scary", you'll be pleased to
learn that many Wikis are backed by version
control (e.g. RCS). So, even if you think you broke something,
you (or someone else) can fix it.
At first glance, a Wiki site looks and feels like any "normal" web site.
However, a Wiki site also has an
Edit link at the bottom of every page (topic). Readers of the page
can modify it or add content directly through their browser. In fact, some features, such as tables,
don't even require the use of the Edit link to add content.
Wiki can be used to provide many solutions for information collection and presentation, including:
Wiki can enhance the quality and quantity of available information
by improving the ability of many people to collaborate on documenting and sharing what they know.
- as a replacement (or augmentation) for a traditional web site
- to update content "in real time" without waiting for a webmaster
- as a document management tool
- to collaborate on projects, documents, and goals
- as a knowledge base or FAQ system
- to design and document software products
- as a company internal message board
- to develop and demonstrate new web-based applications
Wiki at Your Company
At this point, you might be saying "We have an Intranet. What added
value does Wiki provide for me, my team, or my company?"
While it's true that you already have an Intranet with considerable
available information, you can use Wiki to improve your pages, making that information more readily accessible to everyone.
Wiki "lowers the bar" for everyone in creating new web pages or
modifying existing content. Content providers (that's you)
can concentrate on content rather than style and still get the benefit of a clean, consistent look. The basic format of pages has already been
handled in templates and "skins", leaving you free to worry about the
information, not the placement of the company logo!
Strong Contenders for Wiki Use
Some of the possibilities for Wiki use include:
- Keeping tabular Intranet data up-to-date, e.g. internal telephone lists, current project status, product history, etc.
- Creating and storing How-to's tutorials, and other small, but nevertheless important, documents. At one job I worked, we had a major increase in the number of engineers who started creating How-to documents when we moved the development web into CVS. Think how much more material we might get if creating and editing documents was even simpler for everyone.
- Posting timely company news updates
- Providing important and/or urgent "Company Status" messages (plus, all users could receive email notification when the page changes!) e.g.
10/22/2004 All services restored following planned power outage.
- Managing periodically updated lists of links.
- Managing the top level Company Intranet index page. (If you're concerned, authorization can be tightened as desired to restrict access to a smaller group of people).
- Managing Group home pages to share status, planning, and team data.
- Making "personal" home & project pages so simple to create that no one will think twice about creating one.
Some (probably) Less Likely Candidates for Wiki
It's only fair to ask (and answer) the question, "What wouldn't we put into Wiki?"
Wiki is not optimal for everything. Even the Web is not a perfect
solution for every problem. If there's a better, more appropriate, or
more specific tool for a job, we'll use it.
We won't be replacing email with Wiki (or any other form of web-based
communication) any time soon. We're also unlikely to start using Wiki
- Bug reports Bugzilla (or a similar issue-tracking solution) is optimal here.
- CVS we can expect to be checking code in and out of CVS (or another code versioning system) for the foreseeable future.
People also differ in how they want to write their design documents, e.g. by using plain text, on-the-fly HTML (i.e. Wiki), "raw" HTML with CSS, MS Word, PDF, or solutions such as DocBook.
We'll most likely see design specs and other documents being
created outside the Wiki (as well as inside the Wiki) for a long time to come.
That said, remember that many Wikis make it easy to attach any sort
of document to any page, with the simple click of a mouse.
Also, Wiki being Web technology, you can link between pages with ease.
Finally, some Wikis (e.g.Wiki) allow you to include attached HTML
or text files inline, as if they had been typed into the Wiki itself.
if your documents are written and stored outside of the Wiki, they can
still be made available via the Wiki. That's what counts
The Wiki concept was developed by
Ward Cunningham as "the simplest online database that could possibly work".
The first Wiki site was created for the Portland Pattern Repository in 1995; it's still in use.
According to Ward Cunningham:
- Design Specs & Product Requirements documents Some teams use Wiki for design specs. Others are not. Many people prefer such documents to be stored as easily accessible, individual file, under version control; they prefer those documents to be made readily available via CVS update on their local filesystem. Other people enjoy the ease of Wiki editing.
Wiki is a piece of server software that allows users to freely create and
edit Web page content using any Web browser. Wiki supports
hyperlinks and has a simple text syntax for creating new pages and
crosslinks between internal pages on the fly.
Wiki is unusual among group communication mechanisms in that it
allows the organization of contributions to be edited in addition to
the content itself.
Like many simple concepts, "open editing" has some profound and
subtle effects on Wiki usage. Allowing everyday users to create and
edit any page in a Web site is exciting in that it encourages
democratic use of the Web and promotes content composition by
There are many Wiki Engines (software
based on the
and many Wiki clones.
For corporate Intranet use, I recommend
TWiki or Foswiki.
TWiki was developed by Peter Thoeny.
The initial TWiki installation dates from 1998.
Foswiki is a "branch" off of TWiki, begin in 2008.
TWiki inherits from JosWiki, another Wiki clone that was in use at the Free
Java OS (JOS) web site.Wiki is implemented as a Perl CGI script which
reads a text file, hyperlinks it and converts it to HTML on the fly.
Today, TWiki and Foswiki are successfully being deployed on many corporate intranets. Many
sites prefer a Wiki because it is more user friendly than certain
commercial groupware systems such as Lotus Notes. There are several
thousands of downloads from companies with the intention of installing
Wiki behind a firewall.
In addition to the typical
collaboration and editing capabilities found in all Wiki
installations, TWiki/Foswiki provide:
- Full text search with/without regular expressions.
- Automatic email notification when something has changed in a Wiki web.
- File attachments: Upload and download any file as an attachment to a page.
- Revision control: All changes to pages and attachments are tracked.
- Access control,including the ability to define groups and impose fine grained read and write access restrictions based on groups and users.
- Variables (for dynamic composition of pages).
- Server side Plugin modules
- A flexible templating system that separates program logic and presentation.
- Support for tabular data; table rows can be added trivially, without using the Edit capability.
- Pages can be edited, renamed, moved or deleted through the browser.
- Web based user registration and change of password.
- Three levels of preferences: site-level, web-level, and user-level.
- Topic locking: To prevent contention, users are warned if a page is being edited by an other person.