writing

Self-published Ansible book – 87k copies, 300k revenue, 41 revisions

I just published the 41st revision of my self-published book Ansible for DevOps, which has sold 87,234 copies as of this writing across LeanPub, Amazon (Kindle and paperback), and iBooks.

There are multiples of that number of eBooks downloaded, as I've never DMCA'ed the sites that re-host the book illegally. I just... provide new and better versions. People who download the illegal copies know they can come to me for the best reading experience. Plus, I provide free updates forever for anyone who's purchased or gotten the book free on LeanPub.

My self-published book earned $300,000+ in revenue over the past 9 years, and still earns enough every month to pay my health insurance bill (sans deductible)—which has soared to beyond $2,000/month! (Living with a pre-existing condition in the USA is... bad.)

Short is good

I watched TheOdd1sOut's How to Find Inspiration1 and remembered the most important lesson I learned from my high school English teacher:

Short is good. Short is hard.

The teacher2 didn't exactly put it like that. But he harped on something nobody else did: writing concisely.

Every week we would read a work of American literature. And every Friday we'd turn in a one-pager encapsulating our knowledge of the book. I was an odd duck for how much I enjoyed the game: no playing with margins or font sizes. I had to cram an entire book into one page, double-spaced, with 1" margins, a title line, and a byline.

I remember spending Thursday nights honing my text, usually down to around 500 words. We would get a slight bonus for conveying more with fewer words.

That's surprisingly difficult for teenagers conditioned to churn out a specific word count. TheOdd1sOut commiserates:

Self-publishing and the 2nd edition of Ansible for DevOps

Five years, 834 commits, and 24 major revisions later, I've just published the 2nd edition of Ansible for DevOps, a book which has now sold over 60,000 copies and spawned a popular free Ansible 101 video series on YouTube.

Ansible for DevOps, 2nd Edition - Cover

Making good on my promise to make the ebook updates free, forever, I've published a new revision of the book at least once a quarter since I published the first revision (version 0.42) on LeanPub in 2014, and the second edition begins the 2.x series of book revisions.

The book covers the basics of managing Linux servers, then dives deeper into continuous integration, application deployments, container image management, and even Kubernetes cluster management with Ansible.

I gave away my books for free, and sales increased 4x

In March, I made my DevOps books free to help anyone who wanted to learn new skills during the global pandemic lockdown. In April, Device42 generously extended that offer for another month.

I originally had the idea to give the books away on a whim on a Sunday night, thinking I'd give up a fair chunk of revenue, but nothing too substantial. The response I did get was overwhelming, to say the least!

As with many other metrics during these unprecedented times, book sales shot through the roof while they were free. The top chart is Ansible for DevOps, and the bottom is Ansible for Kubernetes:

Ansible for DevOps - Cumulative Sales over Time

Markdown is an excellent choice for documentation

Every few months, it seems a new post decrying the use of markdown for documentation (or other things) rises to the top of Hacker News.

There are often good reasons for preferring a more structured option, like reStructuredText, LaTeX, or Asciidoc. Especially in projects where more formal text is required, or where you need to support specialized and structured text formatting.

But for 98% of software projects (and in my experience, 95% of all other text I've ever written), markdown suffices, and it is truly a low barrier compared to the alternatives. It's basically plain text (which anyone can learn to write in a few seconds) with extra features.

I've written two books entirely in markdown—specifically, LeanPub-flavored markdown—and besides plain text, it is the easiest language for general content authoring.

You can get my DevOps books free the rest of this month

March 31st Update: Through Device42's generosity, this offer's been extended through the month of April!

The ongoing Coronavirus/COVID-19 pandemic and bear market made me realize how beneficial it has been to be adaptable in the tech industry. There are no guarantees in life, and the ability to earn a livelihood is probably the most underrated important aspect of overall health. Most people take it for granted until they are deeply affected by it.

I can't do much to help during this crises, but I figure that I can make my two books, Ansible for DevOps and Ansible for Kubernetes, free for anyone who wants to learn a new skillset as a buffer against possible coming layoffs.

Ansible for Kubernetes, my second self-published book

Ansible for Kubernetes book cover - by Jeff Geerling

Five years ago, I set out to write a book. For a topic, I picked Ansible, since I was familiar with the software, and noticed there weren't any other books about it. I struck gold with Ansible for DevOps, and have since sold over 22,000 copies between eBook and paperback copies.

I've written about self-publishing before, and my opinion about publishing technical works is stronger than ever:

I wrote an entire article (Self-Publish, don't write for a Publisher) on the first topic. Regarding the second topic, I see writing a technical book on the same plane as building a software project:

Moving on, aka 'New job, 2019 edition'

Since 2014, I've been working for Acquia, doing some fun work with a great team in Professional Services. I started out managing some huge Drupal site builds for Acquia clients, and ended up devoting all my time for the past couple years to some major infrastructure projects, diving deeper into operations work, Ansible, AWS, Docker, and Kubernetes in production.

In that same time period, I began work on my second book, Ansible for Kubernetes, but have not had the dedicated time to get too deep into writing—especially now that I have three young kids. When I started writing Ansible for DevOps, I had one newborn!

Ansible for DevOps - 50% off on LeanPub for Black Friday 2017

Though I've had a little less time to work on the book lately, I'm still very much invested in keeping Ansible for DevOps the best and most up-to-date guide to using Ansible for infrastructure automation. It's been over two years since the first '100% complete' edition was released, and in that time I have published over 200 updates on LeanPub—and even have full test coverage for all the book's examples, which are open-sourced and available in the Ansible for DevOps GitHub repo!

Ansible for DevOps - 50% off for Black Friday 2017

For this year's Black Friday, I'm discounting the book—50% off—but only on LeanPub. I like to push readers to LeanPub, because: