`typing.Protocol`: type hints as Guido intended - presented by Luciano Ramalho
EuroPython 2022 - `typing.Protocol`: type hints as Guido intended - presented by Luciano Ramalho [The Auditorium on 2022-07-15] Duck typing and static typing are not opposites. Go is a successful statically checked language with support for duck typing through interfaces that work like `typing.Protocol` does. A `Protocol` subclass defines an interface that past and future classes can implement without any coupling to the interface: they simply provide the required methods. That's statically checked duck typing: a powerful combination! In this talk we'll get back to basics looking at how duck typing is used in Python since the beginning, how `__dunder__` methods leverage that idea to support what we recognize as Pythonic code. Then we'll see how `typing.Protocol` fills the gap in the original PEP 484—Type Hints, and finally lets us properly annotate code that leverages the flexibility and loose coupling of duck typing. Finally, we'll look at the experience of the Go community to learn what makes a good Protocol. Spoiler alert: your favorite Python ABC may not be the basis of a useful Protocol! This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License http://creativecommons.org/licenses/b...

Keynote: Multithreaded Python without the GIL - presented by Sam Gross

Real-time metaprogramming, zero dependencies // Michael Labbé (Handmade Network Expo 2026)

Was Ein Photon Wirklich Ist... Und Warum Es So Seltsam Ist

Pythonic type hints with typing.Protocol - Luciano Ramalho

Run the Python Program with an AI Agent (🚀 Launchpad Lab)

You Don't Need JS for That

"It's Pythons All The Way Down: Python Types & Metaclasses Made Simple" - Mark Smith (PyCon AU 2019)

Lec 5 | RAG Part 3: Retrieval - (Vector Search, BM25, Hybrid Search) | Gen AI

Simple Code, High Performance

Simon Ward-Jones - Introducing More of the Standard Library | PyData London 2022

Writing Faster Python 3 - presented by Sebastian Witowski

System Design Explained: APIs, Databases, Caching, CDNs, Load Balancing & Production Infra

Stanislav Krapivnik: Russlands Wut kocht über – Steht ein EU-Russland-Krieg bevor?

Typing Summit - at PyCon US 2022

My Son Didn't Show Up for My Biggest Day. My Late Best Friend's Son Did... And Everything Changed

Clean Architectures in Python - presented by Leonardo Giordani

Protocols in Python: Why You Need Them - presented by Rogier van der Geer

Pro tips for writing great unit tests - Raymond Hettinger

System Design Course – APIs, Databases, Caching, CDNs, Load Balancing & Production Infra

