Monday, October 19, 2009





When we started the Bookshelf, we wanted our authors to share in the success of their books, so we set our royalty rates to between 40% and 50%. That is, an author will receive between 40% and 50% of whatever gross profit we make on a book. We felt back then, and we still feel, that this is the highest overall royalty offered by any technical publisher (most publishers offer something in the 10–18% range).


But it isn’t always easy to compare different publishers, because the definitions of gross profit (or whatever they use) differ wildly. Our definition is that we take whatever money we receive from the sale of a book (in whatever form), deduct the direct cost of production (which is zero for eBooks, and a couple of dollars for paper books), and then split what’s left according to the royalty rate. We also account for our costs of copy edit, indexing, and typesetting by splitting them (again according to the royalty rate) between the author and us. So if a book costs $5,000 to copy edit, index, and typeset, and we’re paying 50% royalties, then the author’s royalty account starts with a $2,500 negative balance.


We don’t pay advances, but we do pay royalties quarterly. If a book enters our beta program, the author starts receiving the royalties at the end of the quarter.


In the last few years, we’re had a number of prospective authors tell us that other publishers woo them by saying that our 40–50% royalties are somehow illusory—that by the time the author gets a payment the figures have somehow been shaved down to the point where we pay the same as everyone else. And that’s just FUD.


So, in order to help people compare, attached is a chart. It shows the royalties we’ve paid so far on our titles that have been in print for at least a year. Eight percent of the titles have earned less than $10k. Several of these are vanity titles we produced on behalf of private companies, the others are books that sold into very specific, narrow niches (because we felt someone should do it, and even at these low volumes we can do so profitably).  Ninety-two percent of our titles paid more than $10k in royalties, and forty-two percent paid more than $50k. Twelve percent earned into six figures.


I’d welcome publishers who talk down our royalty payment schedules to publish their figures. I know many will have some titles that earn a lot more than $400k. But I’d be most interested in the distribution—how much does a typical author make? I’m proud of the fact that we’ve set up an environment where authors of good books can earn back at least a reasonable portion of the investment they made in writing.

Thursday, June 11, 2009



Here’s another piece of music I wrote. This one I started over a year ago, but then put down for a while. I think it really wants to be a lot longer piece—maybe one day.

Monday, May 11, 2009



In my ongoing attempt to keep myself honest, here’s another piece I wrote, again played by Mike Springer. I’m not sure how to categorize this one—I wanted to play around with 7/8, and ended up with what I think are some interesting patterns. 

Sunday, May 3, 2009





I’ve known Chad Fowler for almost ten years. He’s a seriously good guy: musician, developer, leader, and friend. So when he came to me some years ago with an idea for a book, I jumped at it. I was hoping for something good, but what we got was something truly great.


Andy and I wrote The Pragmatic Programmer over 10 years ago. It was a book full of advice on the job of programming, from low-level coding to teams and projects.


Well, Chad had written the companion book. Where our book looked outward at the job you were doing, The Passionate Programmer looked inward at the person doing the work. It’s a book about finding fulfillment in what you do. It’s a book about rekindling the fires that you felt when you first entered the profession. It’s a book about creating a career, rather than turning up for a job.


I was blown away.


And then I did something really stupid. The book came out about 5 years ago, and outsourcing was big on everyone’s mind. So I thought “let’s make a jokey title that’ll grab people’s attention.” I called the book My Job Went to India (And All I Got Was This Lousy book).  I’ve already blogged about how stupid that was—it was probably the single dumbest thing I’ve done since I got into publishing. The title put people off; it gave them the wrong idea. The book was really nothing to do with outsourcing, but you wouldn’t know it from the cover. This book deserved so much better


So, four years later, we revisited the book. Chad’s given it a spring cleaning, revising and updating it. And we gave it a new title and a new cover, both of which do a better job of conveying the energy and enthusiasm that lie within.


I’m not into selling: my philosophy with our books is “if they’re good, people will buy them.” But this book is different. I really think it can make a difference. So I’d love for you to read the extracts and maybe take this book home with you. I honestly think you’ll thank me (and, most importantly, Chad) if you do.

Wednesday, April 8, 2009

Twitter Should Move Away from Ruby

Oh dear. The chattering classes are at it, talking about how the Twitter folks are dissing Ruby by announcing the replacement of some Ruby code with Scala code.


Please stop.

At the kinds of volumes that Twitter handles (and with what I assume is a somewhat scary growth curve), Twitter needs  to improve concurrency—it needs an environment/language with low memory overhead, incredible performance, and super-efficient threading. I don’t know if Scala fits that particular bill, but I know that current Ruby implementations don’t. It isn’t what Ruby’s intended to be. So the move away is just sound thinking. (I suspect it also took some courage.) I applaud Alex and the team for this.


Instead of defending Ruby when it’s clearly not an appropriate solution, let’s think about things the other way around.


The good folks at Twitter started off with Ruby because they wanted to get something running quickly, and they wanted to experiment. And Ruby gave them that. And, what’s more, Ruby saw them through at least two rounds of phenomenal  growth. Could they have done it in another language? Sure. But I suspect Ruby, despite the occasional headache, helped them get where they are now. 


And now they’ve reached the status of world-wide wunderkind, it’s time to move on. 


I for one wish them luck. I look forward to the day when our online store reaches the kind of size where we have to move away from Rails. I’ll tweet the fact with a tear in my eye, while my yacht sails me off to the sunset.