in

Emerald Hand

Emerald Hand, Inc. community home page.

This Blog

  • Home
  • Contact
  • About
  • Directory of Computers/Tech Blogs

Syndication

News

I'm back to blogging

Worm in liquid maze

Design and development of information management tools.

Selecting a Wiki

I recently went through a process of selecting and installing wiki for my website. I thought I could take a step back from discussing design and share my experience with wiki.

Wiki is an online application for publishing text documents on the website. It is specifically designed to store information that can be updated and maintained by anybody. If you have something to share, you can add it directly to the document and it will be visible to everybody. Some companies use it to let every member of developers team (for example) contribute to the manual.

Wiki lets visitors edit documents using simple text symbols (different types of brackets, wiggly, stars, quotes, and combinations of them) to format the text. Wikitext is easier to read than HTML with its tags, but makes it harder to create more complicated format scenarios. It tracks the changes and automatically organizes text documents (by finding KeyWords in the text and use them to create links to the documents with the same name). Wikis have been around for quite a while and they quickly gained recognition and popularity. The best known example of wiki usage is Wikipedia, an online encyclopedia that gathers information from people around the world. It's open for anybody to contribute.

There are some negative aspects to using wiki. Same wikis have limited text format options, while others make it complicated to achieve certain styles because special symbols are used to indicate formatting. In general wiki is flat and doesn't support hierarchical organization of documents. Wiki doesn't support discussions (with the exception of MediaWiki). That means that contributors to the same page either have to use comments or communicate through other media, making it harder to relate the discussion to this wiki page. Wiki often has simple authentication. At best there could be three or four hard-coded roles and cumbersome filters to allow only limited number of people to edit or read the page. At worst anybody can write anything anywhere.

I want to have a wiki to publish all manuals and information about projects I work on. Anybody will be able to contribute, but more importantly I want all changes to be available immediately. Previously I had to compile, generate and then upload the manual, but not anymore. Anything I add is visible right away. Documentation generated from the code for JSForms will be available online as before.

I also like the idea of using wiki to organize manuals. Its ability to automatically parse the document and create links to the related documents on the fly can simplify editing and organization the information.

When I was looking for a wiki I was looking for certain features. None had exactly what I wanted, but I did find several with a good mix.

Features I look for

Authentication support

Some are closed and only registered or trusted people can contribute. Some wikis are open and anybody can edit them. They promise a lot of advantages, but at a price. When wiki is open any errors can be fixed by anybody. Anybody can add new information and details on how to use a product. On the other hand anybody can also add invalid information (even if they mean well), or just spam it. Having document with invalid data is usually a problem for big wikis, such as Wikipedia, but spam can be a problem for any open wiki.

From the start I realized that I want to have semi-open wiki. I want for anybody to be able to contribute, but I want to avoid automated spam (using CAPTCHA). In best case scenario wiki should support full authentication with users and flexible permissions.

Database support

A lot of wikis use flot files to store pages. I don't like this idea. It might let me edit pages on the server in the notepad, but it is slower and doesn't contain tools (unless they are built into wiki) to back up and restore on the fly. I want database support, preferably MS SQL since I'm familiar with it.

Export

In wiki, document source is usually in wikitext. It makes it usable only with wiki parser. I would like for the wiki to have a function to export the whole wiki as XML (preferably) or HTML. Since all wikis show pages as HTML it is possible, in theory, to write a tool that will pull document as HTML, but I really don't want to spend time on this unless I really have to.

Macros and dynamic text

Some of the wikis support dynamic text and macros. One example would be a table of contents at the top of the document that is dynamically updated as the document is modified. Another would be a list of documents using a regular expression applied to the title and sorted by the last date of modification. I would like to have support for such things.

Built on .NET or ASP

I'm quite familiar with both .NET and ASP. I would have less problems installing and customizing wiki, if it is built using one of the technologies. Potentially I could even add new features, if something is missing.

I later found out that MS technologies are not popular when it comes to wikis. I only found really one .NET-based wiki that I could use, and it's still in early development. I did end up using ASP-based wiki.

Skins

I would like to be able to modify how wiki looks to make it look more like EmeraldHand website. In order to do that it needs to support skinning.

I also want to be able to customize menus and such. That often too requires skinning or templates support.

Free and/or open source

I don't want to spend any money on it. It also would be nice for it to be open source, so that if I would want to add a new feature, I could.

I started my search at http://en.wikipedia.org/wiki/Comparison_of_wiki_software. In the next post I will write about what I have found and how they compare to each other.

Share this post: Email it! | bookmark it! | digg it! | reddit!
Readability Stats: Word Count: 1027; Sentence Count: 70; Grade Level: 8.4, more info...
Published May 10 2006, 08:43 PM by Ornus
Filed under:

Comments

 

Worm in liquid maze said:

I have mentioned previously that I researched different wikis for my website and I wanted to share my...
June 15, 2006 3:03 PM

Leave a Comment

(required)  
(optional)
(required)  
Add

About Ornus

Lead Sider and Xelog developer. I'm interested in information and how we can better manage it using computers. I'm also into design and understanding how to creating cool, useful, simple things.
Copyright © 2006-2007 EmeraldHand, Inc. All rights reserved.
Powered by Community Server (Non-Commercial Edition), by Telligent Systems