Back on December 20th, I posted an article about Working with Unix Processes, an ebook by Jesse Storimer, a developer at Shopify. Naturally, he sold it using Shopify along with the digital delivery app FetchApp and priced the book at US$27, which includes lifetime updates.

Here's a quick description of what the book was about, in Jesse's own words:

Become a Unix guru without any C programming

You’re a modern master of Ruby. Want to impress your coworkers and write the fastest, most efficient, stable code you ever have? Don’t reinvent the wheel. Reuse decades of research into battle-tested, highly optimized, and proven techniques available on any Unix system.

This book will teach you what you need to know so that you can write your own servers, debug your entire stack when things go awry, and understand how things are working under the hood.

Jesse wrote in his blog entry that at first, if he managed to sell a single book, he'd consider it a success. He then changed his mind and moved the goalposts a little farther afield and decided that if he sold $1,000 worth in the first month -- about a book a day -- he'd say that he'd succeeded. 

Imagine his surprise when he sold $1,000 worth on the first day, and almost $18,000 by the time four months had passed.

There are a number of lessons that we can take away from Jesse's example. Here are mine.

Lesson 1: Put a stake in the ground.


Creative Commons photo by Official U.S. Navy Imagery.

This isn't Jesse's first shot at writing an ebook, but it's the first one that he completed. This time, he took an idea from Tim Ferriss' 4- Hour Work Week and set up a "fake" sales page for the ebook before he'd even written a single word. Doing this yielded a number of benefits:

  • It was a "sanity check" to see if there was even any kind of demand for his book idea.
  • The feedback that he got was motivating.
  • Creating the page and writing a description of the book probably helped crystallize his ideas of what should go into the book.
  • The act of announcing the book probably made it more "real". It's easy to decide to write a book and change your mind; declaring that you're writing one publicly can give you the push to need to follow through.

Lesson 2: Make a plan, and do it where you can focus.

Jesse planned out the book in the free moments of a wilderness retreat with his family, away from his computer, or in fact, any electronics or even electricity, unless you count the electrochemical reactions of his brain.

Being away from the interruptions of the internet and the temptations to noodle with code to test an idea for the book helped him focus. By the time he got back from his trip, he had a solid idea in his head of what he wanted to write about.

Lesson 3: Consistency beats intensity.


Jesse returned to work and didn't take any time off to write. Instead, he worked on the book as a side project: a couple of hours a night, several nights a week. He didn't work on it every night, but probably more often than not. Two and a half months later, he had 130 pages of text in a handful of formats and accompanied by source code. 

The fact that we have so many sayings that capture this idea, such as:

  • Slow and steady wins the race,
  • It's not a sprint, it's a marathon, and
  • Consistency beats intensity every time (my personal favorite)
suggest that there's a lot of truth to it. It is possible to work on a side project without derailing the rest of your life.

Lesson 4: Manage the scope of your project.

Jesse's book was about a specific topic: an introduction to Unix systems programming for people who want to do it in Ruby instead of C. That kind of focus probably helped ensure that the book would get finished. The problem with writing the Grand Unifying Book on a subject is that it's too easy to come up with new things to add to the book, and that's a near-guarantee that it will remain unfinished.

The end result was a book that covers its material in 130 pages. In a world where tech books have at least 250 pages, with many stretching to 400 and beyond, 130 is rather refreshing.

Lesson 5: Overnight success takes much longer than you think.

Keep in mind that Jesse didn't write this book with a blank slate. He's a Shopify developer by day, building an ecommerce platform using Ruby that runs on Unix systems. He's also gotten a fair bit of practice teaching people programming and doing writing.

Any project like this is powered not just by the effort you put into seeing it through; it also draws on your experience. If you're going to undertake a project like Jesse's, you're more likely to succeed if it's in an area that you know and love.

Lesson 6: The right word-of-mouth can make all the difference.

Jesse spent less that $200 on advertising, $100 of which was on Google AdWords (you get a $100 AdWords voucher when you sign up for a Shopify shop). The AdWords got his sales page 300 visits, which led to 15 sales, a 5% conversion rate and about $400 in sales.

The rest of sales came from word of mouth via Twitter. He got some influencers interested in the book, and the word of mouth carried his sales. As he wrote in a comment in hacker News, "Twitter has always been the best way to spread news about the book."

Lesson 7: It's nice when you have more control over the price.


Creative Commons photo by DaMongMan.

Many of the online stores that specialize in ebooks want you to keep the price at $10 or less because that's what the market will bear for many books. Programming books are a different creature: not only does the writing have to be good, but the ideas within also have to be provably sound. At the very least, the code in the book had better work!

There's also the online bookstore's cut of the book price. They can claim up to a third. Your $10 book makes you $6.66 (the profit of the beast!).

Here's where Shopify shines: with the cheapest plan, we ask for $29 a month and a 2% cut of your sales. Not 22%, and certainly not 30% or more. You won't be hit with bandwidth charges, even if Reddit and Hacker News point to your store and you get flooded with views (after all, that's supposed to be a good thing, right?). And you'll be able to set your price as high or low as you please.

Jesse's book sells for $27, and it's worth it. You're paying for his effort, his experience and his teaching style. 

Let's imagine that you decide to make a book, and like Jesse, you price it at $27. Let's then go with some (very) rough arithmetic and say that his $27 price point lets him make $25 per book, once you've factored in the costs of Shopify and FetchApp (the app that enables Shopify shops to deliver digital goods). That's about 4 times what you would've made had you sold your book some other way.

The Challenge


I have a couple of tech book ideas. I've also got my own established tech blog with a couple thousand readers a day and a reasonably-sized horde of Twitter followers. I think I might see if I can do what he did. At best, I get a hefty chunk of change. At worst, I've gained some valuable experience and will probably have sharpened my tech skills.

Do you have a book idea? (It can be any kind of book, not just a tech book.) Maybe you should see if you can do as well -- or better -- than Jesse. Sign up for a Shopify plan (the first month's free and the basic plan's $29 a month), get FetchApp for handling the digital delivery and set up a shop. Put up a "coming soon" test page and see if there's a demand for your book. Write it, set your price and sell it. Tell me about it and I'll write it up here.

Hmmm...maybe I should make this a contest! Let me see what we can do about that.

Recommended Reading