Memory management is something the common Python user doesn’t need to bother with because the gory details of it are hidden deep within the interpreter itself. The garbage collector takes out the trash and we can spend our precious time bothering with more important things on our minds. Living in this encapsulated utopia is nice but sometimes it is worth it to peak behind the curtains to unleash the full power of your application. In this talk I want to show you when it is necessary to face this harsh world and convince you that it is in fact not as scary as it may seem. Using real life examples, I’m going to show you how to use the garbage collector and open source tooling to get control over the memory you might not even know you had at your disposal.