Types, In My Python?!

It's more likely than you think!

Types, In My Python? is an analysis of Python's unique relationship to typing systems.

I will start by examining Python's strange dual nature:

A dynamically typed scripting language that more or less works as expected.

A strongly typed language with strict limits on what you can do with an object,

and now able to statically analyze your usages to make sure you're doing things right.

Following that, I will examine some of the concepts we talk about as a community in more detail.

What do we mean by "duck typing", and how does it apply in light of Python's dual nature?

Why is it static analysis, and not static typing?

To end, I will make a proposal regarding the best method to use both sides of Python's type system.

The goal is to accelerate your development and reduce tedium.

Is there a happy middle ground between strict static typing and a dynamic free-for-all?

About Piper Thunstrom

Piper is a pythonista, game enthusiast, and web developer. You might know her from her talks given at conferences around the United States, a local tech meetup, or her open source work. She speaks on community building, game development, CS education, and trans identity in tech. She's been involved in the Python community since 2014 with previous experience as an organizer in the NYC Python user groups. You can follow her work at piper.thunstrom.dev