Adopting type annotations in Python enables developers to catch errors earlier, document intent, and scale their projects more safely. This hands-on tutorial will guide attendees through the process of adding type annotations to an untyped codebase, exploring advanced typing features, dealing with type errors, and setting up typecheckers in real projects. Each section includes a live demo and a hands-on exercise period, with exercises available at multiple difficulty levels.
Throughout the session, we’ll use Pyrefly, a modern, open-source typechecker and language server, as our primary tool for static analysis, however the skills and concepts covered will be broadly applicable to other typecheckers. Typing experts and members of the Pyrefly team will be available throughout the session to provide guidance, answer questions, and help with troubleshooting.