Selecting a Wiki Platform
From MontCo MediaWiki
This project started primarily as a project management experiment.
The advent of Service Oriented Architectures coupled with a desire for highly iterative (Agile) development methodologies has forced the County to look at unconventional project management approaches to achieve excellence and repeatability. While I thought using wikis was a unique and innovative approach, it turns out many organizations, including AOL have adopted this approach and have found it HIGHLY effective and possibly an emerging best practice.
Much has been learned implementing pilots of three different platforms. MontCo originally implementd TurnScrew as the default platform based primarily on its ease of implementation and use, despite the fact it has several functional shortcomings that require a second platform for more sophisticated wiki usage, which later became the default platform (MediaWiki).
While the TWiki platform had many advantages, the TWiki implementation process was so difficult it is impractical for primary consideration given the resources and ability to execute of the County.
Contents |
Summary
After a two year pilot trying to use SharePoint as a collaboration/wiki tool and achieving absolutely no penetration (despite repeated and constant cajoling and threats from the CIO). Unwilling to give up on the concept, we went back and copied the appcollaborative development efforts (specifically, PHP, MediaWiki, and Linux).
The County of Montgomery originally used the TurnScrew platform as the primary project platform. However, while extremely easy to implement, it was not functionaly adequate for the more sophisticated usages and does not have the full open source integrity desired for a truly comprehensive wiki. The County is currently implementing MediaWiki as the default platform.
The County has also implemented TRAC, but while it has many project advantages (especially a close integration with SVN for source version tracking), it has limitations on access restrictions and functionality.
Selection Process
The primary selection criteria are:
- Ease of Use - measured by penetration rate.
- Ease of Implementation - nothing good is completely turnkey, but the implementation and maintenance of the platform needs to be within the resources and ability to execute of the County.
- Open Source - although the free factor definitely enters in here, the implicit support for these community initiatives was definitely a factor.
- Functionality - we found significant differences in functionality and unfortunately none of the platforms had everything we were looking for, so tradeoffs have been made.
- Platform Independence - while it was our intention to implement on the MS Server platform (mostly because we had same available without cost), optimally, the wiki infrastructure would be platform independent.
In August of 2006, the County brought up TWiki as an experiment in Wiki implementation. While the platform was implemented, the relative complexity was unacceptable. In the second round, we spent several days looking at WikiMatrix, a site devoted to comparing different wiki platforms.
From the information provided on this site and the experience we had with the Federated Identity Services project, we decided to implement TurnScrew as the low-end solution and MediaWiki (the platform used for Wikipedia) as a high-end solution.
TurnScrew Platform
TurnScrew was originally used as the default platform for wiki communities at MontCo.
TurnScrew Strengths
- Ease of implementation - The platform has a couple of quirky protection problems easily overcome. From download to first implementation took approximately 2 hours. Learning to customize for appearance and components an additional 4-8 hours.
- Ease of use - Even after several adaptations, the users found TurnScrew far more intuitive and practical than MediaWiki, despite the obvious functional benefits of MediaWiki.
- Complex File Directories - The ability to upload files, whether for graphic illustration or as collaborative facilitation is crucial. The ability to segment these files into user specified subfolders greatly enhances the usefullness of the tool.
- GUI Configuration - This platform has a very nice GUI-based configuration utility that makes administration relatively simple for even the most unsophisticated administrator.
- Inherent RSS - This platform has super simplified RSS implementation by default.
- Categories - Categorization is simple and intuitive, allowing a wiki to be divided into logical segments.
- User Management - TurnScrew has a user-based management that facilitates finding and changing user permissions in a simple to use fashion. It also has the ability to send messages to individuals or groups as a built-in feature.
TurnScrew Weaknesses
- Email Notification of Changes - The RSS Capability may compensate for this shortcoming for users comfortable and conversant with RSS feeds, but this is a SERIOUS issue for the majority of users who still rely on their email for notification.
- Microsoft Dependency - This product only runs in the Microsoft ASP.NET environment so it can only use .dll and .aspx enhancements.
- Relatively Limited User Base - The product is supported as the byproduct of a commercial organization. There is no true collaborative development community or support.
- Access Control - Access control is pretty much set as an attribute of each instance of the wiki on an all or nothing basis. Roles and features are very limited and would have to be customized for full funtional capabilities.
- Security Flaws - We discovered at least two flaws that left the County Server vulnerable to attack from non-authenticated users. One was a flaw in the ScrewTurn software, the other in the way the ScrewTurn used aspx. This has caused us to shut off the ScrewTurn platform.
MediaWiki Platform
MediaWiki will be used as the platform for MIXNET wiki and the default platform for MontCo communities. MediaWiki is completely open source and developed primarily in PHP. Like many of the other PHP applications, the developers assume that php is self-documenting, obviating the need for GUI configuration and management. It is really more of a development environment than a self-contained package.
MediaWiki Strengths
- Email Notification of Changes - MIXNET and other communities depend on email and/or listserves to propogate collaboration threads. Having EMail notification simplifies (or even obviates) the need for transition or mutiple technology collaboration.
- Platform Independence - Having platform independence is a desirable image and message for true SOA implementations by not prejudicing technology choices.
- Diverse User Base - MediaWiki is the platform that serves up Wikipedia - the most widely used wiki today.
- User Roles - WikiMedia has a fully extensible user role and assignment as well as several features for implementing them within pages.
- Protect Page - Sysops (or other assigned users) have the ability to protect a page, making all suggestions go to the discussion area to be incorporated by an editor.
- Extensive Management Capabilities - The 'special pages' include a wide variety of administrative reports and functions that make it possible to manage and assess an extremely complex collection of articles and categories.
MediaWiki Weaknesses
- Ease of implementation - The flexibility and extensibility of this platform requires extensive knowledge and a lot of incremental knowledge to tune it for use as a project
- Ease of use - Even after several adaptations, the users found TurnScrew far more intuitive and practical than MediaWiki, despite the obvious functional benefits of MediaWiki.
- Single File Directory - All files are uploaded into a single directory structure. This has severe restrictions on both security and segmentation.
- User Management - To perform user management, you need to identify the users through a 'list user' special page, then go into another completely different function to modify the users roles/function - a process that is extremely cumbersome.
