As some of you may know, I've written 1.08333 books in my native language - a 620 page book for intermediate / semi-advance programmers called something close to "Understanding Programming" or "To Understand Programming" (it was surprisingly well received and it even got an award from the Polish Information Processing Society), and a chapter in a reverse engineering book that had 12 authors (I've also served as a mix of a project manager and technical editor in this case). Anyway, for a long time I wanted to bring the first book to English, and I even got it translated to English and shown it to some publishers. However at that time I didn't really have the energy/time to follow up on it, and it was in great need of some serious editing.
In early 2018 I started thinking about the second edition of the book - what should I change? Update? Add? Or perhaps remove / move to an appendix? While there were several options, there was one thing I was sure about - I want to release both the Polish and English version at the same time.
This leads us to the main question: what software / technical stack do you recommend to write / edit a book in?
It seems to be a strange question, given that I already have experience in the topic both from an author's perspective, as well as an editor's perspective. However the software stack I've used previously was a weird merge between what I wanted to use and what the publisher wanted me to use - this meant that we had to convert the rich text first from the word processor I and my proofreaders/editors used (Google Docs), to a word processor the publisher's proofreaders/editors used, and later to the application the DTP folks used. This sole process introduced A LOT of typos for some reason (especially at the DTP phase) and also meant that none of the fixes made at any of the last two stages were ever ported to Google Docs.
So I'm asking the question above since I basically want to change the software stack I will use for the second edition / English version (and since I'm going self-publishing way I have full flexibility here).
Now here's the thing - my needs are actually pretty weird. I.e. here's what I would expect from a perfect stack for my use-case:
• The author should be able to write/modify the text, while at the same time proofreaders should be able to add suggestions / comments.
• The rich text should not operate on styles like "bold", "italic", "font: monospace", but rather on style classes like "code", "normal text", "command", "filesystem path", etc (so when I when I decide that e.g. filesystem paths should not be monospace, but for example italic, I can do that for the whole book with one style class change).
• It should be a WYSIWYG editor as far as rich text / tables / graphics are concerned (it doesn't have to show the same layout as the target ones - well, that's even possible in the first place).
• It should be automatically compilable to PDF (for printing), PDF (for screen display), EPUB, MOBI, and HTML, with separate styles/layout configs (i.e. there should be no need to manually tweak the source text to fix random bugs in DTP - this should all be fixable in style/layout configuration which should be agnostic to the source text).
• Added bonus is being able to display the English / Polish version side by side while editing.
Yeah, I know, that's probably too much to ask for ;)
But if you have any hints or tips on what software should I look at, please let me know! I will be grateful :)
(Please let me know even if you have an idea that ticks only some of these boxes.)
Thanks!
P.S. I want the book to be published in 2019, but I still have to work out some other details. And finish some other projects. I'll keep you updated on the progress of things in case you're interested.
Sections
- lang: |
- RSS: |
- About me
- Tools
- → YT YouTube (EN)
- → D Discord
- → M Mastodon
- → T Twitter
- → GH GitHub
Links / Blogs
- → dragonsector.pl
- → vexillium.org
- Security/Hacking:
- Reverse Eng./Low-Level:
- Programming/Code:
Posts
- Paged Out! #5 is out,
- CVEs of SSH talk this Thursday,
- Debug Log: Internet doesn't work (it was the PSU),
- FAQ: The tragedy of low-level exploitation,
- Solving Hx8 Teaser 2 highlight videos!,
- Gynvael on SECURITYbreak podcast,
- Paged Out! #4 is out,
- I won't be able to attend CONFidence'24 after all :(,
- xz/liblzma: Bash-stage Obfuscation Explained,
- Two of my bookmarklets: image extraction and simple TTS,
- → see all posts on main page
// copyright © Gynvael Coldwind
// design & art by Xa
// logo font (birdman regular) by utopiafonts / Dale Harris
/* the author and owner of this blog hereby allows anyone to test the security of this blog (on HTTP level only, the server is not mine, so let's leave it alone ;>), and try to break in (including successful breaks) without any consequences of any kind (DoS attacks are an exception here) ... I'll add that I planted in some places funny photos of some kittens, there are 7 of them right now, so have fun looking for them ;> let me know if You find them all, I'll add some congratz message or sth ;> */
Vulns found in blog:
* XSS (pers, user-inter) by ged_
* XSS (non-pers) by Anno & Tracerout
* XSS (pers) by Anno & Tracerout
* Blind SQLI by Sławomir Błażek
* XSS (pers) by Sławomir Błażek
// design & art by Xa
// logo font (birdman regular) by utopiafonts / Dale Harris
/* the author and owner of this blog hereby allows anyone to test the security of this blog (on HTTP level only, the server is not mine, so let's leave it alone ;>), and try to break in (including successful breaks) without any consequences of any kind (DoS attacks are an exception here) ... I'll add that I planted in some places funny photos of some kittens, there are 7 of them right now, so have fun looking for them ;> let me know if You find them all, I'll add some congratz message or sth ;> */
Vulns found in blog:
* XSS (pers, user-inter) by ged_
* XSS (non-pers) by Anno & Tracerout
* XSS (pers) by Anno & Tracerout
* Blind SQLI by Sławomir Błażek
* XSS (pers) by Sławomir Błażek
Comments:
Private git repo for modifications, comments, editing - you could create branches, merge varoius versions with corrections.
But the main question is: who are your users? Are.they technical? Will they manage using all those different pieces of your ideal stack?
It's worth looking at OpenBSD's mandoc - maybe it will suit your needs. Here's nice summary of various formats: https://undeadly.org/cgi?action=article&sid=20170304230520 (at the very bottom) Avoid markdown.
You can perfectly use styles in there
Haven't tried collaborating in real time, but I think it's possible.
It stores to PDF in different formats, and has a great toolkit for ebook formats and publishing
Not sure about side by side editing, but obviously you can open both windows side by side.
Jurgen (at gaeremyn point be)
Do you have the english version available? I'd pay for it!
thanks
Add a comment: