I

I wrote a book on idiomatic Python. Here's its insane build/test system

Hacker News

I wrote a book on idiomatic Python. Here's its insane build/test system

Background: I've been working on a book to help developers learn and write idiomatic Python. It's taken far longer than I imagined, but today I made it available for purchase (http://www.jeffknupp.com/writing-idiomatic-python-ebook). The automated build and test system I'm using is ridiculous. It uses: virtualenv, tox, pytest, coverage, doctest, pandoc, make, xelatex, makeindex, and a ~200 line Python script to collect and format the output. The details of the build/test system I created are described in detail here: http://www.jeffknupp.com/blog/2013/01/24/the-writing-idiomatic-python-ebook-is-finally-available/ The result is two PDF files... Does anyone who's done something similar have/know of an easier way to write a technical book (where code samples must be tested) that will eventually need to be translated into multiple formats? I know I'm not the first person to write a technical book, but I'm not aware of any existing tools (commercial or otherwise) to make the process easier. Does everyone who writes a technical book cobble together their own system? I ask because I plan to eventually write a book where C++ is the language being discussed. The thought of going through this all again makes me shudder. After finishing this book, I'm convinced there must be a better way.

Share card

Actual performance

15points
2comments
Made the leaderboard

Launch Intel predictions

Analyze your own launch →
Indie HackersFits the IH revenue-focused audience · Strong signals: created, latex · Missing: supports, reddit linkedin, podcasting
68%68% predicted probability of success on Indie Hackers, based on ML models trained on real launch data.
Hacker NewsStrong engagement from HN community · Strong signals: exist, existing, io · Missing: https docs, excited, just released
66%66% predicted probability of success on Hacker News, based on ML models trained on real launch data.
nativeThis product was originally launched on this platform.
Product HuntUnlikely to reach the leaderboard · Strong signals: using, code · Missing: mac, agents, macos
48%48% predicted probability of success on Product Hunt, based on ML models trained on real launch data.
AppSumoMay struggle as an AppSumo deal · Missing: plus, platform, intuitive
35%35% predicted probability of success on AppSumo, based on ML models trained on real launch data.
TrustMRRLess likely to generate early MRR · Strong signals: way · Missing: mobile apps, ios, personal
27%27% predicted probability of success on TrustMRR, based on ML models trained on real launch data.
Acquire.comPre-revenue stage for this audience · Missing: arr, mrr, revenue
15%15% predicted probability of success on Acquire.com, based on ML models trained on real launch data.
BetaListMay not resonate with beta-testers · Missing: web3, chat, crypto
0%0% predicted probability of success on BetaList, based on ML models trained on real launch data.

Correct prediction on native model

Similar products

YourBase
YourBase69%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Build and Test Acceleration Service

Indie Hackers10b2b
I
I wrote a book on Python regular expressions63%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

I wrote a book on Python regular expressions

Hacker News193
I
I wrote a book about Python76%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

I wrote a book about Python

Hacker News181
St
Strider – test deployments and bake AMIs from Python42%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Strider – test deployments and bake AMIs from Python

Hacker News1
Py
Python Polars nightly build for everyone43%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Python Polars nightly build for everyone

Hacker News1
Py
Py-FSRS – Build your own spaced repetition system in Python50%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Py-FSRS – Build your own spaced repetition system in Python

Hacker News3
Pa
Pants – Build System for Java, Scala and Python40%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Pants – Build System for Java, Scala and Python

Hacker News2
My
My self-pub book on Evolutionary Algorithms with Python (inc. sample)61%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

My self-pub book on Evolutionary Algorithms with Python (inc. sample)

Hacker News13
Td
Tdubs – better test doubles for python46%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Tdubs – better test doubles for python

Hacker News1
We
We made a tool to build, test and send emails with React50%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

We made a tool to build, test and send emails with React

Hacker News1