Hello, I'm masamori, a member of the content team in PyCon JP 2022.
In this blog, I would like to show you a sample proposal for PyCon JP 2021 and share with you what exactly you need to fill out.
Sample Proposal
The following is a sample proposal for a talk sharing a case study of automating PyCon JP staff activities with Python.
The italicized portions of the proposal form.
Proposal title
Statically Typed Programming Starting Now
Session type
Talk(30min)
Track
Python core
Language
English
Abstract
This section is for writing a summary of the talk.
Many large typing-related PEPs have been incorporated and implemented in recent years.
There is a lack of coherent information for those who are just starting out with type hinting, and many people do not know where to start with typing.
Therefore, we will start with the motivation to introduce type hinting, and then go step-by-step through the basics of type hinting, including updates up to Python 3.11, best practices, and more.
Description
This is where you write the details and structure (timeline) of the talk.
The more details you write, the more specific you can make your talk.
Since 2015, Python can be written like a statically typed language using typing modules and other tools introduced in Python 3.5.
This can greatly improve your development experience and review process.
I have been using type hints in my work for several years, have studied Haskell and
TypeScript, and have read books about type systems.
I think this session will be a stepping stone for the "type hint newbie."
Program
- Self-introduction (1 minute)
- Overview of the session (1 minute)
- Motivation (1 minute)
- Introduction to type hints and basic writing (2 minutes)
- Start with function arguments and return values (1 minute)
- Standard Collections types (1 minute)
- Type hints for intermediate users (9 minutes)
- Using abstract and concrete types (3 minutes)
- Using tuple and other Collections types (3 minutes)
- Generics, user-defined types (3 minutes)
- Backward compatibility between 3.8 and 3.9 (5 minutes)
- Overview of updates from Python 3.9 to 3.11 (9 minutes)
- (3.9) Generic types beginning with lowercase in standard Collections
- (3.10) Type union sets using the | operator
- (3.10) Parameter Specification Variables
- (3.10) Explicit type aliases: typing.TypeAlias
- (3.10) User-defined type guards: typing.TypeGuard
- (3.11) Explicit self typing by typing.Self
- Summary (2 minutes)
What not to talk about in this talk
- Developing typed libraries
- mypy configuration, command line options
- GitHub Actions, CircleCI and other CI usage
- History of type hinting
- Details of each PEP related to type hinting
- Implementing type hints and type checkers
- Abstract Syntax Tree (AST)
Notes
Notes may be written but are not subject to review.
Why did you choose this topic?
Because a number of type hinting-related PEPs have been adopted in the last few years, and the situation is very different from Python 3.5 (2015), when it first appeared, and we felt that there is not enough information for people starting typed programming in Python now.
Knowledges and know-how the audience can get from your talk
- The joy of introducing type hints
- How to write basic type hints
- Differences between tuple types and other Collections types
- Using abstract and concrete types
- Generics, user-defined types
- What's new in Python 3.9 through 3.11 related to type hinting
Prior knowledges speakers assume the audience to have
- Basic Python 3 syntax knowledge
- (not required, but would help with understanding): experience with other statically typed languages such as TypeScript or Rust
Audience experiment
Intermediate student
If you would like to speak online, please describe your reasons and situation. (foreign country, company policy, etc.)
If you do not wish to be an online speaker, you may leave this blank.
That's all for the sample proposals.
This blog does not include information on items that may not require explanation, such as "Agreement to the Code of Conduct".
However, if you have any questions, feel free to ask from this form!
We hope this blog will be helpful to you in deciding what exactly to write in the proposal section.