Modern Python Developer's Toolkit


This is a tutorial that I wish someone gave to me when I first learned Python.
Python is (relatively) easy and fun to learn, but there is a gap between “knowing how to write Python code” and “knowing the tools and good practices when writing Python code”. This tutorial will try to bridge this gap. It’s intended for beginners who know Python, but who are not sure how to write a Python project from scratch.

In this tutorial you will learn:
• How to set up VS Code for writing Python
• How to use virtualenv, pyenv, pipenv, and pipx
• How to use cookiecutter, how to structure your Python project, and how to easily deploy it with Docker
• What’s PEP8 and how to enforce it with code linters/formatters (black)
• Why you should use IPython instead of Python REPL
• How to test your code with pytest
• How to create great documentation with Sphinx

This workshop will consist of 2 hours of lectures, followed by 1 hour of practical exercise (a mini-project). Please, bring a laptop with VS Code, Docker, and a modern version of Python (3.6 or newer) installed.

Workshop's author is Sebastian Witowski.