Zim and the art of wiki development

Zim logo

Zim is a desktop wiki that use both Launchpad and Bazaar. I asked Jaap Karssenberg, its founder and main developer, about the project.

Matthew: How does Zim compare with something like Tomboy?

Jaap: I really don’t know as I never used Tomboy for an extensive amount of time — it wasn’t around yet when I first started with Zim. From interface design I get the feeling Tomboy is designed as a replacement for sticky notes while Zim was designed as a replacement for an outliner. I think Zim is more tailored towards structuring notes. But Tomboy is moving fast as it has seemingly more developers and of course it gets traction from being included in Gnome.

Matthew: Do you think desktop wikis will eventually take over from larger applications, such as OpenOffice.org Writer, now that we’re increasingly producing documents for distribution online rather than via paper?

Jaap: I don’t think so, both serve different purposes. Wikis are very useful for storing information and building a knowledge base. Websites to some point have the same use cases, so a program like Zim can be used to build a website (in fact the Zim website itself is maintained in Zim). Office applications on the other hand are used when the focus is on layout and presentation of the data (e.g. writer and presenter) or do specialized calculations (e.g. calc). In my own workflow, I use Zim to collect notes about all my ongoing projects and this changes from day to day. When I need to produce a document these notes are the raw material, but I use an office application to produce a polished document. When such a document is finished itis published and does not change anymore.

Matthew: One of the great advantages of web-based wikis is collaboration. Does Zim have any features to enable collaboration?

Jaap: Zim has plugins to use version control like Bazaar or Subversion on the wiki data. My take on collaboration is that it can be done for a wiki the same way it can be done for code. Obviously you would need some betteer graphical interfaces for non-programmers to use it, but why not. This features doubles as backup mechanism and as synchronization. I especially like Bazaar for this due to it’s decentralized nature which fits a document concept real well.

Matthew: Are you looking for contributors?

Jaap: Always. Now it is just me on two nights a week and one or two irregular patch submitters. But we do have a lot of translators contributing already and
someone working on windows packages, which is very good. Still I feel the project is to much driven by a single developer.

Matthew: Why did you choose Launchpad and Bazaar?

Jaap: Bazaar was a logical choice as I was an avid Arch user before subversion and other modern version control systems arrived on the scene.

In the past I hosted projects on Sourceforge because I didn’t have my own hosting and needed centralized CVS etc. After some frustration I moved to Gnu Arch for version control and started hosting myself. But I started using Launchpad to allow translators to contribute and gradually discovered more useful features. I still have my own hosting contract for the website and put the bazaar branches there, but Launchpad is useful for contributers of other branches, translations and the bug tracker. Also running the mailing list there since my hosting provider doesn’t offer one. In short it spares me the work of setting up and maintaining those services myself.

Matthew: Thanks Jaap!

Leave a Reply