SOLID is an acronym for five basic principles of Object Oriented Programming. The principles intend to make software entities easy to understand, maintain, unittest and reuse in different contexts. They are mostly used in strongly typed languages such as Java or C++. Probably that's why Python developers don't follow them too often or they do but didn't ever realize it. I'd like to talk about my experience in following the SOLID principles in Python. I will show you how they apply to Python as a dynamic language and what problems did they solve for me.