Le mot « wiki » vient du terme hawaiien wiki wiki, qui signifie « rapide » ou « informel » (Source: http://fr.wikipedia.org/wiki/Wiki).
Les utilisateurs créent du contenu (texte, images, tableaux…) dans de multiples pages reliées entre elles. Pour cela, ils utilisent un langage simple (mais non intuitif) et n’ont pas besoin d’un outil spécifique pour commencer à travailler sur un wiki. L’autre point important est que chacun peut modifier le contenu créé par d’autres utilisateurs, et ce, au même moment!
La collaboration avant tout
Même si un wiki peut rendre de grands services a un utilisateur isolé, il est avant tout destiné a un groupe, travaillant sur un même document, et ce, par le biais d’Internet.
Le document typique créé par un wiki sont les documentations technique, de référence (FAQ) et tout document structuré pour lesquels un forum ou une liste de discussion ne sont plus suffisants.
Le principe de base
Au départ, un wiki se présente sous la forme d’une page blanche dans un navigateur.
Le premier contributeur tape du texte, ajoute des pages, créée des liens hypertextes sur les mots clés,…. Un deuxième contributeur modifie le texte, supprime, ajoute… Il faut noter que fondamentalement un wiki n’est pas ‘protégé’, c’est à dire que tout un chacun peut modifier le contenu wiki (certains wiki sont capables de gérer les utilisateurs). Heureusement, le système gère les versions des documents et il est possible de revenir à une version antérieure. La plupart des wiki proposent aussi une recherche textuelle.
Du côté technique
Certains wiki sont écrits en php, d’autres en C ; certains sont basés sur une base de données (mySQL ou postgreSQL en général), d’autres n’utilisent que des fichiers textes. On le comprend, il existe des wiki pour tous les goûts et tous les usages. La plupart se base sur un serveur web (tel Apache), mais CVS-Trac en installe un.
Pas simple de s’y retrouver! Voilà une liste de quelques wiki et une courte description.
Quelques exemples de Wiki
PHP-Wiki
Homepage: http://phpwiki.sourceforge.net/
Initialement très basique, PHP-Wiki a été presque complètement réécrit pour devenir un des Wikis les plus complexes (environ 25000 lignes de code).
Comme son nom l’indique, PHP-Wiki est écrit en PHP, dont il utilise les bibliothèques Ado DB ou PEAR (PHP Extension and Application Repository) pour se connecter à une base de données mySQL ou postgreSQL (d’autres systèmes sont utilisables).
Ce Wiki est extensible grâce à des plug-ins (calendrier, album photo, upload de fichiers…), est capable de gérer les utilisateurs, langues, thèmes… mais souffre d’une documentation chaotique[1].
Le langage permet d’insérer des tableaux, des images… Un système de cache stocke les pages HTML créées, et il est possible de présenter les différences entre deux versions d’une page (à la Diff).
Néanmoins, malgré une installation très simple, la manipulation de l’outil est relativement complexe.
PM-Wiki
Homepage: http://www.pmichaud.com/wiki/PMWiki/
Très léger (1000 lignes de code dans un fichier unique), écrit en PHP, PM-Wiki se base sur des fichiers textes pour stocker les pages du Wiki. D’utilisation relativement simple, mais quelque peu limité au niveau fonctions (pas de gestion des utilisateurs, des templates…), PM-Wiki permet néanmoins l’insertion de code php, et permet de verrouiller une page ou de la réserver à un groupe d’utilisateurs.
Idéal pour un faible nombre de pages. Le manque de base de données rend la sauvegarde des données moins simple.
Co-Wiki
Homepage: http://www.develnet.org/
Co-Wiki se distingue des autres moteurs de Wiki grâce à sa gestion des utilisateurs, calquée sur le modèle des droits Unix. Chaque page se voit associée à un utilisateur et à un groupe, et le propriétaire peut donner des droits de lecture et/ou écriture à son groupe et au reste du monde. Revers de la médaille, ajouter une page ne se fait pas instantanément comme dans les autres systèmes (puisqu’il faut définir le propriétaire et les droits).
Co-Wiki s’étale sur 40000 lignes de code et utilise des fonctions orienté objet de PHP5. Il est extensible grâce à des plugins. Ce wiki représente une espèce de passerelle vers les CMS (Content Management System – système de gestion de contenu).
Idéal pour un travail collaboratif avec de nombreux collaborateurs.
Trac
Homepage: http://www.cvstrac.org/
Destiné à l’écriture de documentation de logiciels, ce système s’installe sur un moteur CVS (Concurrent Version System – système de gestion de versions), et regroupe un navigateur CVS, un bugtracker (système de gestions des rapports d’erreurs) avec un wiki traditionnel.
Basé sur une base de données SQLite, CVS-Trac intègre un navigateur internet. Ses fonctions sont très primitives: formatage de texte, insertion de liens, et fonction de recherche, mais sa force réside dans l’intégration du CVS et du Bugtracker (affichage du ticket) et dans le peu de ressources matérielles et logiciels qu’il nécessite.
Ce système donne sa pleine mesure pour la documentation du logiciel produit par une équipe de développeurs.
Media-Wiki
Homepage: http://wikipedia.sourceforge.net/
Moteur de l’encyclopédie libre http://www.wikipedia.org, Media-Wiki tire les avantages de cet effort. Basé sur une base MySQL, gère des articles en plusieurs langues, gère très finement les versions des documents, ainsi que les auteurs (le blocage d’adresses IP est possible) ; l’exportage de pages en XML est possible, il est possible d’insérer des images dans le texte, mais également de les uploader sur le serveur. L’écriture de formules mathématiques est réalisé en insérant des copies d’écran (format PNG) de Latex. Les codes ISBN sont également gérés et il est possible de rechercher un code donné dans une liste de cyber-bibliothèques et -libraires.
L’architecture du système est bien documenté, les 20000 lignes de code PHP également. Media-Wiki est sous licence GPL.
Wiclear
Homepage: http://wiclear.free.fr/
Relativement nouveau, ce wiki ne propose pas encore toutes les fonctions des ténors du genre. Il est basé sur une base de données MySQL et permet de gérer les traductions du contenu (une même page peut exister en français, anglais, italien…). Ensuite, chaque page étant toujours liée à une page parente, il n’existe pas de page orpheline, ce que prouve la fonction Plan du site. Utilisant la même syntaxe que le moteur de blog Dotclear (http://www.dotclear.net), Wiclear produit du code XHTML conforme.
Conclusion
Il existe quantités de systèmes Wiki (http://c2.com/cgi/wiki/WikiEngines), mais tous ne se valent pas, notamment au niveau de la documentation. De même, un trop plein de fonctions n’est pas forcément idéal pour commencer. Le choix d’un Wiki se définit donc autant au niveau des fonctionnalités offertes mais aussi du travail qui lui est destiné.
Sources:
1. iX 4/2004, p.75
Note: Ce document est sous license Creative-Common by-nc-sa
Mots-clefs : Articles, Collaboration, Outils, technique, Wiki