Comments on John Resig’s “Programming Book Profits” (and on Self-Publishing)

John Resig is the talented creator of the jQuery JavaScript Library and the author of the excellent book Pro JavaScript Technique. In January of 2008, he wrote a blog post entitled Programming Book Profits where he lists several things he wish he knew when starting out writing a programming book.

I wanted to repeat some of the things he said in that post with my own commentary, coming from the perspective of someone who has self-published technical books rather than going through a traditional publisher. I’ve used CreateSpace.com to publish all three of my books, and I haven’t had any problems with them. A special thanks to John for giving me permission to use his article here.

A summary of my points:

  • Publishers don’t do all that much to promote your book, and don’t offer an advantage over self-publishing here.
  • Writing interesting blog posts is a much more effective way to get publicity than buying advertising.
  • Christmas will effortlessly triple your sales, but have your book out there well before the holidays.
  • I use CreateSpace.com as my self-publisher, and haven’t had problems with them. The books only sell through Amazon, and directing readers from my book’s site to the Amazon page using the Amazon affiliate program gets a little extra cash per sale.

When you negotiate a contract with a publisher, and you receive an advance, that’s an advance of your future profits. I had no idea why I never realized this until after I received my first statement and saw -$3000 listed as my payout. It makes a lot of sense, in retrospect – but it was just a silly thing that never quite clicked with me.

Advances are usually pretty low (I think Apress’ typical one was $5000 for a first-time author). In talking with authors at other publishers you can usually expect something in that range – maybe slightly higher.

One thing about self-publishing is that there is absolutely no advance. 100% of the work needs to be done upfront before you see a dime. I wrote my books as a side project while I kept my day job. I don’t currently have any plans to drop my job to write full time.

No one buys eBooks. You’d have to be pretty… special… in order to not be able to find a free ebook of Pro JavaScript Techniques.

I’ve made my books freely downloadable under a Creative Commons license, which I credit entirely with the commercial success of the books. Had I simply made them available for purchase on Amazon, I don’t think anybody would have taken a chance with them. Piracy of the books by readers is not a concern for me, so much as piracy of other people selling my books (I’ve sent one copyright infringement notice to Amazon when someone posted the rough draft of “Hacking Secret Ciphers” for sale as an ebook.)

Ever wonder how an author tracks how many books they’re selling? Guess what, he doesn’t! It’s a massive mystery! When I chatted with my editor, on a number of occasions, most of the conversations just ended with him making a sad face and saying “just watch your Amazon numbers.” So that’s what you do – you watch your Amazon page like a hawk, trying to divine some special meaning from the crazy fluctuations in your sales rank.

CreateSpace has an advantage here, as I can see exactly how many of my books have sold. The website reports sales on the same day of the sale. And while the Amazon ranking is a good general indicator, but it’s easy to waste a lot of time constantly checking on your rank.

While CreateSpace gives a slightly better rate for sales through a custom eStore, I just use the Amazon links on my book’s website since it gives a more credible place to purchase the books from. I also signed up for Amazon’s Affiliate program to get some extra cash for directing the user there. I only use the eStore that CreateSpace provides for educator discount codes that I set.

A couple rules of thumb that Chris Mills (my editor) taught me for tracking your Amazon sales rank (for programming books, especially) is: If your rank is < 10,000, you're doing fantastic, < 20,000, you're doing very well, < 100,000, reasonable, anything else and you're effectively dead. Tracking my ranking over the past year it's been consistently in the 10-20,000 range, with occasional dips into the < 10,000 range. JavaScript: The Definitive Guide is always < 5,000 (for comparison).

Page 1 of 3 | Next page