How to start a Python project?

Tuesday, September 1, 2020 • edited Wednesday, September 2, 2020

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.

Python

Entertaining Academics

Legitimately free statistics books