I claim that in the world of programming languages, learning to use a language’s affiliated software tools is harder than learning the language itself. For example, the C programmer really should learn to use gcc (or another compiler), GNU make, gdb, valgrind, and more. There are analogous but different needs for Python programmers.
What kinds of things does a Python programmer need to prepare or decide before writing any code?
- Python version
- An IDE and its plugins
- Virtual environment(s) and dependency management
- Project layout, including directory structure
- Version control
The links below will take you to information and recommendations for these decisions.
- Modern Python Developer’s Toolkit (PyConUS 2020) by Sebatsian Witowski
- I learned of this in Episode 279 of the podcast Talk Python to Me.
- Serious Python (book) and Starting your first Python project by Julien Danjou
- Hypermodern Python by Claudio Jolowicz
- How to set up a perfect Python project by Brendan Maginnis at Sourcery
- Structuring Your Project at The Hitchhiker’s Guide to Python
- Perfect Your Python Development Setup at Real Python