Tom Morris



2008.03.09

How to build the perfect wiki 2008-03-09T14:48:35ZPermalink

I've been using a variety of wiki systems for some years, and I have to say I strongly dislike most of them. Starting with WikiBase, and through Wakka/Wikka, PBwiki MediaWiki, Confluence (a so-called "enterprise wiki" - which is to say a wiki made so complicated and hacker-unfriendly that it's possible to sell to those running corporate IT departments), SocialText (also for 'enterprise') and a variety of different personal wiki systems.

I can't stand them. The simpler ones tend to be a lot more useful than the complex ones - and MediaWiki is a tolerable middle point. But I really don't like most wiki systems as they currently stand. There are a few simple reasons for this.

First off, I don't like writing text in a web browser. I have TextMate and It's All Text! which allow me to edit any text area in a proper editor like TextMate. Can't I do that with wikis? Yes, sure. And I do often. But I want it to go further than that. I'm offline a lot. I want to be able to edit a wiki while offline and then push my changes up to the server when I'm back online. A wiki is - at it's core - a version control system for web pages. But compared to version control systems that programmers use - even now-redundant systems like Subversion and CVS (hint: Git) are a lot more useful than most wiki systems.

Another thing I hate about wikis is the syntax. Almost every wiki system does it differently. What was so wrong with HTML that we had to come up with a thousand reinventions of it? Now instead of learning HTML, everyone has to learn a hundred crappy, less-expressive versions and keep track of which particular dialect of this mess we should use on each particular wiki.

Third, every wiki should have proper diffs. I track changes on wikis via RSS, and what I'm interested in is the diffs. Okay, most normal people don't read diffs. Do I care? Not really. So, give me diffs of every change.

Fourth, most wikis I use are slow. Compared with typing "mate foo.txt" into my command line and working on a text file, I have to go to the site, find the page using rather primitive search tools (compared with using grep or most editors 'Find in Project' commands), then log in, wait for another page to load up, remember the stupid wiki syntax and then edit the page. All that is discouraging. Okay, it's fine for ordinary users - but it actively discourages me from contributing to most wikis. These problems are often exarcerbated in 'enterprise wikis' which tend towards featuritis at every opportunity.

Here's my ideal wiki system. It'd consist of a folder full of textfiles, tracked with Git. Then when one types "git push", it adds all of your commits to the wiki, which are then published on the website. And that's it. Recent changes? "git pull" then "git log". Maybe if you want it to have some extra functionality, you have a simple script called "wiki" which you could just pass commands to like "wiki orphanpages", and it'd give you a list of orphan pages. All the non-geek users could use a web UI much like they do already with wikis - go to a website and make commits on there.

Oh, it looks like Git Wiki may be the starting point for what I need...

Links from del.icio.us

 — 

No. 776
Tom Morris 9f4907d871750fd4c9b9bad7086701b51d6abd10 bd9f81a05283ed85e699175ed057b4a497f20b77 802c68123e12bf69d99a25a87cef360f18813fe4
Currently in: East Sussex, England
Usually in: East Sussex, United Kingdom
AIM: tommorris
YIM: tom.morris

I am a , an , like to code in and (and Java, but let's not talk about that), and noodle about with and the .

I have an MA in philosophy from Heythrop College, University of London. My philosophical interests are in analytic metaphysics, ontology, modality, the work of , , , and . I have a strange, unfulfilled interest in . I've been influenced by Gadamer, by , , and .

Musically, I like jazz fusion, soul and P-Funk. My musical nirvana would be a mixture of Beethoven, Miles Davis and George Clinton topped with a side-serving of Erykah, Jill and Angie.

I also write for the Citizendium, an online encyclopedia project. If you know about stuff, you should join in. I occasionally produce audio recordings for The Pod Delusion.

Elsewhere:

  • GPG Key
  • del.icio.us
  • Flickr
  • Twitter
  • Jaiku
  • LinkedIn
  • ma.gnolia
  • blip.tv
  • upcoming.org
  • MetaFilter
  • LiveJournal
  • CiteULike
  • Technorati Profile

RSS Feed Subscribe:

RDF

« March 2008 »
SuMoTuWeThFrSa
 1
2345678
9101112131415
16171819202122
23242526272829
3031 

View in month context

On this day in: 2006 2007