Lean Book Publication

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.

10 Responses to “Lean Book Publication”

  1. 1Aaron Digulla

    Where is that trac site? :-)

  2. The trac site isn’t public, only those who get an address and password from me or Keven can access it.

    We aren’t too stingy with the passwords, but we do need to keep the group size under control, and want to know that the people who get access aren’t fake. ;)

    If you want access, send me an e-mail and let me know a bit about yourself, and I’ll see what I can do.

    E-mail me at mark at compoundthinking dot-com.

  3. 3michele

    Hey very cool, I’m sure the TG book will be great.

    Keep up the great work, I really think using trac is a brilliant idea.


  4. 4Bob

    You know, I’m a little suspicious about Dave Thomas being the innovator he claims to be, particularly when it comes to making PDF versions of books available or offering PDF-only offerings. In the blog entry that Mark linked to, Dave Thomas explicitly says other publishers are “aping” and them and “ripping them off”.

    So let’s think about history a bit.

    A number of years ago I was able to buy a PDF version of a book from Manning Publications (manning.com).

    And for a number of years, Take Control Ebooks (takecontrolbooks.com) have been offering PDF-only publications.

    So who is aping whom? Who is ripping off whom? Can anyone enlighten us as to the exact chronological order of these events?

    And Mark, are you and Kevin “ripping off” the Pragmatic Bookshelf?

    I’m starting to think Dave Thomas is a blowhard.

  5. 5Bob

    Oops, a correction since I used quote marks. The last sentence of the first paragraph should read: ‘In the blog entry that Mark linked to, Dave Thomas explicitly says other publishers are “aping” the Pragmatic Programmers and “ripping us off”.’

    And my later reference to “Pragmatic Bookshelf” should probably be changed to “Pragmatic Programmers”.

  6. Bob,

    Yea, I agree the “ripping them off” thing isn’t the best way to talk about what is happening. But Dave has a point too, other publishers are looking at the success the rails book and hoping that they can do the same thing too.

    As far as I’m concerned the main “innovation” from the pragmatic folks is to use traditional version control methodologies on all the text in all their books. Lots of people have done this for one book or another, but as far as I know nobody has done it with EVERY book before.

    And the move from some to all seems more like an incremental improvement than a revolution.

    The beta book thing seems a little odd to claim as an innovation since people like Bruce Eckel have been doing pre-release PDFs of books for a long time, and others have been selling PDF’s.
    Even with all that said, I can still totally understand Dave’s perspective. Imagine the excitement of a new venture you’ve invested a large chunk of your life in taking off, and then watching your good ideas being taken up by the bigger players who originally predicted that you’d fail because of them.  It can absolutely take a toll on you. — even if those core ideas weren’t breathtakingly revolutionary.   Given all that, I think his post overall wasn’t over the top, so I’m not too interested in finding fault with a couple of mis-placed phrases.
    That said, I’d also like to address your direct question: “are we ripping off the Pragmatic Programmers?”

    No, we are not. I know that’s what you were saying and I know the question was rhetorical, but I just want everyone to be clear about this.
    We are just doing the “right thing,” as we see it and I started down this path before I knew how the Pragmatic Bookshelf was run.

    But, I do owe Dave and Andy a good bit of credit for helping me get into the habit of using Version Control for all of my text documents everywhere (something they suggest it in the Pragmatic Programmer).


  7. A while ago, I saw an author work on his book. He used Word(tm).

    He had images and tables and everything but not as I expected them.

    Instead of a real image, he had “*** insert figure1.png” in a single paragraph with a special style. The font was Courier.

    Basically, he was using Word as Notepad.

    He explained to me that his publisher requests this: They have an elaborate VB macro which takes the text apart and creates the real book.

    That made me wonder why they used Word at all. Jedit would have been sufficient plus they would have been able to use some kind of version control.

    He told me that his publisher didn’t want to change the process just for one book.

    Go figure.

    I’m writing all my books in Jedit and Subversion (or CVS if I have to). For the processing step, I’ve written a bit of Java code which spits out HTML, XML or TeX. I can edit my texts on my Palm, I have all of my books with me all the time (if an inspiration strikes me :-) and I’ve never lost more than a few characters (not even a whole sentence) since I started writing.

  8. 8Keith

    I think you’re defining “Camera Ready” in a different way than I would for professional, technical titles.

    Specifically, the ability of PragProg’s automated build tools to produce ‘the “Camera Ready” version of every book … after every author change’ doesn’t seem to be very high. I remember reading that Dave had to generate the book 10+ times just to get the page breaking to settle down. That said, he missed some huge ones:
    pages 238 and 272 of Agile Web Development With Rails

    They both have _really_ horrible page breaks. 238 has almost a half page of blank space before a B-head. Perhaps other people don’t care, but when I pay $40+ for a book (with the early access), I expect someone to have at least made it look OK.

  9. Kieth,

    I agree, the “camera ready” autogeneration that they have going on isn’t perfect. And I certainly hope we can do better.

    It seems to me that it is also perfectly reasonable to think that we won’t be able to get it exactly right, even if we get it better. So I expecting that we may have to go through the whole thing once at the end and manually reflow some things.

    That said, I think the tools we are using are doing a good job, so we are likely to get better autogenerated output too.


  10. 10Peter Masiar

    For self-publishing books without any publisher – I just found lulu.com. Never tried it myself. They claim they will print books as requested.

Comments are currently closed.