Talks

2020

Composition over inheritance in Python

Python Pizza Online

Both inheritance and composition are tools for code re-use in object-oriented programming. I explained the different concepts inheritance and composition follow for modelling relationships between types. I demonstrated how we can refactor an application from my python-super blog post, that was based on cooperative multiple inheritance, to use composition instead to achieve a more flexible and robust design.

2019

Introduction to automated testing with pytest

PyCon DE & PyData Berlin, Germany

I gave an introduction into automated testing in Python with pytest by live-coding on the earth project. We learned about pytest features for skipping tests, generating code-coverage reports, selecting tests with markers, generating tests for different parameters, and more.

Advanced pytest

EuroPython Basel, Switzerland

My talk was centered around test suite customizations with pytest. I demonstrated how to automatically add markers to slow running tests, run only tests that use a fixture which can be specified on the CLI, generate test reports in a custom format, and automatically create GitHub issues for test regressions. I wrapped up my talk with using cookiecutter to create ready-to-publish Python packages from these customizations.

Customizing your pytest test suite

Mozilla Automationeers Assemble Online

I gave an introduction into automated testing in Python with pytest by live-coding on the earth project. We looked into developing automated tests, writing pytest plugins and explored ideas for test suite customizations, that can help teams manage a growing test suite.

Customizing your pytest test suite

PyBerlin Berlin, Germany

I gave an introduction into automated testing in Python with pytest by live-coding on the earth project. We looked into developing automated tests, writing pytest plugins and explored ideas for test suite customizations, that can help teams manage a growing test suite.

My talk at PyBerlin was not recorded, however another version of this talk was live streamed on YouTube and the recording is now available on the Mozilla YouTube channel. See above.

2018

The challenges of maintaining a popular open-source project

EuroPython Edinburgh, UK

Maintaining open-source projects can be incredibly rewarding and fun, but it can also be quite frustrating. It involves so much more than writing code or merging GitHub pull-requests, and yet sometimes it feels like that’s what most people think. I shared what it means to maintain a popular project like cookiecutter and gave practical advice for managing expectations of the community.

2017

Hi, my name is README!

Write the Docs Europe Prague, Czechia

A good README file briefly and concisely explains what your software does, how it can be installed and describes its API. Ideally it also provides information on the technical requirements, the license it uses and how the project is managed. How to get in touch to report problems and give feedback? Where can potential users find the Code of Conduct for your project? I provided examples for good README files and shared my thoughts on how documentation can help newcomers as well as more experienced users with your project and encourage them to engage with your community.

Hi, my name is README!

EuroPython Rimini, Italy

A good README file briefly and concisely explains what your software does, how it can be installed and describes its API. Ideally it also provides information on the technical requirements, the license it uses and how the project is managed. How to get in touch to report problems and give feedback? Where can potential users find the Code of Conduct for your project? I provided examples for good README files and shared my thoughts on how documentation can help newcomers as well as more experienced users with your project and encourage them to engage with your community.

Kickstarting projects with Cookiecutter

PyData Berlin Berlin, Germany

I gave an introduction to the cookiecutter open-source project, how to install it from PyPI, use its command-line interface to generate boilerplate code for different types of applications from project templates, and finally how to author template projects.

Testing Python Code with pytest

Weekly Python Chat Online

I was invited by Trey Hunner to give an introduction into testing Python code with pytest at the Weekly Python Chat live video chat event.

2016

What's new in pytest 3.0

EuroPython Bilbao, Spain

I demonstrated new features, covered important bug-fixes, as well as backwards incompatible changes and deprecations of the pytest 3.0 release.

Cookiecutter - or what we can learn from templates

Python Glasgow Glasgow, UK

I shared my thoughts on using cookiecutter templates for kickstarting new projects and how templates help with on-boarding new team members.

2015

Cookiecutter: Come to the Dark Side!

EuroPython Bilbao, Spain

I spoke about my involvement in the cookiecutter open-source project, highlighted a range of useful cookiecutter templates, and demonstrated how to use the commmand-line tool to generate a kivy app for Android mobile devices.