A notch above a monkey

Building FAQ from wiki pages

We use MoinMoin for all our documentation needs, since it simplifies almost all related tasks. It’s nice when everything is available at one place through a familiar and easy to use interface.

This is why I also wanted to use it to build a FAQ for our site, which is more needed with each day. There’s an abundance of software for building and managing such documents, but I haven’t found anything that would match our needs. Apart from using wiki pages as the source of wisdom, I also wanted:

  1. A good and fairly easy integration with our site (but not automatic).
  2. A very malleable solution, where it would be easy to change FAQ organization as requirements change.

At the end I decided to build our own thing using Beautiful Soup , a python package I raved about a while ago. Since we wanted each question to have a permanent link that could be bookmarked, we had to give them an identifier that wouldn’t change even if we rephrased the question or changed the answer. The simplest way was to assign a unique number to each question as it can be seen on a sample FAQ page . This way it’s easy to add and remove questions as long as you can count.

MoinMoin produces very sensible HTML that is easy to work with. Here’s a proof of concept module that extracts information from a page like the sample one and packs it in a dictionary with identifiers as keys and a list [ question, answer ] as value.

It’s not something very useful on its own, but I think it’s a nice example of what can be done quickly with existing tools like MoinMoin and BeautifulSoup.

Notes: In principle there’s no need to use MoinMoin as long as produced HTML fits following assumptions:

  1. FAQ is stored inside a div element with id set to content .
  2. Questions are inside a heading element which also acts as a delimiter between them.
  3. Identifiers are integers.

If it doesn’t, you’ll need to change code a bit.

The most annoying business habit

To me the most annoying business habit is calling someone when it’s not urgent, even though you have his email address and it should be obvious from your relationship that he prefers email to other means of communication.

I hated phones since I was a wee lad, but I dislike them even more now, because:

  1. They break my concentration; rarely for a good reason.
  2. They are invasive and inconsiderate. Just because it suits you to call me now, it doesn’t mean it suits me.
  3. Whatever is said on the phone can be denied later and sometimes is.

Leave a trail or fuck off.

Riffs' logo hinting

I found a link to Riffs at Jon Hick’s blog. I don’t know much about their service, but I really like how logo gives you a direct clue to where you’ll go when you hover over it. It’s little things like this that make good interfaces great.

On the other hand I’m not fond of alpha or beta signs on services that are not finished yet. It’s been my experience that most users, especially more inexperienced ones, have no idea what that was supposed to mean.

That’s why we went with “v pripravi” stamp on our site , which is a short slovene description that we’re still preparing this yet unfinished site. It’s been very well received even though stamp doesn’t look real and doesn’t fit the rest of design all that well either. I believe the importance of language used can’t be overstated and jargon that you don’t share with your users must simply be completely avoided.

By the way, for those who’ve seen Marela, the reason why there’s a mismatch between the stamp (together with the first page) and otherwise great design is that former was done by me and later by immensely talented guys at clear:left . If you ever need a dedicated and passionate bunch of web developers who’ll go beyond their duty for a very reasonable fee, you really should give them a call.