2022-06-05

PyCon JP 2022 サンプルプロポーザル

こんにちは!Talk担当masamoriです。

このブログではPyCon JP 2022のプロポーザルのサンプルを示し、具体的にどんなことを記入すれば良いのかを皆さんと共有したいと思っています。

 


サンプルプロポーザル

PyCon JP のスタッフ活動をPythonで自動化した事例を共有するトークのプロポーザルをサンプルとします。

斜体の部分をプロポーザルのフォームに記載します。


Proposal title

今から始める静的型付けプログラミング

 

Session type

 Talk(30min)


Track

Python core


Language

Japanese


Abstract

トークの概要を書く項目です。

近年でたくさんの大きなtyping関連のPEPが取り込まれ、実装されてきました。今から型ヒントを始める人向けのまとまった情報が少ないので、 typingをどこから始めればよいのかわからない人も多いと思います。

そこで、型ヒントを導入するモチベーションから始め、型ヒントの基本を順を追って説明し、Python3.11までのアップデート、ベストプラクティスなども交えてお伝えします。


Description

トークの詳細と構成(タイムライン)を書く箇所です。

詳しく書くほど具体的にトークの内容を伝えることができます。

2015年よりPython 3.5で導入された型付けモジュールなどを用いて、静的型付け言語のようにPythonを書くことができるようになりました。

これにより、開発経験やレビュープロセスを大幅に改善することができます。

私は数年前から仕事でタイプヒントを使うようになり、HaskellとTypeScirptを勉強した経験があり、型システムについての本を読んでいます。このセッションは "型ヒント初心者" の足がかりになると思います。

予定稿

  • 自己紹介 (1分)
  • 本セッションの概要説明 (1分)
  • モチベーション (1分)
  • 型ヒントの紹介、基本的な書き方 (2分)
    • まずは関数の引数と返り値から始める(1分)
    •  標準Collections型(1分)
  • 中級者向け型ヒント(9分)
    • 抽象型と具象型の使い分け(3分)
    •  tupleと他のCollections型の使い分け(3分)
    • Generics, ユーザー定義型(3分)
  • 3.8と3.9への後方互換性について(5分)
  • Python 3.9から3.11までのアップデート概要(9分)
    • (3.9) 標準Collectionsにおける小文字始まりのGeneric型
    • (3.10) | 演算子を使用した型の和集合
    • (3.10) Parameter Specification Variables(引数指定変数)
    • (3.10) 明示的な型エイリアス: typing.TypeAlias
    • (3.10) ユーザ定義の型ガード: typing.TypeGuard
    • (3.11) typing.Selfによる明示的なselfの型付け
  • まとめ (2分)

このトークで話さないこと

  • 型付けされたライブラリを開発すること
  • mypyの設定、コマンドラインオプション
  • GitHub Actions, Circle CIなどCIでの使用方法
  • 型ヒントの歴史
  • 型ヒント関連の各PEPの詳細
  • 型ヒントや型チェッカーの実装
  • 抽象構文木(AST)

  

Notes

Notesは書いてもレビューの対象にはなりません。

-

 

この題材を選んだ理由やきっかけ

ここ数年で型ヒント関連のPEPがいくつも採択され、登場したPython 3.5(2015年)とは大きく違う状況になっており、今からPythonで型付けプログラミングを始める人の情報が少ないと感じたため

 

オーディエンスが持って帰れる具体的な知識やノウハウ

  • 型ヒントを導入すると何が嬉しいのか
  • 型ヒントの基本的な書き方
  • tuple型とその他のCollections型の違い
  • 抽象型と具象型の使い分け
  • Generics、ユーザー定義型
  • Python 3.9から3.11までの型ヒント関連の新機能

 

オーディエンスに求める前提知識

  • 基本的なPython 3の文法知識
  • (必須ではないが、あれば理解の助けになるもの): TypeScriptやRustなど他の静的型付け言語の使用経験

 

オーディエンスのPythonのレベル

中級者

 

オンライン登壇を希望の場合には、理由や事情の記入をお願いします。(海外・会社のポリシーなど)

オンライン登壇を希望しない場合は、空白で結構です。


サンプルプロポーザルは以上です。

こちらのブログでは「行動規範への同意」など、説明が不要そうであるものに関しては記載していません。

ですが、何か質問がある場合には、こちらの質問フォームから遠慮なく質問してください!

このブログがプロポーザルの項目に具体的に何を書くかの参考になれば幸いです。

 

プロポーザルフォームはこちら



 

0 件のコメント:

コメントを投稿