Review of Compendium

Compendium has been under development at the Open University for many years.  Compendium does much more than just Mind Mapping.  It is a free and open source tool for representing, organising and communicating knowledge, processes and arguments.  It may not be as pretty as some of the other mind mapping tools but it is much more capable and functional.

There is one feature which was tried and found not to be useful but was not entirely removed.  In one of the earlier versions there was an e-mail system built in to the program so that different users of the database could send each other messages, but this e-mail system did not connect to the outside world it was purely internal.  It was found that most of the users of the program used external e-mail applications to send each other messages and so this function was removed but on your home map there is still an Inbox which you cannot delete or use to send messages.  It acts like a node and you can link to it.  You can open it but it will be an empty list.  I don’t know why it is still there.

Another thing which appears on your home map is a recycling bin which is where deleted nodes go to die or be resurrected.

Compendium stores its maps in a database so there is no ‘save’ button, whatever changes you make to a map are saved continuously.  By default Compendium uses the Derby database embedded within Java (Compendium is written in Java and you can download the source code) but it can also use a MySQL database.  For home use the database will most likely be set up on your local machine and you will be the only one to have access to it, but it is possible to set the database up on a remote machine and to have many people working on the same database at the same time.  Collaborative editing of a map is possible.

The version I am using is Compendium NG but there is another version, Compendium LD is a fork of an older slightly less advanced version aimed specifically at students and which has been given a more extensive set of node stencils (templates).  Fortunately it is a simple job to install Compendium LD, copy the extra stencils then uninstall it and paste the stencils into appropriate place in Compendium NG.  So then you have the best of both.

VUE is easier to use and has more extensive documentation.


Overall score = 23 out of 50


1.  Organisation  =  6

Compendium places few constraints on how you organise material.  A Compendium database starts off with one ‘Home’ map on which you can place nodes and connections between nodes (links).  Maps can be as big as you like, the canvas is enormous.  One type of node which is particularly interesting is the Map node.  This type of node contains a new map on a new canvas which can contain map nodes which contain other maps, etc …  Memory is the only limit to the depth to which this can go.  This means it is easy to split up your information into many small easy to understand maps instead of having one gigantic sprawling map.

There is no hierarchy unless you make it yourself, the map can contain floating nodes and there can be as many maps on one canvas as you have room for.  A node may be any one of eleven types selected from a pallet and dragged onto the map, or you can type the keyboard shortcut to create a node at the mouse position, so creating nodes is very quick.  Links are also quick to create, just right click and drag from one node to another.  Links can have a type but they cannot split or join like they can in VUE.

Although there are eleven types of node you can extend this by using what the Compendium team call stencils.  This allows you to roll your own type of node with your own icons.

Compendium also supports transclusion, the same node may appear in different places and when it is edited all the instances of that node are changed.

Nodes can be tagged with keywords which can then be used to search for particular nodes, although using the results of a search is not intuitively obvious.  If you mouse over the ‘views’ column of the search results then a box appears under the mouse with a list of the maps where that particular result appears, clicking on one of these entries will bring up that map.


2.  Attachments to nodes  =  4     (would have been higher but for the bug and not supporting universal links)

In Compendium a node is not just an icon with a title in a map.  You can open it to reveal its contents.  There are five basic types of nodes, one of these is only used by Compendium itself and two of the others aren’t particularly useful so when defining a new node type for a stencil (a palette of your own custom node types) the choice is very simple, the node is either a ‘Map’ which contains a new blank map or it is a ‘Reference’ which contains text but which can also link to things.

The other types are Note, List and Movie Map.  The Note type is used exclusively by Compendium but it is just a Reference type without the link field so a Reference node can be used in its place without any detriment.  The Movie Map type is used for displaying video files but these are probably better displayed by linking to the file and using its default application.  The List type is a list of nodes, but this is not very well implemented and it is difficult to populate the list.

Opening a Map node takes you to the map contained within the map node.  Opening a Reference node opens a window containing the contents of the node which are a title field, a notes field, a Ref field and an image field.

The title is the text which appears below the node on the map.

The notes field contains text, there is a bug in the program which prevents it from holding large amounts of text.  The note field can only hold 32 kilobytes of text, if the text exceeds this length then it will only persist until the program is closed.  When you next run Compendium the text will have disappeared, there will be no error messages or warnings, it just isn’t there when you next run the program.  This is quite a serious bug in my opinion, not the fact that there is a limit on the size of the text but the fact that there is no warning when you reach that limit, your text just isn’t there when you next run the program.

So the note field is for short texts only, but 32 kilobytes is more than enough for most purposes on a program like this.  The text is unformatted, just plain text in the default windows dialog box font and size.  The text can be divided into pages but where you put the page breaks is entirely up to you.

The reference field can contain a link to a file or a URL but unfortunately Compendium does not support universal links.  The Image field contains the pathname and file name of the image to be used for the node, if it is blank then the default image from the stencil is used.

There is no way to create a link into Compendium from another program.  Since the maps are all in a database you cannot even use the trick of running the program with a particular file because there are no map files which can be run.


3.  Appearance  =  5

Compendium has the appearance of a Unix program, there is some customisation, the interface may be set to some of the styles supported by Java Swing.

The positioning of nodes on the map is set by the user but links between nodes take the shortest path.  In my opinion the maps are not as expressive as the VUE maps although they do come close.



4.  Ease of use  =  4

Compendium has a very idiosyncratic user interface, it takes a while to get used to it.  It follows very few of the conventions which windows users have grown used to.  There are many things which can be done but which are not obvious or intuitive.  There is no good documentation for Compendium.

You can zoom in and out from the map using the mouse wheel and pan by right click and drag in a clear part of the map.  Zooming out gives you an overview of the map.

Compendium can only have one database open at any time and there can only be one instance of Compendium running at a time so this is less useful than it could be.

There is support for collaborative working but I have not investigated this aspect of the program.


5.  Import – Export  =  4

Compendium does not have a comprehensive list of import and export formats, it can export to XML or to a Web page or to a .JPEG file.  It can import an XML file or from a ‘Questmap’ file (whatever one of those is), or there is an option to ‘Import Image Folder into current map’ which copies all the pictures in a folder and pastes them into the current map (which is actually less useful than it sounds).

So maps may be exchanged from one instance of Compendium to another by exporting the map in XML format and importing it into the other Compendium in XML format.  XML format is also useful to see the structure of a map but beyond that I have not been able to import the generated XML file into any other application.