On May 25th, 2017 Blackrock in London hosted a Python meetup. In this talk Leonardo introduced the concept of Abstract Base Classes (ABCs) and what makes them a smart use of metaclasses in Python. He delved into ABCs through 3 levels of complexity to show how they can be used effectively, when to use them and how Python uses them internally.
Leonardo started off with explaining the importance of behavior over structure and touched upon Collections – a Python core module which provides classes representing interesting behaviors. Next, Leonardo dived into Abstract Base Classes by explaining how they can categorise objects and providing an example. Lastly, he gave an overview on how to build your own ABCs and how you can use ABCs to build interfaces.