SYWTWAB 1: So You Want to Write a Book?

code better • have fun

This is the first of a series of personal notes to people who may be thinking of writing (or who have embarked upon writing) a book. You’ll be able to find them all (eventually) by selecting the tag  Writing A Book.

I don’t pretend to know too much about writing in general, but I have learned what works for me, and what seems to work for most Pragmatic Bookshelf authors. Don’t take this series as a set of rules—at best treat it as something to think about if you’re considering launching into a book. And I’m sure Andy and our editors will have different (and better) perspectives.

Let’s start at the beginning. With the motivation.

Now that I’m a book publisher (albeit an accidental one), I quite often get folks coming to me saying “I want to write a book.” I typically answer with a single question:


It might appear to be one of those annoying flip responses, but it honestly isn’t. The answer to the question “why?” is the best indicator I know for whether the author will actually end up with a finished book.

Some people treat writing a book as some kind of rite of passage. They say “I’ve always felt I have a book in me, and now’s the time to get it out.” This is the book-as-romantic-journey ideal. These people are unlikely to finish—the bloom will have left the rose well before the third rewrite of chapter six.

Some people answer that they want to write a book to help them with their consulting or training businesses. This answer is almost 180º wrong. Books are not collateral for your business. You are the collateral—people come to the business because of you. If you don’t have the experience that people want, writing a book won’t fix that. The book will follow your reputation, not make it.

Some people have some new framework or library that they want to document in a book. They feel that having printed documentation will add credibility to their project. But that’s not really what books are for. Books certainly can be useful adjuncts to a project, but they really suck as API documentation—by the time the book is in your local bookstore the chances are the project will have moved on and your 1,500 method API listing will be out of date.

So what’s a good answer? I personally look for three things.

Passion. First and foremost, an author needs to be passionate about the subject. They’ll love it, warts and all. They’ll live it—it will take up their free time. They’ll be wired into the community—they’ll be known by the readers of mailing lists. They may well have a blog where they talk about their interest.

Evangelism. Just being passionate is not enough. Good authors also have a mission: they want the rest of the world to share their joy. They want to spread the knowledge to as many as people as possible, using as many channels as possible. It’s not that they want to tell people what to think or what technology to use. No, they have this zeal because their subject makes them happy, and they want to share this joy with others. They honesty feel the world will be a better place once their book is written.

Practical knowledge. Good books are not written from an ivory tower. You can’t just read the existing FAQs and online documentation, then write a world-class book about some topic. You have to have used it, and used it a lot. You need to know the good and the bad; the areas where it helps, and the areas to avoid. Why? Because that’s your value to your readers. Remember, your passion is to help people do something better. Unless you have practical experience, you’re unlikely to be able to do that—readers will soon realize that you aren’t authoritative.

OK, so I’ve spilled the beans. Does this now mean that the Pragmatic Bookshelf will get inundated with proposals written to push my hot buttons? I hope not, because prospective authors who do that are really just fooling themselves. They may get a book accepted, but our experience over the last 4 years is that they probably won’t finish their book project.

But, if you have the passion, and you feel driven to share your experience with others, there’s little more satisfying than seeing a your ideas on the shelves of your favorite bookstore.

In the next two posts, we’ll look at the Hero’s Journey, the basis of most good technical books.