Brian Gough’s Notes

Archive for the ‘book’ Category

Apache reference manual

Monday, January 31st, 2011

This is the latest printed free software manual I’ve been working on – The Apache Reference Manual (for Apache version 2.2.17) (ISBN 9781906966034, RRP £19.95). It’s the biggest single volume I’ve published – over 850 pages. I’m donating $1 to the Apache Software Foundation for each copy sold.


PostgreSQL 9 manuals

Thursday, December 16th, 2010

I’ve just published the PostgreSQL 9 Reference Manual (in 4 volumes) through my company Network Theory Ltd.

It’s over 1,600 pages, so proofreading it was quite a task! One of the side-benefits of publishing free software manuals is that I do get to know all the features of the software.

The main new PostgreSQL feature that I’ll be using is full text indexing, for a Django site I’m working on. I was previously running PostgreSQL 8.2 on my server and updated it to PostgreSQL 9 yesterday to get support for this. Thanks to the new pg_upgrade migration tool in PostgreSQL 9 that should also the last time I’ll need to do the full pg_dump/pg_restore upgrade (always a bit of a hassle on a large database).

Incidentally, for every volume of the manual sold I’m donating $1 to the PostgreSQL project. I was able to give over $2,000 from the sales of the previous edition for PostgreSQL version 8.

A nice perl feature

Wednesday, October 13th, 2010

Recently I have been proofreading the Perl 5.12.1 documentation (for a printed edition, Volume 1 (Language Reference) is just published).

I picked up a few new tricks. The one I am using the most is the new “//” operator. ($a // $b is equivalent to defined($a) ? $a : $b.) Now it’s possible to assign a default value to a variable if it’s undefined with just $foo //= $default, keeping the original value if it already exists.

This is handy because in Perl zero evaluates to false and it used to be common to find code like $foo ||= 1, to set foo to a default value of 1. This looks like it does the right thing but overwrites the existing value when $foo has a value of 0.

Ted Nelson: “Geeks Bearing Gifts – How the Computer World Got This Way”

Friday, February 26th, 2010

Ted Nelson, inventor of the terms “hypertext” and “hypermedia”, has long had a radical view of computing and freedom for computer users. His 1974 book “Computer Lib” was an early manifesto for personal computing and computer literacy — before personal computers existed (the Apple I, the first assembled computer which displayed on a TV screen, didn’t arrive until 1976).

His latest book is “Geeks Bearing Gifts – How the Computer World Got This Way” (ISBN 978-0-578-00438-9, £12.51), a personal history of computing and the forces that have influenced its development. The book covers a vast terrain from the ancient world through the first digital computers, ARPANET, NLS, Xerox PARC, microcomputers, Apple, Microsoft, free software, GNU and Linux, and the Web up to the present day. The style and content are quirky but it’s full of thought-provoking ideas and well worth reading. As always, Ted Nelson has a unique perspective.

“We are imprisoned in applications that can be customised only in ways the designers allow… We are in a dark age of documents, most locked in imprisoning formats… This is a blighted parody of the computer dreas we had long ago.  But let us try to be optimistic. Who knows what yet may be possible? All the ideas have not not yet been tried.” — T.Nelson, “Geeks Bearing Gifts”

Two Bits – The Cultural Significance of Free Software

Wednesday, August 27th, 2008

I have recently finished reading the book "Two Bits – The Cultural Significance of Free Software" by Christopher M. Kelty, Associate Professor of Anthropology at Rice University.

In summary, the book examines the development of the free software movement from an anthropological point of view (it is based on research work done as part of the authors PhD thesis).

The author identifies some interesting parallels between different endeavours involving freedom and the creation of information infrastructure, such as the development of internet protocols and free textbooks.
The website for the book is

It is published under the CC BY-NC-SA license.