home about me text processing with ruby

Publishing tech books with LeanPub

28 December 2013

I’ve seen more and more tech books lately — within the Ruby community, at least — published on LeanPub. Digging into the platform I became more and more intrigued; eventually, after giving it a whirl myself, I became convinced it was a truly great idea with the potential to alter the way books are published.

The LeanPub philosophy

At the heart of LeanPub as a platform is its publishing philosophy. Taking inspiration from The Cathedral and the Bazaar’s approach to software — “release early, release often, and listen to your customers” — it rejects the basic proposition of publishing: that you need to have finished a book before you can sell it. After all, if you’re not actually printing anything — LeanPub sells only DRM-free ebooks — there’s nothing to stop you creating as many revisions of your book as you like.

The inspiration from agile software development is obvious. Even before you’ve put virtual pen to virtual paper, you can create a landing page for your book and gather information from potential readers, something that actively discourages a black box writing process where you work in isolation and produce a complete work before telling anyone about it.

You’re also encouraged to produce a “minimum viable product” and publish it as soon as you’re comfortable. Readers who buy your book receive free updates for the lifetime of the book, so there’s no penalty for them if they buy early; in fact, there’s an active incentive to do so, since they can give feedback and shape the direction of the rest of the book.


LeanPub’s approach to royalties is also reasonable: they pay authors 90% of the sale price, minus 50 cents. For all but the cheapest books, this generally works out as a significantly better deal than other book stores (like Apple’s iBooks store, which pays authors only 70%).

The tech

Regardless of platform and ideology, a publishing platform with a lousy workflow is a non-starter.

LeanPub offers two interfaces to writing books. The first is web-based and, although it’s simplistic, it’s fairly limited; while it’s obviously aimed at giving non-techies a way to start writing quickly, or at someone copying-and-pasting a pre-existing book, I can’t imagine that writing an entire book in it would be a particularly pleasurable experience.

Luckily, the next step up is a significant improvement: Dropbox syncing. Your book’s files, in a simple and logical folder structure, are created in a shared Dropbox folder. Accept LeanPub’s Dropbox invitation, and that’s that; you can work on your book’s content with your favourite editor — and importantly for me, check it into version control — and all changes are automatically synced up to LeanPub. Publishing a new version of your book is a near-instant process, since LeanPub always has an up-to-date copy of your files.

The files themselves are Markdown — specifically, the Kramdown library’s extended syntax — which makes formatting a breeze. You can syntax highlight code samples, structure your book into parts, chapters, and sections, cross-reference other sections, and deal with text formatting without needing to learn any specialised markup — and certainly without having to dip into XML or HTML files like some other ebook workflows. Importantly, your book’s raw manuscript remains readable rather than a mess of formatting instructions, making copyediting straightforward.

In all, I’ve been hugely impressed with LeanPub. The concept is magnificent and the execution is polished; with it, I’ve been able to transform a rough concept for a book into an almost complete product, iterating on reader feedback as I’ve worked. Most importantly, getting something out there early has removed any possibility of procrastination; there is, after all, nothing like actually selling copies of a book to spur you on to finishing it!