Over on his blog, Dave Thomas talks about how other book publishers are imitating some of the changes that the Pragmatic Bookshelf has made. He points out that many of their competitors are adopting the surface changes they have instituted like “beta books” and PDF only books, while ignoring the deeper philosophical underpinnings that made those changes necessary and obvious.
He goes on to point out that this is much the same as the way American automotive manufacturers tried (and failed) to copy the success of Toyota by implementing “Lean Manufacturing”. They copied the things Toyota was doing, without understanding why Toyota was doing those things.
Behind all of the changes at The Pragmatic Bookshelf is a vision of eliminating waste, and making it easier to make changes to a book through the entire process. They moved a huge step forward just by having their entire book line under version control. Then they added an automated build system, which eliminates a lot of the time consuming — and error prone — process of manually doing the layout for every page.
These two simple things mean that the “Camera Ready” version of every book is regenerated after every author change. And the entire history of every author, proofreader, or editorial change is recorded in their version control system.
This makes it easy to accept updates to chapters, right up to the very last second.
Not only that, it also reduces the complexity of working together, and helps authors, editors, and proofreaders to do their job better. So, in one fell swoop they have eliminated significant waste, integrated production knowledge into the design process, and reduced their overall product development time significantly.
We are doing much the same thing with the TurboGears book.
Fortunately, I can say with total confidence that we are not just doing this to imitate the success of Pragmatic Bookshelf, we’re doing it because it makes our lives easier, because we want to design the best book we can — with the best methods and tools we have available to us — and because we are focused on eliminating wasted steps in the process.
We’ve got the text of the book in a subversion repository, along with screen-grabs, code, and all the other pieces necessary to build the whole book. And as soon as we get the templates from the publisher, I plan to build XML styles along with a simple script (written in Python of course!) so that we can auto-build the book with In-Design whenever we make changes.
While, I think the Pragmatic Bookshelf idea of a “beta book” is progress, it’s not good enough.
Those of us doing Agile software development have reduced the need for “beta” testing by delivering product incrementally. So, with that in mind, we are interested in moving the state of the art forward by adding incremental delivery to the book writing process. We have a Trac site where any number of volunteer reviewers can look at every revision of the book in real-time as it is produced and provide us with immediate feedback
And we have online and in-person classes where we are going to deliver the book incrementally to real users (people who want to learn TurboGears) and watch how they assimilate the information in the book. We’ll use the experience and knowledge we gain from these incremental releases to refine the book as we go.
Hopefully this makes a better book. But what I know right now from the trenches is that it sure makes the process a whole lot easier, and more fun.