Brian Gough is one of the core developers of the GNU Scientific Library, which he has been contributing to for many years. He runs Network Theory Ltd., which publishes Freely licensed printed manuals and tutorials for Free Software projects, such as GCC, Perl, Python and PostgreSQL. He lives in Guildford in the United Kingdom, and regularly attends Free Software conferences and meetings.
Chris Woolfrey: Tell me how Network Theory got started.
Brian Gough: It’s been going since 2003, about 7 or 8 years. It all started when I was working on the GNU Scientific Library: I’d written the manual and couldn’t find a publisher that would want to publish it under a Free documentation license. And as I’d previously been in a job that was related to digital libraries and scientific journals, I knew a bit about the publishing industry, and decided to publish it myself. It was basically just to make the book available to people: I didn’t think of it as a business at the time. But once I’d done one manual, I saw that there were other great Free Software manuals out there that weren’t available as printed books. And for those of us who like printed books over reading on a screen, it would be a good service to publish other books as well. So I set up the company to publish manuals for Free Software that are published under Free documentation licenses.
CW: Why the struggle with finding a publisher for these books? Free licensing is an established trend in the software world, yet this practice hasn’t been adopted by many publishing firms.
BG: Just as with software, it’s more profitable to publish under a proprietary license than a Free license, generally. I didn’t even try going to traditional publishers because you could just tell that they weren’t interested in publishing free manuals at that time. It was a new thing.
CW: So you decided to do things for yourself. How have things developed?
BG: Well, the idea of the business was to be able to put the money back into Free Software; so to give a donation, typically of $1 for each book that’s sold. And we’ve currently donated over $24,000 to different projects from sales of the books. We’ve published over 25 titles so far. All the books are produced entirely using Free Software, as far as possible. So internally everything is done with Free Software: the graphics, the typesetting, all the editing is done with Free Software, using Emacs, Ghostscript, and so on. And we submit the proofreading corrections that we find back as patches to the original project.
CW: How important is it that what you publish is Freely licensed? Is it integral?
“Without documentation being kept up to date under a free licence, people lose the ability to understand how software works”
BG: Absolutely. There’s an original essay by Richard Stallman on the subject called ‘Free Software Needs Free documentation‘ and the basic idea is a very simple one, which is that if you can modify the software – as you can with Free Software – then you should be able to modify the documentation as well. And if you can’t do that, then really your freedom to modify the software is limited because the documentation, if it’s under a non-Free license, can’t be kept up to date. So over time, without current documentation being kept up to date by everyone under a free licence, the ability of people to understand how the software works and how to use it is impacted. Documentation needs to be free so it can evolve with the software.
CW: Network Theory has published an impressive number of titles; how many people are working on these?
BG: There are two of us who are actively working on all the projects, and I have a few other people who help out on a freelance basis. We’ve got a lot more books coming out in the pipeline. The “Perl Language Reference manual (v5.12.1)” is 700 pages and is the most up to date Perl manual that’s out there right now. And we’ve got the W3C standards for XML. The other ones we’ve got coming out are the latest PostgreSQL manuals for PostgreSQL 9 in four volumes, and the latest Apache Reference manual (version 2.2.16).
The one which is my favourite is the Emacs Org-Mode Reference Manual: a GTD Emacs mode for time management. It lets you organise your tasks, your notes, your appointments, in Emacs – basically to organise your whole life according to the ‘Getting Things Done‘ philosophy. And honestly, it’s the greatest Emacs mode in 20 years. We use it in the company and it just works so well in a Free Software environment. Everything is plain text, so you can put it under version control, you can check out the latest task file, edit it, go offline and work while you’re travelling, update tasks and open new tasks, and then commit back to the repository so other people can pick them up. It really works well with the Free Software approach to doing things, of keeping things in plain text and not being tied into proprietary web-service task tracking systems. I love Org-Mode, so I’m really happy to be publishing the manual for it!
CW: Would you say Org-Mode is one of the more exciting projects in the Free Software world at the moment?
“Something that’s adapted exactly to your needs can be so much more powerful…that’s one of the advantages of Free Software”
BG: Definitely. Maybe it’s even the most exciting! Certainly it’s transformed the way that I organise my work, and I think it has for a lot of other people as well, so it’s software that can revolutionise your life, not just perform a function. One of the great things about Free Software is that you can do things differently. So many of the paradigms of proprietary software are really inefficient, and although Free Software maybe doesn’t always look as nice, doesn’t maybe have the fancy graphics, or whatever, in terms of actually getting things done, if you’ve got something that’s adapted exactly to your needs then you can be so much more powerful and efficient. It can give you a real advantage in whatever your doing. That’s certainly something that’s really valuable to businesses, if they can adapt software specifically to their needs, and other businesses using proprietary software are stuck in a particular way of working that doesn’t suit them. And I think that’s really one of the advantages of Free Software: that you can adapt it.
CW: Many people seem to share the strange perception that computers are something that you don’t need to know about, and even shouldn’t know about; that you shouldn’t mess with them.
BG: Well, I always start from the assumption that the computer should do what I want, and that’s why I use Free Software. I think that’s how people should approach it: they shouldn’t just accept what’s given to them, because computers are such powerful tools that you really want them to be working exactly the way that suits you, not that suits somebody else.
CW: You use the word ‘tools’. Some people seem not to see that computers are tools. People who are only familiar with proprietary software often don’t realise that computers can be used in this way, or that they may be modified to suit a particular task . What are your thoughts on how to educate people about the wider possibilities of computing and Free Software?
BG: I don’t have any big insights into advocacy, but I would say that people shouldn’t passively accept what they’re offered by corporations. They should always seek out something better and with computers that means Free Software, if you want something better, meaning that you want it to do what you want, not what somebody else has designed it to do.
The word ‘tool’ can be misleading because we think of it as something that just does a single job, whereas the computer, a general purpose computer like a PC, is just completely different to anything that has existed before in history because it is completely reconfigurable in the way that it processes information, so that although it is a tool in a sense, it is a tool which is infinitely modifiable and like nothing else we’ve seen. So we shouldn’t just accept the very limited types of software we get from proprietary software companies: we should really have a much bigger vision of what computers do, and I think that’s what Free Software offers. So maybe that’s a way of explaining to people what Free Software is about: it’s a much bigger vision of what computers can do than just being provided with a product.
Network Theory Ltd. is looking for new books to publish. If you would like to see your Free documentation in print, get in touch with Brian at bjg@network-theory.co.uk.