Rambo Python
- Track:
- Tooling, Packaging, Developer Productivity
- Type:
- Tutorial
- Level:
- intermediate
- Duration:
- 180 minutes
Abstract
How to make your Python project robust ?
Python has a reputation for being a language that does not value software quality. However, over the past 20 years, Python has become a widely used language in the tech industry, with notable successes like Instagram, Spotify, Reddit, Dropbox, ….
To achieve high-quality software through Python programming, it is essential to understand the language's structure and its ecosystem, as well as the tools and practices to adopt. In this tutorial, we will explore the structure of a Python project, the language's fundamental principles, the many tools to use, and the techniques to be applied in order to work with Python at an industrial level.
We'll cover the whole Python project lifecycle (start, add dependencies, run, build, publish), guided by quality and automation tools (uv, ruff, pytest, Mypy, IDE, pre-commit, doit, Docker, CI), with a focus on standards and speed. You'll leave with a good understanding of this workflow, and a reference Python project that you'll be able to get examples from for your personnal or professional projects.
Pre-requisites for this tutorial:
- The ability to write Python code
- Access to install software on your machine (network connection and administrator rights)
- A shell (Powershell or Bash or ...)