Using other people's code.
WHAT A PACKAGE IS
Reusable code published by someone else.
WHY THEY MATTER
Almost everything you need already exists.
HOW TO INSTALL ONE
Using Python's package installer, into your active virtual environment.
WHAT TO RECORD
Your dependencies, in a requirements file.
WHY
So the environment can be recreated exactly, elsewhere.
WHAT TO PIN
Specific versions, for anything going to production.
WHY PIN
An unpinned dependency updates and changes behaviour without warning.
WHAT TO CHECK BEFORE INSTALLING A PACKAGE
Whether it is actively maintained How widely used it is What it depends on Whether you need it at all
THAT LAST QUESTION
Each dependency is code you now rely on and must keep updated.
WHAT TO AVOID
Installing packages casually Packages with names similar to popular ones
THAT SECOND POINT
Deliberately misnamed packages exist to catch typing errors. Check the name.
WHAT TO REVIEW
Your dependencies, periodically.