Web dev at the end of the world, from Hveragerði, Iceland

A print project retrospective: the biggest problem with selling print books is the software

This is a part of a series where I review the work I’ve done over the past couple of years.

  1. Two-year review: to plan a strategy you must first have a theory of how the hell things work
  2. Out of the Software Crisis: two year project review
  3. Sunk Cost Fallacy: chasing a half-baked idea for much too long
  4. The Intelligence Illusion: stepping into a pile of ‘AI’
  5. A print project retrospective: the biggest problem with selling print books is the software (this page)
  6. Thinking about print
  7. Disillusioned with Deno
  8. An Uncluttered retrospective: Teachable is a mess and I need to pick a lane

Out of the Software Crisis, the print edition

One of the big projects for 2023 was the print edition of Out of the Software Crisis (the link is on the sales page).

It used to be that the biggest problem with making a print book was the software. Your options were:

  • Expensive, unreliable, and complex (InDesign, Quark, PrinceXML).
  • Cheap, extremely unreliable, and complex (open source GUI typesetting apps).
  • Cheap, reliable, and extremely complex (open source command line typesetting tools, like LateX).

Things have improved somewhat. Affinity Publisher entered the scene and helped drive down prices. I’m not entirely convinced about the quality, but I also haven’t tested it properly either. Browsers and browser-based typesetting tools, such as pagedjs and vivliostyle have improved their text rendering in general (not just when rendering PDFs). Other tools like Weasyprint adopted rendering backends and have also become more competitive in terms of typesetting quality.

It’s not perfect, but the issues with typesetting with HTML and CSS are a relatively known quantity and getting it up to an acceptable level is entirely doable.

I’ve used PrinceXML and tools based on it in the past to typeset books using HTML and CSS for trade publishers, so it was logical for me to look at its open source competitors.

Every version of Pagedjs I tried was too unreliable and unstable to use.

Vivliostyle worked quite well, but a long-standing bug in Chrome means that headless renders on Linux don’t have hyphenation and hyphenation is a must.

Weasyprint supports hyphenation without hacks and worked decently well – after a couple of bugs I found were fixed (many thanks to the maintainers!) – so that ended up being the engine I used for rendering PDFs both for print and for screen. That pandoc integrates directly with Weasyprint was a bonus.

The typography is definitely within the range of acceptable. I’d probably have to learn LaTeX to get a PDF rendering command-line tool with consistently better typography.

After quite a bit of CSS typesetting work, I had a template and a stylesheet and print-oriented PDFs that I was happy with for Out of the Software Crisis and The Intelligence Illusion.

Hard part over, right? Smooth sailing from here on out, right?

Not quite. Turns out everything involved with selling print books online is garbage.

Things are bad out there, and it’s a genuine miracle that anybody manages to pass through this gauntlet of shit and sell physical objects online.

No, I’m not going to use Amazon’s Print-on-Demand (PoD) services

The first impulse many have when it comes to self-publishing anything is to sell it on Amazon.

There are three problems with this approach:

  1. Amazon doesn’t care about your book, or any book for that matter.
  2. Amazon doesn’t care about you, or any publisher for that matter.
  3. Amazon doesn’t care about the customer, or any customer for that matter.

Amazon as a retailer of printed books is firmly a monopoly and as such they’ve completely given into their worst instincts. They are a genuinely horrible partner whose parasitic behaviour is survivable by large publishers, but those whims can destroy a small publisher overnight.

To make up for the awful experience and unreliability, Amazon would have to sell a lot of books for the partnership to be worthwhile. For the most part, they do not sell any. Pretty much every sale of a book by a self-publisher in my position will be one I’ve earned myself, through my website, social media, or newsletter.

They are also terrible at quality control (their PoD quality is “uneven” at best), do a poor job of preventing actual fraud (i.e. they don’t prevent others from selling fake versions of your book), and their delivery service habitually damages books in transit. I’ve lost count of how many books Amazon’s delivery service bent, folded, or soaked back before I finally stopped ordering from Amazon retail a few years ago and by all accounts their service just got worse in the meantime.

They also aren’t genuinely cheaper than the competition on most titles.

I know it’s impossible to get people to avoid Amazon retail out of ideological reasons, but you really should avoid them because of their low quality and unreliability. They have, simply put, become incredibly bad at selling printed books.

So, Amazon’s PoD services were out. What other options are there?

The Print-on-Demand landscape

Once I’d narrowed down the options of PoD printers to those I had either used myself at some point or used by somebody I know in publishing, I was left with:

Ingram is popular among some trade publishers but has a reputation for being hard to use. Lulu is popular in the Open Textbook scene. Blurb emphasises books that are heavy on graphics and photography and has a reputation for being a bit expensive. Bookvault has a reputation for having decent pricing for the quality they deliver, and I know of at least one small trade publisher who has used their parent company, Printondemand-Worldwide, for the occasional short print run project in the past, though not for Print-on-Demand, strictly speaking

What I wanted was the ability to sell the book directly, using my own payment provider, from my own site, with some sort of integration that automatically submitted each order to the PoD service to print and ship the book to the buyer.

Of the initial list, the only printers that seemed to cater to that kind of integration were Lulu and Bookvault, so Blurb and Ingram were out of the running.

Only Bookvault offered a Payhip integration, a service I like and have used in the past. They also have a colour insert feature where you only pay for colour printing of the pages in your book that are in colour. Even though this wouldn’t matter for the first book, this could, in theory, make a big different for The Intelligence Illusion at a later date.

This looked like an easy decision to make.

Easy, but as it turned out, the wrong one.

The problems began when I ordered the initial samples.

What does it mean when a Print-on-Demand service makes a mistake?

I got one copy of Out of the Software Crisis and one copy of The Intelligence Illusion.

The Crisis copy looked great. I immediately spotted a few issues with my work (that’s inevitable) but the printing, binding, and cover looked fine. About as good as is possible from Print-on-Demand.

The other book, however, was entirely in black and white. The illustrations that were supposed to be printed in colour were in muddy greyscale.

Bookvault’s support was, initially, very apologetic, offered to reprint the title but, crucially, offered no explanation for how this could happen.

This is supposed to be an automatic system for printing off single copies of a book. It’s also a system that’s supposed to automatically switch to colour as needed.

But here was a copy where that had failed.

And because they didn’t have a good explanation for how this happened, I have to assume that this could happen with every single order. That means there would be a real risk with every order of a print version of The Intelligence Illusion that the customer would instead get a black and white copy with no colour pages.

Since the support person insisted this was a one-off mistake, I decided to give them the benefit of the doubt but decided nonetheless to postpone the print version of The Intelligence Illusion and concentrate instead on getting Out of the Software Crisis out into the print world.

This is the first point where I should just have cut my losses and switched to Lulu, but I didn’t.

The rest of Bookvault’s software is awful as well

It didn’t take me long after that to discover that their Payhip integration, implemented via Zapier, didn’t work. No matter what I tried, no matter the browser, OS, or device I tried, I couldn’t get their service to authenticate with Zapier.

I tried WooCommerce as well. Same story.

This is when Bookvault’s support just went off the rails. Half the time I just didn’t get a reply at all. When I got a reply, they ignored the crucial bit (their integration doesn’t work!) in my support request and seemed to fundamentally misunderstand everything I said.

At one point they switched to calling me Brenda for an entire email.

This is the second point where I should have just cut my losses and switched to Lulu, but I didn’t.

Shopify is awful

That left me with Shopify as the only option for selling the print version direct.

Shopify is one of the worst-designed services I have ever had the displeasure of using. It is full of upsells and dark patterns – such as trying to trick you into transferring control over your domain to them.

I was using it because it was the only option available to me under the circumstances and because I was working on a self-imposed deadline, so having to work with a company whose ethical track record is dubious was already grating. But the sheer awfulness of every aspect of the service added insult to injury.

PayPal is awful, but the least awful of this bunch

The only payment provider I managed to get working with Shopify was PayPal. Stripe has very poor support for Icelandic merchants, so they were out of the picture. Local payment processors and European processors with decent support for Iceland tend to be prohibitively expensive for small projects like these.

So, PayPal was the only option.

To my surprise, they were a dream compared to Shopify or Bookvault. Easily the most straightforward part of this project.

I got the PayPal integration working, made a bare-bones book store in Shopify, and made a test purchase.

It worked. The book looked good.

A success of sorts

After the launch, the print version of Out of the Software Crisis sold pretty much the number of copies I expected it to. This is an established book (for the most part) where most of the buyers seem to have already been fine with the ebook version, so I never expected blockbuster sales in the first place.

All the copies I’ve seen of the book have looked good with no noticeable quality issue.

You could say that the project was a success despite everything that happened.

The problem is that business projects don’t just need to be successes. They need to be building blocks that you can build on to extend your business.

I can’t build on this:

  • I don’t trust Bookvault with more complex print projects
  • I don’t trust their integrations
  • I can’t trust Shopify – they give me the impression of being unethical on every level
  • I shouldn’t trust PayPal, given their track record, but will keep them around as a backup service
  • Using Bookvault’s retail distribution service would tie me to their platform and, as I noted above, I don’t trust them

This worked for a single project and would have been fine as a one-off, but I need to adjust my plans if I’m to offer print versions of my books in the long term.

What are my options?

The only sensible option I have remaining for printing is Lulu and I want Shopify out of my life completely.

The main issue with switching the existing book to Lulu is that the look of the book is likely to change. The quality should be roughly similar, but there are always some variations between printers and, more importantly, different printer features might lead me to reconsider some design choices I’ve made.

With that in mind…

Option 1: call it a one-and-done project and turn it all off

I could just declare victory and move on. Project worked. It sold according to expectations. Announce a shut-off date for the Shopify page and print ordering and give people the opportunity to buy copies before I get out of the print business completely.

This is probably the most sensible option. The economies of print aren’t that great at this scale. My audience is very supportive of digital products in general and the economics of digital are quite good.

There’s a considerable opportunity cost to print in that I’d almost certainly have a higher income spending my time on something else.

Option 2: build my own integration with Lulu

If I commit to building my own integration, I could choose whatever ecommerce platform I want. I could use a service like MyPOS which seems to be among the few with decent support for Icelandic merchants.

The problem here is that this is harder than it seems. Remember, Bookvault messed up in two out three of their own integrations, and I’m assuming those were made by people whose job it is to make them.

Back in a former life, I actually used to work as a web developer on an ecommerce site and later I used to work as a web developer in publishing.

I know for a fact that this task is more complicated than most developers think. If you just hammer something together, you’ll end up with orders intended for London, UK getting shipped to London, Ohio, while being charged as if it were being shipped to Australia, missing all the import, export, and sales tax documentation because it was only supposed to got to London, UK.

It’s also always risky to put together a web service where any security flaw could result in an $80 USD charge (printing plus shipping) per request.

It’s a complex problem with stakes that are a little bit higher than what I’m comfortable with.

Based on prior experience, I’d estimate that doing this properly would take me two weeks, minimum, if I wanted to minimise the chance of costly mistakes.

I would also have to grow the number of print titles I offer substantially for it to make financial sense.

I just don’t think that I’m likely to sell enough print books to warrant that kind of work, and I’m too old to be throwing the dice on a rush job.

Option 3. Just let Lulu handle it all

The final option would be to just let Lulu handle it all. Instead of linking to a Shopify site, I could link to the book’s page on the Lulu store. Let Lulu take care of retail distribution and the rest.

I have no doubt that I could put together a custom ecommerce site that had higher sales and better conversion rates for my print books than just selling via Lulu.

But I do doubt that I could do that with an atrocious service like Shopify. At least not without effort and investment that would far outweigh the potential benefit.

Letting Lulu handle it all might be the sensible option. I have no idea what the sales would be like, but it looks like a low investment path to making titles available in print, at least.

Option 4. Crowdfund proper print runs

Very few crowdfunding platforms support Icelandic merchants. Those that do, like Karolina Fund, are tiny. I could do pseudo-crowdfunding and fund a proper print run through pre-orders, but it’s hard to drum up enthusiasm for books that have already been released. This might work for a new book down the line.

Many of the newer crowdfunding platforms also use Stripe, which has very limited support for Icelandic merchants.

What will I do?

I haven’t decided yet.

Option 1 is the most sensible. The project was a success, but not enough of a success to do another one the same way.

If I had a lot of free time on my hands, I would be tempted to try option 2 just for the challenge, but I don’t.

Option 3 has some emotional value. Seeing your work in a printed book feels good. Unlikely to make much money, but if done sensibly should make me enough money to pay for the work involved.

Option 4 might have been a stronger possibility if I had a larger crowdfunding platform available to me here in Iceland and if the crowdfunding scene wasn’t still reeling from a crisis created entirely by Kickstarter’s management falling in love with “the blockchain”.

I’m leaning towards option 3, but this is definitely a decision I need to mull over before committing.

You can also find me on Mastodon and Bluesky