Code a Coding Book
Publish a paperback with Node, Haskell,
Vim, Markdown, ASTs, and lots of piping.
JonathanLeeMartin.com/books
Slide 2
Slide 2 text
I’m Jonathan Lee Martin.
@nybblr
Slide 3
Slide 3 text
I teach developers
to craft exceptional software.
Slide 4
Slide 4 text
I’ve worked with over 300 developers —
from career switchers to senior developers
at Fortune 100 companies — through their
journey into software development.
Slide 5
Slide 5 text
Functional React 3 days
Practical TDD 5 days
Full Stack JavaScript 8 week
Express in a Hurry 1 day
Remote Collaboration 5 days
Functional Programming in JS 3 days
Slide 6
Slide 6 text
Let’s do something together.
jonathanleemartin.com
Functional React 3 days
Practical TDD 5 days
Full Stack JavaScript 8 week
Express in a Hurry 1 day
Remote Collaboration 5 days
Functional Programming in JS 3 days
Slide 7
Slide 7 text
“The composition of vast books is a
laborious and impoverishing
extravagance.”
— Jorge Luis Borges
Slide 8
Slide 8 text
To write a book, you must
first invent the universe.
(mostly with JavaScript)
Slide 9
Slide 9 text
Today, we’ll cover:
1. High-level timeline of writing the book
2. AST preprocessing for Web, ePub, MOBI, LaTeX, PDF
3. Tech behind online distribution
4. Unique challenges going from digital to print
5. Q + A
Slide 10
Slide 10 text
Timeline
From concept to print
Slide 11
Slide 11 text
Timeline
1. Planning
2. Writing
3. Digital pipeline
4. Technical reviews
5. Editing
6. Officialese
7. Final digital layout
tweaks
8. Digital distribution
9. Print pipeline
10. Print layout
revisions
11. Prepress
12. Proofing, proofing,
proofing
13. Proof hard copy
14. Submit to Amazon
15. Optimize
marketing copy
16. Real work begins!
3–4 months
Output Preprocessing
1. Web (preview + debugging)
2. ePub (main eBook format)
3. MOBI (Kindle)
4. PDF via TeX (LaTeX + XeLaTeX)
Slide 15
Slide 15 text
Distribution
Online eBook
Slide 16
Slide 16 text
github.com/nybblr/bookseller-api
Slide 17
Slide 17 text
Print
From digital to
Slide 18
Slide 18 text
Q + A
1. How does that highlight-diff filter work?
2. Why pipes instead of Make or Gulp?
3. Why not use an off-the-shelf solution for
writing / rendering / distribution?
4. What’s the book actually about?
Slide 19
Slide 19 text
Let’s do something together.
jonathanleemartin.com