Media Summary: today I talk about explicit type aliases in today we go over the brand new variadic generics and how they change the type system (finally type-able `*args`!) - generics: ... today we introduce another typing / mypy concept: generics! I show a few examples of how to write generic functions and generic ...

Python Typeguard Pep 647 Intermediate Anthony Explains 439 - Detailed Analysis & Overview

today I talk about explicit type aliases in today we go over the brand new variadic generics and how they change the type system (finally type-able `*args`!) - generics: ... today we introduce another typing / mypy concept: generics! I show a few examples of how to write generic functions and generic ... today I talk about whether adding type annotations to today I talk about conditional dependencies for platform-specific deps using environment markers! - dealing with backported ... today I talk about the absolutely-fastest way to start

00:00 (Welcome) 00:20 (Make Invalid States Unrepresentable - Bruce Eckel) ... today I talk about how to package up typed code -- either inline types or typing stubs and distribute it via pypi! - intro to typing: ... today I show how to properly handle boolean options in argparse as well as an easy mistake to avoid! - argparse tutorial: ... today I show you what the `TYPE_CHECKING` constant is in the typing module and why you would ever use it! - circular imports ... today I talk about the addition of `typing.Self` in python3.11 and why it's useful as well as several workarounds for older today I talk about __slots__ and __dict__ and how they relate to objects! playlist: ...

today I talk about why I pick -˃ int for return values for main functions instead of -˃ None (which works)! - testable command lines: ... today I talk about how to type annotate a -- fortunately it's really easy! - what is  ... today I follow up to the video about Protocol and show for doing some light structural type checking at ... today I share a useful trick that I get asked about a lot on stream when pushing branches! playlist: ...

Photo Gallery

python TypeGuard (PEP 647) (intermediate) anthony explains #439
python typing: explicit TypeAlias (PEP 613) (intermediate) anthony explains #365
python variadic generics (PEP 646) (intermediate - advanced) anthony explains #433
python Generics (intermediate) anthony explains #430
don't run `python my/script.py`! (beginner - intermediate) anthony explains #407
is python with types faster? (intermediate) anthony explains #126
python os / platform-specific deps (PEP 508) (intermediate) anthony explains #488
the fastest python startup with `python -S` (intermediate) anthony explains #411
2025 Python Typing Summit
packaging python typed code (intermediate) anthony explains #252
argparse: boolean option pitfall (beginner - intermediate) anthony explains #445
python typing: TYPE_CHECKING (intermediate) anthony explains #312
View Detailed Profile
python TypeGuard (PEP 647) (intermediate) anthony explains #439

python TypeGuard (PEP 647) (intermediate) anthony explains #439

today we go over narrowings and `

python typing: explicit TypeAlias (PEP 613) (intermediate) anthony explains #365

python typing: explicit TypeAlias (PEP 613) (intermediate) anthony explains #365

today I talk about explicit type aliases in

python variadic generics (PEP 646) (intermediate - advanced) anthony explains #433

python variadic generics (PEP 646) (intermediate - advanced) anthony explains #433

today we go over the brand new variadic generics and how they change the type system (finally type-able `*args`!) - generics: ...

python Generics (intermediate) anthony explains #430

python Generics (intermediate) anthony explains #430

today we introduce another typing / mypy concept: generics! I show a few examples of how to write generic functions and generic ...

don't run `python my/script.py`! (beginner - intermediate) anthony explains #407

don't run `python my/script.py`! (beginner - intermediate) anthony explains #407

today I show why running `

is python with types faster? (intermediate) anthony explains #126

is python with types faster? (intermediate) anthony explains #126

today I talk about whether adding type annotations to

python os / platform-specific deps (PEP 508) (intermediate) anthony explains #488

python os / platform-specific deps (PEP 508) (intermediate) anthony explains #488

today I talk about conditional dependencies for platform-specific deps using environment markers! - dealing with backported ...

the fastest python startup with `python -S` (intermediate) anthony explains #411

the fastest python startup with `python -S` (intermediate) anthony explains #411

today I talk about the absolutely-fastest way to start

2025 Python Typing Summit

2025 Python Typing Summit

https://us.pycon.org/2025/events/typing-summit/ 00:00 (Welcome) 00:20 (Make Invalid States Unrepresentable - Bruce Eckel) ...

packaging python typed code (intermediate) anthony explains #252

packaging python typed code (intermediate) anthony explains #252

today I talk about how to package up typed code -- either inline types or typing stubs and distribute it via pypi! - intro to typing: ...

argparse: boolean option pitfall (beginner - intermediate) anthony explains #445

argparse: boolean option pitfall (beginner - intermediate) anthony explains #445

today I show how to properly handle boolean options in argparse as well as an easy mistake to avoid! - argparse tutorial: ...

python typing: TYPE_CHECKING (intermediate) anthony explains #312

python typing: TYPE_CHECKING (intermediate) anthony explains #312

today I show you what the `TYPE_CHECKING` constant is in the typing module and why you would ever use it! - circular imports ...

typing Self (PEP 673) (intermediate) anthony explains #418

typing Self (PEP 673) (intermediate) anthony explains #418

today I talk about the addition of `typing.Self` in python3.11 and why it's useful as well as several workarounds for older

python: what is __slots__ and __dict__ (intermediate) anthony explains #122

python: what is __slots__ and __dict__ (intermediate) anthony explains #122

today I talk about __slots__ and __dict__ and how they relate to objects! playlist: ...

typing: why main() -˃ int (beginner - intermediate) anthony explains #110

typing: why main() -˃ int (beginner - intermediate) anthony explains #110

today I talk about why I pick -˃ int for return values for main functions instead of -˃ None (which works)! - testable command lines: ...

python: NewType vs aliases (intermediate) anthony explains #368

python: NewType vs aliases (intermediate) anthony explains #368

today is another

python typing: @property (beginner - intermediate) anthony explains #117

python typing: @property (beginner - intermediate) anthony explains #117

today I talk about how to type annotate a @property -- fortunately it's really easy! - what is @property ...

typing: Protocol + @runtime_checkable (intermediate) anthony explains #187

typing: Protocol + @runtime_checkable (intermediate) anthony explains #187

today I follow up to the video about Protocol and show @runtime_checkable for doing some light structural type checking at ...

git: useful trick for pushing branches (beginner - intermediate) anthony explains #037

git: useful trick for pushing branches (beginner - intermediate) anthony explains #037

today I share a useful trick that I get asked about a lot on stream when pushing branches! playlist: ...