|
Last week I got the newest book in my signature series: xUnit Test
Patterns by Gerard Meszaros. I've been working with Gerard with it
on and off for a couple of years, so I'm fairly familiar with its
contents, but somehow seeing the physical copy gave me quite a
shock. Somehow it hadn't dawned on me how big the book was - 883
pages, easily the biggest book in my series. On the whole I'm not keen on big books, I was very proud of
keeping UML Distilled so small. A book this big scares me, how will
I ever get time to read it? But xUnit Test Patters isn't as scary as it looks, because it's
actually two books in one set of covers. In this it follows a style
I also used in P of
EAA. The first book is a narrative book, designed to be read
"cover to cover". The narrative book is something small enough to be
digestible, in xUnit Test Patterns it's 181 pages, 106 in P of
EAA. The second book is reference material, which is designed not be
be read cover to cover (although some people do) but instead to be
dipped into when needed. The idea is that you read the narrative
book to get a good understanding of the field, then put it on your
shelf so it's handy to grab when you need to delve into the
reference section. I read a lot of history books and I've often wished that the
author had written a duplex book. History books often need detail to
expand upon a particular topic or to describe the evidence for a
point of view. The result, however can be a long book. One example
is a favorite book of mine: Guns, Germs and Steel. I'm really glad I
read it, and I do recommend it. But it did feel long, and I wonder
how it would have worked in duplex. How to Read a Book suggests that
when you read a book for the first time you should deliberately
skip-read it, unhesitatingly skipping over detail sections. I read
very fast, which helps me, but although fast or skip reading is a
plus, I'd rather the book was designed to help. My personal rule of
thumb is that 200 pages is the limit for a narrative cover-to-cover
technical book. If it goes over that you need some way to allow people to get
the core information with less bulk. A duplex book isn't the only way
to it, such as selected bolded paragraphs in the Timeless Way of Building, which worked pretty
well for me. I'm sure there are other techniques that I haven't run
into yet, but the duplex is currently top of my list. A duplex book is really a specific case of a more general
principle to organize a book in gradually increasing sections. The
Pick Axe is a good example of this. The
first two chapters are a quick overview of ruby in 24 pages. Then you
have 280 pages of tutorial, followed by 500 odd pages of reference
material. The first few chapters of the Enterprise Integration
Patterns book is an overview (95 pages) with rest (~550 pages)
reference. Books like this often don't make these successive layers of
revelation as clear as they might, however. An interesting question is whether we can do more with the duplex
book format. A lot people won't realize that xUnit Test Patterns is
a duplex book because it looks like one thick book (the back cover
actually claims it's three books by considering the reference section
as two separate sections). Could we physically split the books,
perhaps by packaging them as two volumes in a slip case? I don't
think actually selling the books separately would make sense as they
are too closely coupled together. Naturally we think about online access. Reference material often
works better on the web, so perhaps we could make the reference book
web only (maybe with a CD or something in the physical book) and
sell only the narrative book. What would that structure do to sales? There's interesting questions here, but the final message is that
I'd urge authors of big books to think more about how the book is
structured in a way that helps someone who wants something within
that 200 page limit.
|