My Notes on Writing an E-book

So, yeah. I wrote an e-book. It has been an interesting experience and I thought I'd share a few random thoughts on how things have gone so far.


When I first started down the path of writing the SMACSS e-book, I had intended it to be either an e-book or a printed book. After months of writing and not getting enough written, I released what I wrote as a web site. A free web site at that. However, I also released it with the intention of continually adding new content to it until I had reached a point where I had a "finished product".

Right away, though, many people asked for the site in an e-book and even a printed format. With my intention to add more content, a printed format just wasn't (and still isn't) a practical option. However, an e-book could be created and updated over time. And so I started down the path of converting the HTML content into other formats.

Knowing my preference, I decided to try and put together the e-book in different formats, since each format has its own pros and cons. I did PDF, ePub, and mobi.

Mobi is the format used on the Kindle and other e-ink readers. It lacks a lot of control over formatting and was the lowest common denominator. ePub is the format that Apple uses and was a format that I wanted to push the limits on—even if maybe just a little bit. Lastly, I also went with PDF, which has great support across most platforms.

Once I stop writing new content, I may very well do a print version, too. This feels rather backwards from how a publisher would normally do it: print to e-book to free. I went from free to e-book to (maybe one day) print.

Working in ePub

Trying to find accurate and up-to-date information on creating an ePub file targetted for iOS proved to be surprisingly difficult. Searches revealed information that was often a few years old and targetting older versions of the spec. Apple also supports non-standard features like embedded audio and video. The problem was trying to figure out what some things wouldn't work.

The ePub format, if you're not familiar, is just a zip file with a bunch of XML and HTML content. The XML defines the assets and table of contents and the content itself is in an HTML format. I ended up using Sigil to expediate the conversion but discovered that Sigil sticks heavily to the spec. Embedding HTML5 video, for example, will get stripped out automatically without any clear messaging telling you that the application has done so. That was frustrating.

I was able to use font-face embedding, which I liked. It allowed me to maintain elements of the brand from the web site and bring them into the e-book. I was able to buy an extended license to embed Quatro Slab in the e-book.

Hand coding the files turned out to be a better solution, although I still find updating the table of contents XML a hassle.

Testing the ePub on my iPhone or iPad was somewhat straightforward. Just drop the ePub file into iTunes and sync it to the device. The problem is that the device caches information about the book so dropping in an updated file doesn't automatically update the book on the device with the latest version. Deleting from the device and deleting from iTunes and dragging the file back over may work. Sometimes. But not all the time. I never did find a reliable way to easy push new book updates to the device.

Working in Mobi

Short and sweet: with such limited functionality, I used Calibre to convert from the ePub version to the mobi version. I had a friend try it on the device and went with it as is. I didn't make any other changes to get the e-book prepared for the Kindle. It was this version that I ended up uploading to Amazon (which I'll talk about in a bit).

Working in PDF

I used Pages and manually copied all the content into it, setting up styles and managed the layout of the book manually. I think I used A4, which is unusually large. The next version of the PDF will likely use half-letter size. This turns out to be the same size as the A Book Apart series of books. If and when I go to print, the half-letter size should hopefully be easier to print.

Manually laying out the content is a chore and means that minor edits to the book have to be done in multiple places. I'm looking at some HTML to PDF options to make this step easier but so far, I haven't found anything that's perfect.

Working in DocBook

Wait, what? What is DocBook? Working in multiple formats, I longed for a way to build in a single format and then export into all of the other formats I needed quickly and easily. I chatted with folks at a couple different publishers and they said they used DocBook. It seemed like the way to go.

Unfortunately, I didn't like the HTML that was getting created. This would ultimately be the HTML code that would appear on and in the ePub version (although I suspect nobody would have seen it there). Just having it on the web site meant that I was more particular about the output.

DocBook is an XML format and getting my content into the format was easy enough. Getting it out, however, was mired in DIV tags 4 or 5 levels deep. Not an example I wanted on my web site. The XML to HTML conversion happens with a set of premade XSL files. You can tailor your own XSL files to get the output that you wanted. However, after finding myself working for hours over the output of each element of code, I gave up.

If you didn't care about the HTML or were okay with the HTML the DocBook XSL generates for you then DocBook might be a good fit for you. For me? It definitely wasn't.

Publishing with Amazon

I decided to publish to Amazon as a way of possibly having people randomly come across the book who might not otherwise do so. The sales of the book on Amazon have done quite well, exceeding the number of $15 ebook sales through my own site. The reporting from Amazon's site isn't really the easiest for tallying up total sales on a daily basis. However, I'd estimate that I've sold almost 200 copies of the ebook through Amazon alone.

Amazon has different royalty points. If the book price is over $10 then you only get 35% from each sale. If the book price is under $10 then you have the option of 35% or 70%. What's confusing is that even though I chose the 70% option (and priced the book below the $10 threshold to ensure that I could), not every sale automatically results in 70% royalties. I must've missed some fine print somewhere because a third of e-books sold via Amazon US only got the 35% royalty.

One of the other downfalls with using Amazon is that you don't get access to any customer information. You don't know how they found your book or have any way of contacting them. This is okay if you're just doing the book and nothing else. But I have the workshop and potentially other things down the road that people may be interested in. I'll never know.

Why not Apple iBookstore or Nook?

Both Apple and Barnes and Noble require tax information to be supplied up front, which I didn't have. As a Canadian, this usually means filing for a special tax number that is filed with a W8BEN form. As an American-Canadian, I should actually be applying for a SSN and filing US taxes. Way more effort than I really wanted to put into it.

As I learned afterwards, Amazon has the same requirements. If you don't provide the information, it deducts a hefty portion off of the cheque it sends you. That I'm already selling it for less than money than I sell it on my web site and that I already lose 30-65% off the top for royalties makes this less than ideal.

Both Apple and Barnes and Noble also suffer the same problem that Amazon does: they take a considerable share of each sale and provide you no customer information in return.

Customer Contact

Before I launched the site, I set up a form to subscribe to a mailing list. I had approximately 500 people sign up. When I launched the HTML-only site, I sent a campaign to the list and then shuttered the list.

That was stupid.

As I began work on the e-book, I set up a new list and hoped that everybody who had subscribed before would resubscribe again. Thankfully, the subscriber count has climbed its way back up. Don't let people fool you: e-mail isn't dead. E-mail sent to people who want to receive it are very attentive. They'll click through. They'll read what you have to say. You have their attention.

Social Networks

I relied heavily on my Twitter stream to get the word out but people often miss a tweet. I have friends who still don't realize that I've written the e-book. Go figure.

But I also realized that I didn't take advantage of Facebook or Google+. I'm getting better. I'm trying to use the avenues that I have available to me. As I work on the workshops in addition to the extra content, I need to remember that not everybody hangs on my every word on Twitter.


To put it bluntly: it has been a waste of time. If someone is successful with advertising, it's definitely not me. I spent nearly $1000 on advertising between Google AdWords and Fusion Ads (the very ads on this site) and while I got click throughs, few resulted in actual sales. Would a sustained ad have provided better results? Would someone who understands ad word targetting have done a better job? Maybe.

Are there other advertising avenues that I could try? Yes. I didn't try Facebook and I'd be really curious to see how it performs versus everything else. I wasted time (and money) on the other approaches and therefore I'm reluctant to invest the time in anything else.

Tiered Pricing

With the intent of producing more content, I wanted to reward people who were willing to pay up front for content that might be weeks or months in the making. I created the site membership and tried to make it as enticing as possible. For those that weren't as patient, I offered up just the e-books and the Kindle version as options.


First of all, I set my sights low. I expected most people would buy just the e-book with a few people going for the site membership. I expected to sell maybe 50 e-books within the first couple months. As of this writing, which is 2 1/2 months from when I launched the e-book, I've sold 569 site memberships and 106 e-books (and then close to 200 Kindle copies on Amazon). (A small caveat that many of the site memberships sold during the one-day sale I held on Christmas Day. That response also blew me away. I figured y'all would be eating dinner or opening presents!)

Clearly I set my expectations too low.

Should you self-publish?

I have made more from self-publishing than I have from writing for traditional publishers. I took more risks, paying for an illustrator, font rights, designing all the collateral material, paying for advertising, building the payment gateway, and investing my time in writing the book itself. Having learned as much as I have in the process has been a huge reward in itself. Having the book do as well as it has has been a fantastic bonus.

I recognize that I've built up an audience over the years and that I've been able to take advantage of that audience to get the word out. I believe that self-publishing offers up the greatest of flexibility and the greatest of rewards. I've seen lesser known individuals launch their own self-published efforts and have done similarly well.

It's cliché but if I can do it, so can you!

Published February 09, 2012
Categorized as Writing
Short URL:


19 Comments · RSS feed
Jens Grochtdreis said on February 08, 2012

Thanks for the detailed insight in the production process of your ebook and site. Isn't it strange that it always boils down tho formats? In the end it is just content. And as we use computers a conversion should be simple. But it isn't. In this case, print is superior :-)

I guess it wouldn't be easy to find a publisher for such a small book. So publishing an ebook seems to me superior for this special case.

Did you test LaTex? You can publish PDF and epub from LaTex, HTML should be possible, too. LaTex to epub, LaTex to epub and mobi.

I think, publishing an ebook is the right way for many topics in this industrie. These topics change too often or get old too fast. The production process for a book will be too long. Most jQuery-books are outdated when they are printed, because there are two new versions more in the meantime.

But it is a little bit frustrating to see, that even someone with an international reputation doesn't sell enough copies to make a decent profit. Did you track the time you invested in writing? And did you track the time you invested in playing with the formats? Your hourly rate should then be very small, I guess.

Sell note said on February 09, 2012

This is the perfect blog for anyone who wants to know about this topic. You know You definitely put a new spin on a subject thats been written about for years. Great stuff, just great!

Andrew said on February 09, 2012

Don't forget ePub isn't just iPad and iPhone! It's also the preferred format of most not-the-Kindle e-ink readers and the majority of installed ebook apps.

Tim Wright said on February 09, 2012

This is a little weird but have you ever thought of making it an iOS/Android app through a Web Window (think that's what it's called)? You could use the app store as a way to alert folks that the book content had been updated and still host it online.

A slight misuse of the app store, but might work... sort of like RSS.

I don't know how the normal eBook version works but it feels like it would be problematic to push updates.

Jonathan Snook said on February 09, 2012

@Tim: I suspect that the problem with pushing it to the App store is that it's not as discoverable as the iBookstore. People in search of a book on CSS would be looking amongst the other books. And while I can push book updates out (as I can on Kindle), I can't push notifications out to let people know about related things (except to possibly have a "news" section in the book, which seems...unusual).

Tim Kadlec said on February 09, 2012

Thanks for writing this up!

I recently worked on pulling existing content from a CMS to generate both ePub and Kindle formats and much of my process was similar to your own. Since the books were compilations of articles, the formatting was very basic. I found as long as you kept the styling pretty basic, you didn't really have to tweak much of anything to get the ePub and Kindle versions to generate from the same set of files. As it turned out, writing the script to generate the ebooks was the easy part. Removing the cruft left over by the WYSIWYG was much more challenging.

Once the files were generated, I used an Applescript application to create the ePub (in order to ensure the mimetype file came first), and Kindlegen to create the .mobi file.

I'll probably expand on the process in a post on my site eventually, but I did want to share one way that made the ePub testing a little less painful. If you place the ePub file on your server and navigate to that address in Safari on your iPad or iPhone, you can download and open the file directly in iBooks. While still not perfect, this eliminates the need to sync your device each time you want to test.

Peter Gasston said on February 10, 2012

Have you considered selling through the Kobo store too? ePub format, and it's Canadian to boot!

shadaik said on February 10, 2012

About the fine print on sales: Yeah, you get only 35% for books sold by outside US/Canada.
Meaning, you "only" get 70% on books sold in US/Canada (via, UK/Ireland (, Germany, Austria, Switzerland (, Italy (, Spain (, France, and Belgium ( That is, all countries that have a native Kindle shop. Left out a couple of really tiny European countries, but you get the idea.

Jonathan Snook said on February 10, 2012

@Peter Gasston: there's no information on the Kobo site about royalty costs or other rights handling or how they handle payouts. I'd prefer they had this info up front instead of requiring me to contact someone to do so.

@Shadaik: Thanks for clarifying that!

Jonathan Snook said on February 10, 2012

@Jens: I glanced at LaTeX and felt that I was in the same boat as DocBook: It's going to require a lot of effort to get the final product closer to what I wanted. However, I didn't look at it as closely as I did DocBook. With DocBook, I actually tried to see what it could do. I didn't do the same with LaTeX.

As for how it computes with my hourly rate? I didn't track my writing time. Or the time to build the site or all the other things that went into it. With book revenue having been around $15k, at an hourly rate of $100/hour, that works out to 150 hours. I spent about 40 hours working on the site itself and probably another 80 hours spent on writing. I wasted about 10 hours on DocBook that I'd like to get back. It's probably quite close to the $100/hr rate.

Tim McCormack said on February 10, 2012

Huh, I wasn't aware that any e-ink reader other than the Kindle could read .mobi files.

Sérgio Jardim said on February 16, 2012

I think you must try both Sphinx ( and Scrivener ( They are great to export to html and epub. The later also export to mobi as well.

I've used Sphinx to create the documentation of a web project (not for the code, but for the UX) and exported as HTML with great results.

Scrivener it's to me the most perfect tool to write a book, and it exports to various formats with great control.

Regarding the publishing to iBook Store, we've used the services of Libre Digital ( and they intermediate the process very nicely. The downside is that they will charge for a % to each book sold too, but it was the only possibly way to publish the books as we are in Brazil.


martin said on February 18, 2012

I was playing with the idea of writing an ebook for children's education. I thought about it for years but now with the technology of e-readers its much easier to publish your book. I have just finished my ebook with the help of my design company but im not sure where i should upload it to? anyone got any good ideas for children's books?

Jonathan Snook said on February 18, 2012

@Martin: congrats. I would think for a children's book, you'd want to get it to where people are looking for them. Amazon, iBooks, and Barnes and Noble are good places to start. Personally, I've yet to really look at e-books for children's books. I'll either go app or go print. Best of luck!

Durban said on February 20, 2012

This a brilliant article. I have been thinking also about writing eBook version of series of tutorials for my blog at but my biggest obstacle is mass of content... Maybe one year from now I will re-visit this excellent blog!

Rajeev said on February 25, 2012

I have found that Lulu pcreis are about double those at CreateSpace. But since both are in the US I am still looking for a way forward (I am in UK). Lightning had no pcreis so i eliminated it. Any other ideas ?

Richard Metzler said on March 13, 2012


your advertising should start on your own page. If you want to sell more books, do the following:
1. go on the top of this page, hit CMD+F and search for 'book'. All instances of the word 'book' will be highlighted.
2. you will recognize, that your author bio doesn't say anything about your book and the axe guy doesn't say anything about a book either.

I've been on your site from time to time and lately I look for more content for my kindle, so I might be the perfect customer, but I've never read anything about the book until now.

Jonathan Snook said on March 14, 2012

@Richard Metzler: Thanks for the feedback. I think that's valuable insight. Will do what I can to better indicate that I have a book for sale.

compueer repair said on June 28, 2012

This actually answered my downside, thank you!

Sorry, comments are closed for this post. If you have any further questions or comments, feel free to send them to me directly.