Solid Principles, Python.
because software developers know that code always grows and code always changes. So we better protect ourselves from requirement changes. You saw that the tools that are used by the principals are very similar. A bit of separation here, some polymorphism there, and everything is fine again.