採択に至るまでのプロセスについて、このブログで公開することで、参加者の皆さんのPyCon JPへの理解がより深まれば非常に嬉しく思います。またこれから技術カンファレンスを開催してみたいという方にとって、出来るだけ参考になるように書きたいと思います。
最初に少しだけ今年の採択プロセスをどう決めたか説明させてください。私は今年初めて採択を担当するチームに入り、メンバーと共にゼロベースに近いやり方で採択プロセスを構築しました。そのため以下に記載する内容は昨年度までのプロセスを直接説明するものではありません。同様に来年度以降もこのプロセスで採択を行うということも意味しません。それをご理解いただいた上で読んでいただければ幸いです。
(宣伝) PyCon JP 2024のチケットが発売されています。まだご購入されていない方はconnpassから!
https://pyconjp.connpass.com/event/324211/
採択の流れ
採択は以下の簡単に書くと3ステップで行われます。
CfPの開始
レビュアーによる非同期レビュー
採択会議
これらの3ステップについて少しだけ詳しく説明していきます。
1. CfPの開始
今年は開催から5ヶ月前の4月にCfPを開始しました。
CfP開始アナウンスのブログ投稿: https://pyconjp.blogspot.com/2024/04/pyconjp2024-cfp.html
CfP開始前には「どのような基準で今年は採択するか」というテーマについてチーム内で議論しました。これはCfPのアナウンスの中に採択基準が含まれていればプロポーザルを書く際の指針になると考えたためです。
「採択基準」を考える上では「そもそもどのようなプロポーザルをPyCon JP 2024で採択したいか」という根源的な質問に回答する必要があります。1つの正解がない類の命題なので、チーム内で議論を繰り返し、コンセンサスをまとめていきました。
その際、以下のような観点を考慮しながら議論を行いました。
参考にさせていただいた他のカンファレンスは下記の通りです。
議論の結果、今年は以下の4つの基準で採択を行うことにしました。
関連性: Pythonコミュニティに関連する内容か?
明確性: トークの内容が明確に書かれているか?
専門性: 内容が自身の経験や専門的な内容に基づいて書かれているか?
実用性: 面白い内容あるいは役に立つ内容か?
例年の採択基準と比べるとかなり少なくなりました。少なくなることのデメリットはもちろんあると思いますが、レビュー時にレビュアー同士の意思疎通は取りやすくなる、というメリットがありました。
そして、CfPを開始しました。最終的に集まったプロポーザルは243個でした。そのうちトークのプロポーザルが193個で枠が45個だったため約4.3倍の倍率でした。
2. レビュアーによる非同期レビュー
皆さんが続々とプロポーザルを提出してくれる中、レビュアーによる非同期レビューがスタートしました。
非同期レビューの目的は、「様々な専門分野を持った多数のレビュアーによる包括的なレビュー」です。PyCon JPのプロポーザルはありがたいことに、かなりバラエティに富んでいます。Web、DS、IoT、ゲーム、CPython実装など幅広い分野のプロポーザルがあるため、少ないメンバーでレビューを行うと特定の分野のプロポーザルが偏って採択されるおそれがあります。
またプロポーザル数の問題もあります。改めて今年のプロポーザル数は合計で 243 でした。1プロポーザルを3分でレビューしたとしてもすべてのプロポーザルをレビューするためには12時間かかります。そのため手分けをしてレビューする必要がありました。
レビュアーはPyCon JP 2024メンバー内/外から募集しました。全てのレビュアー候補者に対して「レビューのための専門性とその根拠となる経験」について伺い、PyCon JP 2024チームがレビュアーとして相応しいと判断した方にレビューを依頼しました。レビュアーは合計19人でした。
レビュアーの皆さんとは、まず前述した採択基準について認識合わせを行いました。その後、19人のレビュアーがCfP管理システムである pretalx を通じて、得点とコメントをプロポーザルに付けました。レビュー期間は1ヶ月弱レビュー数は合計で1170でした。レビュアーの皆さまに改めてこの場を借りてお礼申し上げます。
レビューの得点は「1. CfPの開始」に記載した「4つの採択基準」に基づいて1-5点で行いました。レビュー得点のヒストグラムは以下の通りです。
またレビュアーごとの得点分布をbox plotしたものが以下です。ご覧いただける通りレビュアーによって得点の付け方にバラツキがありました。これはある程度しょうがないかと思います。ただこれにより不公平な結果になるといけないため、基本的に全てのプロポーザルには3つ以上のレビューがされることを目標にし、結果的にはほぼ全てのプロポーザルに4つ以上のレビューがつきました。
さらに、次で解説する採択会議では、プロポーザルにおける標準偏差をチェックし、標準偏差が1以上のものはなんらかのレビュー観点のバラツキが発生していると考え、レビューコメントと中身を特に丁寧に確認するようにしました。
3. 採択会議
最終的な意思決定は、採択会議を開催しPyCon JP 2024メンバー内の責任者3名で行いました。採択会議は朝10:00-18:00くらいまで一日がかりで開催しました。
3名による偏った意思決定がなされないように、意思決定プロセスに問題がないかをオブザーバー2名が意思決定の方法を同席し確認しました。さらに最終的な結果にも問題がないかは、PyCon JP 2024メンバー全体で確認しました。
採択会議は以下の手順で行いました。
(準備) 難易度、ジャンルによる採択数のガイドライン決定
(準備) Tierの分類
(当日) 各プロポーザルの順次精査
(当日) タイムテーブル案の作成
1. (準備) 難易度、ジャンル、言語による採択数のガイドライン決定
まず採択するプロポーザルの全体的なバランスを決定しました。難易度、ジャンル、言語の3つの軸を元にそれぞれの目安の数を議論しました。目安の数を決めるにあたっては、昨年度の来場者アンケート(https://pyconjp.blogspot.com/2024/04/pycon-apac-2023.html)と今年のプロポーザルの比率を元に自分たちの経験と体感を鑑みて決定しました。
2. (準備) Tierの分割
採択会議で全てのプロポーザルを精査できるのがベストなのですが、243個のプロポーザルを1日で精査することは不可能なため、事前に5つのTierに分類しました。Tierの分類は、スコアの平均値とスコアのバラツキを元にルールを策定し、「安定してスコアが高いプロポーザルが高いTierに分配される」ように分類しました。
3. (当日) 各プロポーザルの順次精査
当日は会議室に集まり、大きいディスプレイにプロポーザルを投影して、1つずつ3人で精査していきました。上で作成したTierを用いて、「Tier1を全精査」→「Tier2を全精査」というように進めました。
今年からメンバーが採択を効率的に進めるためのアプリケーションを実装してくれたので、こちらも活用しながら精査を進めました。
この精査で採択されるプロポーザルが全て決定しました。
4. (当日) タイムテーブル案の作成
採択プロポーザルが決まったら、そのままタイムテーブル案の作成です。事前に印刷してきていたプロポーザルカードを用いて、並べながら「あーでもない、こーでもない」と言って決めていきました。
最終的にはそれぞれのメンバーが「私だったらこういう風にトークをまわりたい」という意見を言い合い、様々なバックグラウンドを持つ参加者にとって満足感のあるタイムテーブルを目指しました。
こうして7時間に及ぶ採択会議が完了しました。
採択されたプロポーザルの一覧は以下のブログ投稿でご確認ください。
PyCon JP 2024トーク、ポスター、コミュニティーポスター決定のお知らせ
https://pyconjp.blogspot.com/2024/08/pyconjp2024-talk-poster-and-community-poster-selections.html
最後に
以上がPyCon JP 2024 プロポーザル採択の裏側になります。いかがだったでしょうか?私は正直、当初想像していたよりも何倍も大変だったと感じました。今まで当たり前のように参加していた技術カンファレンスの裏側でこんな大変なプロセスが行われていたかと思うと、今まで以上に技術カンファレンス運営スタッフの方への感謝の気持ちが強くなりました。
今回は4.3倍という高倍率なこともあり、泣く泣く採択できなかったプロポーザルもありました。プロポーザルを見ていると皆さんの熱意が伝わってきて、運営側も気合を入れなければと感じました。
いよいよ本番が一ヶ月前に迫りました。この激戦から採択された皆さんの発表を心待ちにしています。参加者の皆さんも楽しみに待ちましょう。
PyCon JP 2024のチケットが発売されています。まだご購入されていない方はconnpassから!
https://pyconjp.connpass.com/event/324211/
PyCon JPの運営に興味を持った方は是非メンバーになってください。今年度の運営スタッフは募集終了していますが、来年度もまたスタッフを募集する予定です。是非ブログやSNSをチェックしていてください。