Ask HN: Best tools for self-authoring books in 2023?
I'm a fairly "nerdy" person who loves to spend time in text-editors, terminals and (if needed) browsers .. and I'm trying to understand the self-authoring tooling landscape suitable for me.
My work will not contain mathematical formulae, nor would it contain code snippets. But I would like to include images, or generate diagrams (flow charts, event sequence diagrams etc.)
A quick Google shows me mkbook and mkdocs. Both of these take in markdown files and generate HTMLs. I plan to evaluate these.
Any other authoring frameworks worth considering?
What are my options in terms of self-publishing? Amazon still king? What other stage of self-authoring would I need tooling for?
Ah, must mention I primarily use Fedora but I'd like to sync the repo on my MBP as well, and would like to work seamlessly on both machines.
Any direction would be helpful. Ty.
58 comments
[ 4.9 ms ] story [ 114 ms ] threadI know the following will get downvoted, but I hope you upload it to Z-Library too. Z-Library is a website that allows people to illegally download copyrighted books for free. If your book has even a tiny bit of success, it will end up there anyway.
That's the simplest thing that might work...or maybe a typewriter + xerox are.
But I digress. Good luck.
Imagine a markup language built by a typographer who also is a pretty darn good programmer.
Also IntelliJ/IDEA is fantastic for asciidoc editing...
Leanpub is easy and works.
I would consider Obsidian for my next venture as Scrivener has too many features for me that I don't need.
For my poem book I wrote some code that generated mazes for the cover [0]
We do go with Amazon for ebooks but not for printing, their quality is way below what we find acceptable (we're in Germany and found a printer in Poland after being let down by our German printer).
[0] https://www.amazon.de/Olavsweg-Gedichte-Gedanken-lyrische-In...
Scrivener was, I believe, originally designed for screenplays and there's a lot about it that's focus on working in a very specific format.
I’m dabbling now with writing using Obsidian. I think (but not 100% fully researched / sure yet) that it’ll do all I need: portable, open, easy workflows for shuffling stuff around, exports using pandoc and so on. There are also a fair few plugins and tutorials - Googling “long form writing with Obsidian” will find you lots of useful stuff.
I'd wish for an Obsidian plugin that stores the chapter order in a file and displays chapter in that order instead of alphabetically.
I'll follow your tip to Googling “long form writing with Obsidian”
Is it better than doing the same in Word using navigation pane to drag and drop entire sections to rearrange? Thanks.
Would you mind sharing the company name?
https://www.totem.com.pl/
and (some years back) were very happy with the professional service, the price and the result (book had a complicated cover with maps inside and a larger cover that folded in).
https://sigwait.org/~alex/p/pg2e/
Pandoc can convert almost everything in everything and is great for terminal nerds. However, be aware that formatting pdfs for common self publishing distributors like KDP (Amazon) has some strict requirements.
For someone without the nerd dns, Vellum is a great software on the Mac that formats ePub and pdf as required for different vendors and print formats. The best feature is that you have one manuscript and export to ePub and pdf. Including graphics works quite well, but sometimes clever positioning for pdf is a bit tricky. Be aware that Vellum is a paid software and it is not suited for equations and docs that require very formal formatting (on the other hand, ePub ebooks are generally not a very good choice here).
But before you choose your toolchain, be aware that writing and formatting the manuscript is only a small part of self publishing. You need distribution and marketing, proof-reading and a business model.
Amazon can help with distribution, but you could publish via your own website, Gumroad and numerous other platforms. Do you want to only sell the ePub? Or sell add-ons, courses, bundles etc.? Amazon is okay for mass market topics, however there is a large competition and you have to have a marketing strategy. Selling via Gumroad allows for bundles and greater flexibility, but is better suited for niche topics. Again: You have to do the marketing.
Does your target group prefer printed books? Amazon/KDP can help here with print on demand. Beware anything where you print (and buy) hundreds or thousands of books in advance: You will have your garage filled with them and never sell them all because of logistics.
So, please don't only focus on the toolchain and the doc to ebook step. That is one of the easier parts in the equation.
The professionals use Microsoft Word.
Word is indeed the lingua franca of publishing. To go to an agent or publisher, a doc or docx file is where a manuscript usually has to end up. But "end up" is important here...95% of the work of actually writing need not happen in Word, and many successful writers don't use it for primary drafting.
[0] https://pdworkman.com/writing-a-novel-in-markdown/
For selling books, try to do most of your sales via your own site. Gumroad is a good partner for selling PDFs. Lulu is pretty good for printed books. Amazon is a necessary evil due to their reach, but they will charge a much higher fee than doing it yourself and they are evil. If you don't self publish your royalty rate will be such that except for the few best selling books you won't make any significant money. It can be worth going with an established publisher if you want the prestige (and perhaps you can leverage that into $s) but in most cases I think self publishing is a better option.
Let me again emphasize writing the actual book is much more important than messing around with tools.
People rag on Amazon, but as a book buyer it's nice to have all your books in one place on a platform that's likely to be around next year, rather than random PDF's that end up who knows where. It's also nice that the book is subjected to reviews. Those can be capricious and unfair at times, but if there are enough, you get a better sense of the book than "Buy it! Trust me!".
I’m writing a set of exercise books with photography challenges[1]. I have similar requirements: writing markdown and adding images and diagrams. My output is PDF, EPUB and MOBI.
I started with honkit, I liked that it is a popular and flexible tool. But it didn’t work well for my needs, I was especially unhappy with its default .pdf output.
I switched to pandoc and I am happy with that. I use pandoc-plot [2] for diagrams, it supports plantUML[3]. Also, I write markdown, but the .pdf files are generated through LaTeX and I like the end result much better.
[1]: https://merelysounds.gumroad.com/l/seven-photo-challenges
[2]: https://laurentrdc.github.io/pandoc-plot/MANUAL.html
[3]: https://plantuml.com/
- Emacs org mode for writing
- Adobe Illustrator for the figures
- Adobe Indesign (text exported from org to IDML via pandoc) for the layout
- Amazon KDP + Ingram spark (aka lightning source) for publishing and distribution.
Be honest about what you are or aren't able to do by yourself. Publishing a book requires a wide gamut of competences: writing, editing, typesetting, graphic design, etc.
I wrote a longer novella using the same approach, the repo still private as it's in copyediting phase (but it could be opened if there's interest). Using this, I only need to use make to generate both pdf and epub versions (or more formats if needed) -- the makefile has been simply extended with `pandoc -o nl21.epub main.tex`.
Because you can simply split the "main" file and the content, you can just have a short file for different formats -- one for print with left/right margins, one for screens with uniform margins, one smaller for ebook readers, etc.
You can make subfolders to properly organize content, images on one side, chapters in individual subfolders (all depending on how long it's going to be).
In Latex it's trivial to define macros to shorten anything that either you might repeat often, or things like dialog environments. Latex is well integrated with Tikz or other vector formats for diagrams.
Technically Pandoc can go from anything to anything, but I went back to Latex as it's the solution that gives you the best control over your documents while also getting 'out of the way' in all cases where you just want to write down and let the layout be managed by your theme. The syntax has its quirks and the install is heavy, but I find it to be my favourite software stack.
Stupidly simple but it really helped my nerdy mind. I know it’s not really what you asked but as a technique it helped me take something big and scary and break it down into something paced and manageable.
Software: see comment below, Scrivener or maybe Obsidian?
And as others have said, the marketing/community for a book is a full extra job, separate from being a writer.
EDIT: why downvoted?
Layouting is an entirely different job than writing. For long and very long textual content, I have yet to find automated results that give me control and look professional [0].
If you want to stay FOSS, learn Scribus. Becoming decent at typography and layouting is a bit of a journey, but I found it to be not too bad. If spending some money is okay, I'd go for Affinity Publisher.
None of those tools can do ePub. ePub is a format I've grown to hate; my pipeline currently consists of custom python -> pandoc -> custom python -> manual fixing.
For writing, don't worry too much. Use a program that you're familiar with and know how to use. If you don't write fiction with highly complex custom worldbuilding, a normal word processor is probably fine. I personally write urban fantasy novels, and I use a combination of Word and OneNote to manage everything as long as I am in the writing phase. It's more important to be easily able to change the layout than to have it finalized. For example, I like proof reading on Normseiten (A4, 30 Lines per page, less than 60 characters per line, monospaced font - I use Comic Mono) which is distinct from my usual writing format (Adobe Garamond, 12cm by 19cm pages with uniform 1.5cm borders).
> What are my options in terms of self-publishing?
Depends on the subject matter. If you're writing is any good, might as well try and score a distribution deal (at which point most of the layouting things will be out of your hands anyway).
All the best for your book project.
[0]: LaTeX sure looks nice, but gives me no control at all.
I would just go with Google Docs as if you are working with an editor this will make your life a lot easier than trying to teach someone how to send you diff patches of changes and discussing them inline in on GitHub PRs.
She also tried LibreOffice for a while and one of her documents got to a point where she would open it and it would render just a blank page. I had to unzip the file and extract the text from the xml using a custom parser I wrote. Lost all formatting.
Whatever you do, have backups.
Edit: in both cases everything was just text with very light formatting. No images, no other stuff that could eat all the memory, just mostly plain text.