TweetFollow Us on Twitter

Installing and Using a Wiki

Volume Number: 22 (2006)
Issue Number: 6
Column Tag: Wiki

Installing and Using a Wiki

What are Wikis and how to use TWiki

by Mihalis Tsoukalos

The idea for this article came after reading the "Time Management for System Administrators", an excellent book by Thomas Limoncelli. In the book, Limoncelli states that although he has heard about Wikis, he has not had a good opinion about their usefulness because of their strange and somehow funny name. The same thing happened to me. I thought that I should not deal with Wikis because of their humorous name. Limoncelli's book changed my mind, and therefore I decided to learn more about Wikis. I'm writing this article because I find Wikis so useful.

What Are Wikis?

A Wiki is an environment based on Web technologies that allows its users not only to read, but also to change HTML pages in an uncomplicated and simple manner. This makes Wikis very practical for groups and individuals that work using text and hypertext. The more you use and add to a Wiki, the more useful it becomes, and the more useful it becomes, the more you want to add new and more accurate information.

The word Wiki has its roots in the Hawaiian word "Wikiwiki" that means "quick" or "hurry up". The first Wiki was made by Ward Cunningham back in 1995.

The Wiki Philosophy

Every Wiki that respects itself supports, more or less, certain functionalities, while some Wikis support more advanced features. The principles that Wikis conform to, include the following:

  • Editing capabilities. This is the most distinguishing functionality. Only in special and rare situations, certain pages cannot be edited. The edition prohibition should be avoided as it is against the Wiki philosophy.

  • The capability of connecting (linking) a certain Wiki page with another. This functionality creates new structures. As you are going to find out, this feature is supported by what is called a WikiWord. If the referenced Wiki page is not present, and you try to click it from your Web browser with your mouse, this page is going to be automatically created, ready for editing!

  • The capability of keeping historical information about every page in a Wiki. This feature actually stores all previous page versions for all Wiki pages. This makes it easy to find the changes that happened in a page. This is an extremely critical feature because it can protect us from both malicious users and users that change information by mistake on a Wiki page.

  • The capability of examining recent changes. This is a separate informational page that is automatically created by the Wiki itself, and either lists a given number of changes in a page or the changes that happened in a page for a given period of time.

  • The SandBox or PlayGround capability. This capability is similar to the testing grounds in a rally race or like your piece of paper for keeping notes. Using Sandbox, you will learn how to use the whole Wiki system by creating experimental Wiki pages that are later going to be deleted by the system. Experiment in PlayGround as much as you like without fear!

  • The search capability. Last but not least, is the Wikis' capability of searching either whole pages or page titles by keywords. In Wikis with many users and many pages this is an extremely important tool.

Installing TWiki on Mac OS X Tiger

Our Wiki of choice is called TWiki, and is a high- performance, advanced Wiki with many capabilities. In this section you are going to learn how to successfully install TWiki and start working with it. By using it more, you are going to feel more comfortable with it, and therefore you are going to be more productive. What you should have already installed in your Mac are the following:

    1. Apache Web Server: this is installed by default. This article assumes a clean install of Apache and its config files. If Apache is not already running, the following command, executed at the Terminal, will start it running:

    big:~ mtsouk$ apachectl start

    2. The Perl programming language: Tiger installs Perl by default, so, you should not have any problems unless something is terribly wrong with your installation. The Perl executable is located in/usr/bin/perl. The current Perl version, at the time of writing, is 5.8.6.

    3. Various UNIX command line tools: Tiger installs by default most of the required UNIX tools, so you will not probably have any problems.

    4. The RCS software that mainly supports and administers changes in text files. If you have already installed Developer Tools you have RCS already installed. On my Tiger 10.4.6 the rcs binary is installed in /usr/bin/rcs. If, for some reason, you do not have it, you should download the latest Xcode Tools installation package and install it from there.

Most of the installation work must be done inside the main configuration file of the Apache Web server. It is not a particularly difficult job, but you should concentrate while making the changes, as a small typo can make Apache not work at all. Let's see analytically.what the required steps for installing TWiki are:

    1. You should download and install the latest version of TWiki from the URL <http://www.twiki.org/>. At the time of writing this article, the latest TWiki version (Production Release as it is called) is 4.0.1 <http://twiki.org/p/pub/Codev/Release/TWiki-4.0.1.tgz>.

    2. You should now give the following command from a Terminal application in order to uncompress TWiki's files:

    tar zxvf TWiki-4.0.1.tgz

Before executing the above command, it would really useful to be in a separate subdirectory that you created somewhere inside your home directory. The execution of the tar command creates many subdirectories and files as can be seen in figure 1.



Figure 1: The root directory structure of TWiki

    3. You should now give the following command:

    sudo vi /etc/httpd/users/mtsouk.conf

      given that your username is mtsouk. Depending on your own username, you should give the respective command. Also, instead of using the vi editor, you can launch your favorite text editor. [Ed. Note - If you know what you're doing, you can make this change in your global httpd.conf file, too...but if you know what you're doing, you probably already knew that] In the above Apache configuration file, the following text was added:

    # Added for TWiki :
    ScriptAlias /wiki/bin/ "/Users/mtsouk/Sites/TWIKI/bin/"
    Alias /wiki/ "/Users/mtsouk/Sites/TWIKI/"
    <Directory "/Users/mtsouk/Sites/TWIKI/bin">
        AllowOverride all
        Options +ExecCGI
        Allow from all
    </Directory>
    <Directory "/Users/mtsouk/Sites/TWIKI/data">
        Deny from all
    </Directory>
    <Directory "/Users/mtsouk/Sites/TWIKI/lib">
        Deny from all
    </Directory>
    <Directory "/Users/mtsouk/Sites/TWIKI/templates">
        Deny from all
    </Directory>

    4. After setting up your Apache Web server, you should also make a small change in a file called /Users/mtsouk/Sites/TWIKI/bin/setlib.cfg. You should change the value of the twikiLibPath variable as follows:

    $twikiLibPath = "/Users/mtsouk/Sites/TWIKI/lib";

    5. Then you should also run the following command:

    sudo chown -R www /Users/mtsouk/Sites/TWIKI

    6. You should now make sure that the "Personal Web Sharing" service is turned on. It is located at the Sharing collection of settings inside System Preferences.

    7. The last thing you should do is, to restart Apache in order to activate the changes you made to its configuration file. This can be done using the command that follows:

    sudo apachectl graceful

That's all! Now you are ready to use TWiki from within your own browser! Start at URL <http://localhost/ wiki/bin/configure>, where you should define some primitive parameters. Figure 2 shows how your own picture should look like.



Figure 2: The http://localhost/wiki/bin/configure URL of TWiki

Currently, you should not worry about the displayed error messages, as this is the initial execution of TWiki. By pressing the "General path settings" button, and then going near the end of the displayed page, you will be able to adjust some parameters that are related to directories. The good thing is that TWiki makes proposals about most of the parameters, so you will not have to write them manually. Chances are that most of the proposals are correct! Now, please press the Next button at the end of the page, and you will get a page similar to the one shown in figure 3.



Figure 3: Giving the new password after pressing the "Next" button

You should now define your password by giving it twice, so that the system knows that you typed it correctly. You then press the "Set Password and Save changes" button to tell TWiki to store the new password, and you are directed to a new page that shows the committed changes. You should now press the "Return to configuration" button, at the end of the page. You will then return to your starting configuration page. This TWiki page will contain some warnings or errors, but you can ignore them. Then, you will have to make some changes at the "Store Settings"option. The changes you have to do must be analogous to the settings that are presented in figure 4. Given that your username as well as the installation directory are different from mine, you should adjust your settings accordingly.



Figure 4: Fixing some of the TWiki parameters

You will also need to copy an icon file named favicon.ico inside directory /Library/ WebServer/Documents. favicon.ico is the small icon that is sometimes displayed on the left of the web address field in your web browser. It is also necessary to have the CGI::Session perl module correctly installed. I prefer to utilize the CPAN Perl module, when I want to install a new Perl module, because I find it very handy and easy to use.

You are almost ready to start using the actual capabilities of TWiki. By directing your web browser to the URL <http://localhost/wiki/bin/view>, you will see figure 5.



Figure 5: Using Twiki

Administering TWiki

After successfully installing TWiki, you should now learn how to administer it. In this section, I will speak about the most important administrative tasks, as mentioning all of them would probably require a dedicated book chapter!

Creating a new Web

A Web is an autonomous independent area in TWiki that collects similar pages. It is a good practice to create Webs that have no logical relation to each other.

If you want to create a new Web with TWiki, you should go to the http://localhost/wiki/bin/view/TWiki/ManagingWebs URL. This is illustrated in figure 6. The reason for creating a new Web is mainly for separating logically different areas.



Figure 6: Creating a new Web.

As the text in figure 6 reads, you can rename a web by using the Tools section in its WebPreferences topic, whereas, you can delete a web by moving it into a Trash web.

Administering Users

There are mainly three important tasks that are user-related, and require an administrator to act on:

    1. Resetting a password. You should be a member of the TWikiAdminGroup, have a valid email address and go to the http://localhost/ wiki/bin/view/TWiki/ResetPassword URL in order to reset a password. The instructions inside the email that TWiki sends, will inform the user about the required actions that she needs to take.

    2. Blocking out a user. Although, blocking out a user does not conform to the Wiki philosophy, it is sometimes required to protect the other users. You should not use it very often though. The way to block out a malicious user is to reset his password, for a period of time, without telling him. At the end of the period, you will tell the user his new password and allow him to use TWiki again.

    3. Deleting a user. By describing how "difficult" it is to delete a user, you should understand, well, how often (or rarely) this should happen J. You should first locate a file named .htpasswd. This file holds the passwords of the TWiki users. You should delete the line that begins with the name of the user you want to remove. On my system, this file is located inside directory /Users/mtsouk/Sites/TWIKI/data. Then, you should go to the TWiki page, found in <http://localhost/wiki/bin/view/Main/TWikiUsers>. This page holds the list with all registered users. Figure 7 shows that page on my setup. You should now edit that TWiki page, and remove the user you want. Finally, for security reasons, you should delete any granted special rights the user might have.



Figure 7: The list of all registered TWiki users.

Backing up TWiki

The last important task that I want to mention is how to take a backup of your TWiki data. On my setup, data files are located inside the data directory. I prefer to use tar in combination to gzip, to take backups, so that is what I will show you. Give the "tar czvf ../TWIKIdata.tgz ." command inside the data directory and you are done! If for some reason you do not have the required user permissions to execute a command, put "sudo" in front of the command and try it again.

Using TWiki

In this section, I will only mention the basic procedures of TWiki, and therefore you should look at the extensive TWiki documentation if you want to look for more information.

WikiWords

A WikiWord is two or more words put together without spaces between the words, each of the words being written with an Initial Capital. Each WikiWord represents a topic name and it is advisable to insert WikiWords as often as you can. Correct examples of WikiWords are MacTech, MihalisTsoukalos, MacIntel, and PowerMac, whereas faulty examples of WikiWords are macTech, Powermac, Macbook, and Powerbook.

User Registration in TWiki

The first thing you have to do after the setup is to register yourself in TWiki. Registration can be done from the http://localhost/wiki/bin/view/TWiki/TWikiRegistration URL. If you want to make yourself an administrator, you have to manually access the http://localhost/wiki/bin/view/Main/TWikiAdminGroup TWiki page, and alter the line that says "Set GROUP =" by editing it and adding you own name.

As User Management and Authentication policies are complex issues, it is advisable to check the http://localhost/wiki/bin/view/TWiki/ManagingUsers URL for more information.

Editing Pages

Figure 8 shows an example of editing a new Wiki page in Sandbox whereas figure 9 presents the HTML output of the page. You can see that a Wiki offers many facilities for making your job easier, when creating new Wiki pages. You can even create HTML tables the Wiki way, insert HTML code, insert JavaScript code, and make use of Wiki plugins like the Spreadsheet Plugin. By pressing the question marks on the upper left of the AppleInc, HardWare and SoftWare WikiWords, you can simply create (and edit) new pages for those WikiWords! When we say that ease of use is built in the philosophy of Wikis, we mean it!



Figure 8: Creating a new TWiki page.



Figure 9: The HTML output of Figure 8 input.

If you do not want to create a link for a word that is by nature in a WikiWord format, you should put an exclamation mark in front of it, like !ToDo.

You can find more information about editing TWiki pages at <http://localhost/wiki/bin/view/TWiki/TextFormattingRules>.

A Criticism on Wikis

I will now briefly mention some concerns about Wikis. Please keep in mind that the actual problem comes from users and not from the Wiki philosophy itself. The possible Wiki problems are:

    1. You cannot be forced to use a Wiki, and therefore a Wiki that is not frequently updated will become obsolete.

    2. Wikis are Open Source systems. Therefore, a company must accept the use of Open Source software in order to also accept and use Wikis.

    3. For any information to be useful, it must also be neutral. Biased information does not help the success of a Wiki.

    4. Malicious users may cause problems, although, it is observed that vandalism is fixed very fast.

    5. Flame wars and trolls can occur in Wikis.

Conclusions

It should be clear by now that using a Wiki has many advantages. Their simplicity offers ease of use, and makes many of your jobs simpler. Wikis can also be used for taking simple notes or for writing down certain procedures.

You should practice and keep working with TWiki in order to be able to use it efficiently. At first glance, it seems a little complicated to learn how to efficiently use TWiki. Nevertheless, frequent use will make you feel more relaxed.

You should understand by now the Wiki philosophy, be able to install TWiki, and make the most essential actions on your installed TWiki. Keep on practicing in order to become a Wiki guru!

Bibliography and References


Mihalis Tsoukalos lives in Greece with his wife Eugenia. He is currently writing, "Widget Recipes: A Problem-Solution Approach" that will be published by APress. You can reach him at <tsoukalos@sch.gr>.

 
AAPL
$116.47
Apple Inc.
+0.16
MSFT
$47.98
Microsoft Corpora
-0.72
GOOG
$537.50
Google Inc.
+2.67

MacTech Search:
Community Search:

Software Updates via MacUpdate

Cobook 3.0.7 - Intelligent address book....
Cobook Contacts is an intuitive, engaging address book. Solve the problem of contact management with Cobook Contacts and its simple interface and powerful syncing and integration possibilities.... Read more
StatsBar 1.9 - Monitor system processes...
StatsBar gives you a comprehensive and detailed analysis of the following areas of your Mac: CPU usage Memory usage Disk usage Network and bandwidth usage Battery power and health (MacBooks only)... Read more
Cyberduck 4.6 - FTP and SFTP browser. (F...
Cyberduck is a robust FTP/FTP-TLS/SFTP browser for the Mac whose lack of visual clutter and cleverly intuitive features make it easy to use. Support for external editors and system technologies such... Read more
Maya 2015 - Professional 3D modeling and...
Maya is an award-winning software and powerful, integrated 3D modeling, animation, visual effects, and rendering solution. Because Maya is based on an open architecture, all your work can be scripted... Read more
Evernote 6.0.1 - Create searchable notes...
Evernote allows you to easily capture information in any environment using whatever device or platform you find most convenient, and makes this information accessible and searchable at anytime, from... Read more
calibre 2.11 - Complete e-library manage...
Calibre is a complete e-book library manager. Organize your collection, convert your books to multiple formats, and sync with all of your devices. Let Calibre be your multi-tasking digital... Read more
Herald 5.0.1 - Notification plugin for M...
Note: Versions 2.1.3 (for OS X 10.7), 3.0.6 (for OS X 10.8), and 4.0.8 (for OS X 10.9) are no longer supported by the developer. Herald is a notification plugin for Mail.app, Apple's Mac OS X email... Read more
Firetask 3.7 - Innovative task managemen...
Firetask uniquely combines the advantages of classical priority-and-due-date-based task management with GTD. Stay focused and on top of your commitments - Firetask's "Today" view shows all relevant... Read more
TechTool Pro 7.0.6 - Hard drive and syst...
TechTool Pro is now 7, and this is the most advanced version of the acclaimed Macintosh troubleshooting utility created in its 20-year history. Micromat has redeveloped TechTool Pro 7 to be fully 64... Read more
PhotoDesk 3.0.1 - Instagram client for p...
PhotoDesk lets you view, like, comment, and download Instagram pictures/videos! (NO Uploads! / Image Posting! Instagram forbids that! AND you *need* an *existing* Instagram account). But you can do... Read more

Latest Forum Discussions

See All

Ubisoft Gives Everyone Two New Ways to E...
Ubisoft Gives Everyone Two New Ways to Earn In-Game Stuff for Far Cry 4 Posted by Jessica Fisher on November 21st, 2014 [ permalink ] | Read more »
Golfinity – Tips, Tricks, Strategies, an...
Dig this: Would you like to know what we thought of being an infinite golfer? Check out our Golfinity review! Golfinity offers unlimited ways to test your skills at golf. Here are a few ways to make sure your score doesn’t get too high and your... | Read more »
Dark Hearts, The Sequel to Haunting Meli...
Dark Hearts, The Sequel to Haunting Melissa, is Available Now Posted by Jessica Fisher on November 21st, 2014 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
Meowza! Toyze Brings Talking Tom to Life...
Meowza! | Read more »
Square Enix Announces New Tactical RPG f...
Square Enix Announces New Tactical RPG for Mobile, Heavenstrike Rivals. Posted by Jessica Fisher on November 21st, 2014 [ permalink ] With their epic stories and gorgeous graphics, | Read more »
Quest for Revenge (Games)
Quest for Revenge 1.0.0 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0.0 (iTunes) Description: The great Kingdom of the west has fallen. The gods ignore the prayers of the desperate. A dark warlord has extinguished... | Read more »
Threadz is a New Writing Adventure for Y...
Threadz is a New Writing Adventure for You and Your Friends Posted by Jessica Fisher on November 21st, 2014 [ permalink ] In the tradition of round-robin storytelling, | Read more »
SteelSeries Stratus XL Hardware Review
Made by: SteelSeries Price: $59.99 Hardware/iOS Integration Rating: 4 out of 5 stars Usability Rating: 4.5 out of 5 stars Reuse Value Rating: 4.25 out of 5 stars Build Quality Rating: 4.5 out of 5 stars Overall Rating: 4.31 out of 5 stars | Read more »
ACDSee (Photography)
ACDSee 1.0.0 Device: iOS iPhone Category: Photography Price: $1.99, Version: 1.0.0 (iTunes) Description: Capture, perfect, and share your photos with ACDSee. The ACDSee iPhone app combines an innovative camera, a powerful photo... | Read more »
ProTube for YouTube (Entertainment)
ProTube for YouTube 2.0.2 Device: iOS Universal Category: Entertainment Price: $1.99, Version: 2.0.2 (iTunes) Description: ProTube is the ultimate, fully featured YouTube app. With it's highly polished design, ProTube offers ad-free... | Read more »

Price Scanner via MacPrices.net

Save up to $400 with Apple refurbished 2014 1...
The Apple Store has restocked Apple Certified Refurbished 2014 15″ Retina MacBook Pros for up to $400 off the cost of new models. An Apple one-year warranty is included with each model, and shipping... Read more
New 13-inch 1.4GHz MacBook Air on sale for $8...
 Adorama has the 2014 13″ 1.4GHz/128GB MacBook Air on sale for $899.99 including free shipping plus NY & NJ tax only. Their price is $100 off MSRP. B&H Photo has the 13″ 1.4GHz/128GB MacBook... Read more
Apple Expected to Reverse Nine-Month Tablet S...
Apple and Samsung combined accounted for 62 percent of the nearly 36 million branded tablets shipped in 3Q 2014, according to early vendor shipment share estimates from market intelligence firm ABI... Read more
Stratos: 30 Percent of US Smartphone Owners t...
Stratos, Inc., creator of the Bluetooth Connected Card Platform, has announced results from its 2014 Holiday Mobile Payments Survey. The consumer survey found that nearly one out of three (30 percent... Read more
2014 1.4GHz Mac mini on sale for $449, save $...
 B&H Photo has lowered their price on the new 1.4GHz Mac mini to $449.99 including free shipping plus NY tax only. Their price is $50 off MSRP, and it’s the lowest price available for this new... Read more
Check Apple prices on any device with the iTr...
MacPrices is proud to offer readers a free iOS app (iPhones, iPads, & iPod touch) and Android app (Google Play and Amazon App Store) called iTracx, which allows you to glance at today’s lowest... Read more
64GB iPod touch on sale for $249, save $50
Best Buy has the 64GB iPod touch on sale for $249 on their online store for a limited time. Their price is $50 off MSRP. Choose free shipping or free local store pickup (if available). Sale price for... Read more
15″ 2.2GHz Retina MacBook Pro on sale for $17...
 B&H Photo has the 2014 15″ 2.2GHz Retina MacBook Pro on sale for $1799.99 for a limited time. Shipping is free, and B&H charges NY sales tax only. B&H will also include free copies of... Read more
New Logitech AnyAngle Case/Stand Brings Flexi...
Logitec has announced the newest addition to its suite of tablet products — the Logitech AnyAngle. A protective case with an any-angle stand for iPad Air 2 and all iPad mini models, AnyAngle is the... Read more
Notebook PC Shipments Rise Year-Over-Year as...
According to preliminary results from the upcoming DisplaySearch Quarterly Mobile PC Shipment and Forecast Report, the global notebook PC market grew 10 percent year-over-year in Q3’14 to 49.4... Read more

Jobs Board

*Apple* Solutions Consultant (ASC)- Retail S...
**Job Summary** The ASC is an Apple employee who serves as an Apple brand ambassador and influencer in a Reseller's store. The ASC's role is to grow Apple Read more
Project Manager, *Apple* Financial Services...
**Job Summary** Apple Financial Services (AFS) offers consumers, businesses and educational institutions ways to finance Apple purchases. We work with national and Read more
*Apple* Store Leader Program - College Gradu...
Job Description: Job Summary As an Apple Store Leader Program agent, you can continue your education as you major in the art of leadership at the Apple Store. You'll Read more
*Apple* Retail - Multiple Positions (US) - A...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
Senior Event Manager, *Apple* Retail Market...
…This senior level position is responsible for leading and imagining the Apple Retail Team's global event strategy. Delivering an overarching brand story; in-store, Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.