I recently created a paperback version of the C# course I teach at work. In this post I will explain what steps I took in order to have more or less synchronized versions of my course in both the analog and digital book publishing world: gitbook, Leanpub, Amazon, kobo and bol.com. As it is, there’s now 4 synchronized versions of my course:
- Gitbook: written in markdown, hosted on github, and freely available as an “in browser” -course here.
- Leanpub: basically the same functionality as gitbook, but also features a paid, digital version of the course in pdf, epub and mobi formats. Check it out here.
- Amazon: the printed & kindle version, using the self-publishing service of amazon (kdp.amazon.com). Buy it here 🙂
- Kobo & bol.com: ereader versions of the book (free with kobo plus) . Check it out here (kobo) and here (bol.com).
The original course was is written in markdown and hosted on github. My goal was to keep both the gitbook course and the published versions synchronized, so students weren’t forced to pay if they wanted to follow the course and could continue using the free gitbook version.
I now utilize the following workflow:
- I write the book in markdown (using Visual Code)
- Push updates to Github, which automatically appear in the gitbook version
- I then use a small script that does the following:
- Copy all files to a separate folder.
- Run a small C# script I wrote (which you can download here) that converts and gitbook-flavoured markdown to leanpub-flavoured markdown (Markua) and also removes (or adds) any parts that I don’t or do want in the Leanpub and Amazon versions.
- Push the resulting changes to a (private) github repo that is synced to the leanpub version of the course.
- I then create a pdf-version of the book on leanpub (unbranded) .
- I upload this version to amazon, which becomes the paperback version .
- I repeat the last two steps to create the ereader version for Amazon and kobo/bol.com.