Delays and progress.
Three weeks since my last post, and three excuses:
- Covid restrictions are easing in the UK. This has meant giving myself the odd day off to reconnect with friends and family, since we're not all getting together at big weekend gatherings just yet.
- Storms. Lots of little thunderstorms have been passing over Dorset the last few days, leading to lots of little power cuts. The electricity only goes for a few seconds but with no UPS it's made working on the website or uploading big files to the distributor awkward.
- Writing my own form handler program. Alright so this was my choice and not really an excuse, but I have spent quite a bit of time trying to get a little web server to cooperate with my main one (nginx). More on this at the bottom of this post.
I have now uploaded the interior and cover files for the paperback edition to Ingram Spark. The files passed the automated checks – second time – so now I just need to wait for someone there to have a quick look at them manually. Then it'll be my turn to check their eproof – sort of a print preview. After that I'll be getting a physical test copy mailed to myself before I start sending out advance copies to potential reviewers and retailers. The final version is still subject to change, depending on the feedback I receive.
The interior file is generated from the ebook in three stages. First a simple program I wrote back in January converts the xhtml to conTeXt. Then some free and open source software called GraphicsMagick scales down the scans of the illustrations. Finally the conTeXt program – also free and open source – generates a pdf from these half-way files. The upshot of this is that the ebook is essentially ready too. If I need to change the print edition I'll do so by changing the ebook first.
I might also need to add more accessibility features to the ebook. Not everyone will display it as text on a screen and read it with their eyes. A good ebook needs to be read out by screen reader software too. I've made a good start on this, but I'll be looking for online guides to see if there's more I can do. Perhaps this website needs some work on accessibility too? I've been relying on simplicity and HTML5 markup so far, but I'll read the WCAG standards soon, to see how I shape up.
The large print edition could be generated from the ebook in a similar way, but it will probably be easier to work from the conTeXt file from the smaller paperback. Hopefully it will be as simple as changing the page size and making the font a nice 18pt sans serif like TeX Gyre Heros. I can enlarge the illustrations too, or rather shrink them less. But I'll need to check through for awkward page breaks and other such problems too.
The form handler for the website is nearly done, I think. It works okay on my PC at home, I just need to get it to run on the virtual server I'm renting and to restart if it fails for any reason. I know roughly what that entails on the GNU Guix operating system I'm using, but I haven't quite managed to get it working yet. It's written in Guile Scheme, the same language that Guix is configured with, so this approach has the potential to be quite an elegant solution. I may be able to define the web app and configure the operating system it runs on in one small file. If I get it working nicely I'll share the code and write a technical post about how it works.
But I don't want this blog to be all about IT for publishers. In Britain we are now allowed to meet indoors in small groups, which means I won't have to wait for the wind to die down to get a few friends together for a game of sum-run-set or some other card game from the book. I shall let you know how that goes.