Thursday, January 10, 2013

Rails/OOP Book Sales Numbers, And Why My Hourly Rate Is A Vector

In late November, just before Thanksgiving, I wrote a 97-page ebook. It's a critique of Ruby on Rails from the perspective of OOP, but it's also the opposite.

I wrote the book in a week -- in fact, if you don't count days of pure resting, then I wrote it in five days. It has a decent web site but it launched with nothing but a blog post. I deliberately under-promoted it, and my writing workflow was so absurdly oversimplified it makes Lifehacker look like NASA. You can only pay with PayPal, which means a lot of people might not have been able to buy it. I haven't made the Kindle version available yet; it's PDF only right now.

The book's made $11,009.30 so far. I sold 309 copies.

Yesterday I downloaded some sales history from PayPal, and tonight I plugged my sales numbers into a quick Ruby script to produce a bar chart of daily sales.

Here's what it looks like from a distance:



Check out the gist to zoom in and see the chart in detail. I think the two biggest spikes came from appearances in Peter Cooper's Ruby Weekly e-mail newsletters, and I think the spike on Dec 31 came from a tweet by Michael Feathers, despite the fact that he didn't even mention my book:



This is all just conjecture; I never even set up Google Analytics for this product. If you know anything about selling information products online at all, you'll also notice there's no email signup form. I approached this project with minimal marketing, but it's still very profitable.

If you assume I worked 8 hours on each of the five days when I was writing my book, then I made a little more than $275 per hour during that time ($11009.3/40=$275.23). Eight hours is a safe approximation, although I don't actually know the real schedule.

However, the best thing about selling information products is the retroactively expanding hourly rate. Nobody paid me to do the actual work, so initially, my hourly rate was zero. If we assume I worked forty hours on the book, then when I sold my first copy, my hourly rate was about 93 cents per hour ($37 / 40 hours = 0.925). Every sale bumped up my hourly rate by around 93 cents. So if I sell 100 more copies, the hourly rate (for the time that I already invested) will go up by $92.50. So it's probably $275 now, it'll be $300 soon, and so on, and so forth.

But I don't think of myself as having a numeric hourly rate. Since my hourly rate is increasing over time, it makes more sense to model it as a vector. It has a position (somewhere around $275) and it has a direction (up).

Being a programmer, this is how I understand the business of making and selling information products. You decouple income from time, and you convert your hourly rate from a number to a vector.

This is kind of like a physics problem, though, with their hypothetical frictionless universes. In reality, I also spent seven years working enough with Rails to form detailed opinions about it. And of course I spent time marketing the book, but not much. My primary marketing tactic was to give the book away for free. If I quoted you in the book, or I talked about a presentation you made, you can have the book for free. (And most of you already do.)

Promoting your book by giving away free copies is awesome. I recommend it. In 2010, I made a bunch of information products -- mostly videos -- and I did a bunch of dramatic launches. I had countdowns. I made products available only for limited time periods. I did loads of silly things like that.

All these things work to some extent, and I'm not denouncing them, but this time, I wrote one guest post and I gave the book away to people who I knew would be interested. I believe this strategy makes me more money. It's definitely more fun and less hassle.

I'll probably upgrade my systems, so I can sell without PayPal, worldwide, with email marketing and affiliate programs, but I'm more interested in writing another book.

(And, obviously, giving it away for free.)