Sunday 2:30 p.m.–3 p.m. in Grand Ballroom A

Automating Code Quality

Kyle Knapp


Writing quality Python code can be both tough and tedious. On top of the general design, there are many code quality aspects that you need to watch out for when writing and reviewing code such as adherence to PEP8, docstring quality, test quality, etc. Furthermore, everyone is human. If you are catching these code quality issues by hand, there is a good chance that at some point you will miss an easy opportunity to improve code quality. If the quality check can be done by a machine, then why would you even try to catch the code quality issue by hand? In the end, the machine will be able to perform the quality check with much more speed, accuracy, and consistency than a person. This talk will dive into how existing open source projects offload and automate many of these code quality checks resulting in: - A higher quality and a more consistent codebase - Maintainers being able to focus more on the higher level design and interfaces of a project. - An improved contribution process and higher quality pull requests from external contributors By diving into how these open source projects automate code quality checks, you will learn about: - The available tooling related to checking code quality such as `flake8`, `pylint`, `coverage`, etc. - How to automate code quality checks for both a development and team setting. - First-hand accounts of the benefits and lessons learned from automating code quality checks in real-life open source projects.