Andamooka: Open Support for Open Content

Open-source software development provides an inspirational model for books.

A little over a year ago I began writing a book about developing KDE applications. The KDE project was introducing many new APIs and subsystems into the development code that would eventually become KDE 2.0, and developers would need documentation to keep pace with all of this new technology. But how could a book, which needs to be written, edited, reviewed and printed (with some of these steps occuring several times), be made available before the software about which it is written changes? Half of the solution was to enlist as contributing authors several talented developers who were designing and building the new technologies and to keep us all working in parallel from the then-current code base (the “bleeding edge” code). The other half, use of the Open Publication License, has lead to the development of Andamooka and the concept of open support.

The goal of Andamooka (a web-based reader support system, is to keep a book current and correct through the use of coarse-grained community annotation of the on-line text. Annotation is public and is itself open content, and so can be redistributed along with the original text in, ideally, more accurate and up-to-date annotated versions of the text.

Open Content

Open-content, using the term generally, is any content (typically textual, but not necessarily excluding sound, images and other types of “content” you might wish to consider) that can be freely modified and redistributed. If this reminds you of open-source software, it is, because that was its inspiration.

Reasons for attempting to apply the open-source software development model to open content are described in “Open Source Content Development” by David Wiley (, “Why You Should Use the GNU FDL” by Eric Raymond ( and “Do Open-Source Books Work?” by Benjamin Crowell (, but allow me to try to summarize. First of all, the open-source software development model:

  • Puts software in the hands of, more or less, whoever wants it because the software is free.

  • Creates more niche software because open-source software may be freely modified.

  • Produces more robust software because the software gets tested by many different users in many different situations.

  • Produces software with features that are in demand because lots of feedback is received from users and, often enough, users contribute by doing some development.

These four items can potentially translate well into open-content development.

Writers can reach more readers by giving their work away—and, indeed, writers want to be read. In the special case where the content is documentation for open-source software, it becomes imperative that the software documentation allow itself to be modified and redistributed so that new documentation can be derived from old documentation when new software is derived from old software.

We can consider content to be robust if it is accurate and comprehensible. The levels of accuracy and comprehensibility of content increase when reader feedback is incorporated into new versions. In other words, an open-content development model presents the image of many readers-as-editors, each focusing on the aspects of the work that interests them.

Finally, if there are many readers of a work, there will be lots of feedback that points out what is missing. This gives the author (or authors) the information they need to plan new versions of the work. If readers are welcome to participate in the authoring, they might write and submit corrected or new portions of the work, thus distributing the workload and potentially creating something better than one person (or a small group of people) could have.

Open content licenses include the Open Publication License (, the GNU Free Documentation License ( and the Linux Documentation Project boilerplate ( Each of these allows the work to which it is applied to be modified and redistributed. The first of these has provisions for placing restrictions on the distribution of the work in printed format. Such a restriction could help a publishing company recoup the cost of creating the book (a process that involves many person-hours of labor and, of course, a lot of paper). I personally recommend that if companies choose to include this restriction when a book is initially published that they later remove it, for example, after development and other costs are recouped or after a predetermined period of time has elapsed. Allowing the creation of paper versions of a work (i.e., excluding the optional restriction) might help it to reach people in markets where it would not normally be distributed.


Free Dummies Books
Continuous Engineering


  • What continuous engineering is
  • How to continuously improve complex product designs
  • How to anticipate and respond to markets and clients
  • How to get the most out of your engineering resources

Get your free book now

Sponsored by IBM

Free Dummies Books
Service Virtualization

Learn to:

  • Define service virtualization
  • Select the most beneficial services to virtualize
  • Improve your traditional approach to testing
  • Deliver higher-quality software faster

Get your free book now

Sponsored by IBM