PyCon CZ

PyCon CZ 23
15–17 September
Prague

Behind the Scenes of tox: Rewriting a Tool with more than 10 Million Monthly Downloads a talk by Jürgen Gmach

Friday 15 September 11:50 (30 minutes)
__main__

Do you recall what developer legend Joel Spolsky called the “single worst strategic mistake” in Things You Should Never Do?

Rewriting software from scratch.

That is what we did. For the tox test automation tool. A tool, downloaded more than 10 million times a month, both heavily used in the open source community, and in multi-billion dollar companies alike.

I invite you to join me on the very personal journey of rewriting tox, a journey, which already started in 2019. We will have a look at the initial motivations for the rewrite, the design decisions, the challenges, and the lessons learned.

We will reconstruct why it took more than three years, from the idea to the release, and why this was a good thing.

I will explain what we did to take care that the release would cause the least amount of issues, and why we still received dozens and dozens of bug reports about regressions the days after the release.

But most importantly, you will get to know the maintainers and their motivation.

What do you need to know to enjoy this talk

Python level

You can write basic scripts.

About the topic

No previous knowledge of the topic is required, basic concepts will be explained.

Jürgen Gmach

I am an experienced software engineer with a passion for Python and Linux, developing open source software both at my day job at Canonical, and at night as a maintainer of the tox automation framework. I am a fellow of the Python Software Foundation, and I have contributed to more than 300 open source projects. Curious how I did that? Please find me at the conference!

Friday 15 September

11:10 __floor__
11:10 __init__
11:40

Break

11:50 __floor__

Panel Discussion: You Build It You Run It

Ladislav Prskavec, Vilibald Wanča, Nada Jašíková & Karel Minařík
11:50 __init__
12:20 __main__

Break

12:20

Lunch

12:30 __main__
12:40 __floor__

Lunch