見出し画像

PyConJP 2022に参加してきた

毎年恒例のPyConJPが今年も開催されました。そして今年は3年ぶりの完全オフラインです!
まだまだ油断できないタイミングでオンラインのチケットもありましたが、僕はもちろん迷わずオフライン参加しました。
そして、今回は会社の福利厚生の一貫として、会社負担で参加することができました。(転職して良かった…)
というわけで今回はそんなPyConJPの参加記録を残します。

前乗り

カンファレンスに朝から参加したかった僕は夜中にホテルにチェックインしました。

Day1

Day1は朝から期待に旨を膨らませ会場につきました。

久々に椅子が並べられたスクリーンの部屋に入ってすでに興奮状態ですw

Keynote

Keynoteは次の週にリリースを控えているPython3.11の目玉である速度改善の歴史の話でした。かなりマニアックな話でしたね。

ランチタイム

オフラインの目玉といえばお昼のお弁当!前回は初日にオフライン会場もありましたが、初日は午後からだったので実質こうしてお弁当が配られたのも3年ぶりということです。

オフラインカンファレンスといえばスポンサーブースめぐりも楽しみの一つです、各ブースでいろんな展示がありましたがFindyさんのガチャガチャ企画は面白かったです。
僕が当てたのはなんとこのPyConのために作ったというコースターでした!実はこの写真はブースの方に手伝ってもらって撮りました(この場を借りてありがとうございます!)
これからもなぜか動くコードを量産していきますw

そういえば今書いてるこのnoteもブースを出してました(別に忖度してnoteで書いているわけじゃないですよw)。
今年はブースをまわると貰えるシールを集めてTシャツがプレゼントされる企画をやってました。こういう企画モノは楽しいですよね!そして、無事にTシャツをゲットしました。

セッションは午後から始まりました。というわけで僕が聞いたセッションを紹介します。

イベント駆動アーキテクチャについて

Pythonのイベント駆動ライブラリであるCeleryとDjangoを使ってタスク管理をする仕組みが紹介されました。
イベント駆動アーキテクチャについての紹介や本番運用の勘所なども紹介されていて勉強になりました。

Pythonに上級テクニックは要らない(そして正しい付き合い方)

Pythonにかぎらずプログラムを書く上で気をつけたい話が出てきて、リーダブルコードに通ずるような内容でした。
本編とは関係ないですが、始まる前に機材トラブルで開始が遅れている間スピーカーの方がつなぎでフリートークをしていたのはすごく良かったです。それぐらいトラブルに余裕で対応できるようになりたいものですw

資料 はこちら

FastAPIと学ぶ WebRTC

WebRTCってなんとなくは知っていましたが、実際にの実装例をよくわかってなかったのでこのセッションはその悩みをなくすことができて自社のプロダクトにも導入していきたいと思いました。

サンプルコードのレポジトリはこちら↓資料のリンクも貼られてます

クロージング

クロージングでは恒例のLT大会がありました。久々のオフラインでのLTで笑いあり、トラブルありとオンラインでは味わえない生々しさを味わうことができました。

Day2

Day2は前日にゲットしたTシャツで一気にカンファレンスの気分を高めます(写真はありませんがDay1では去年のTシャツを着てました)

Keynote

Day2のKeynoteは医学部出身の西内さんのセッションでした。医学部ですが統計学にからむ分野の研究をされているのでPyConJPに来られたそうです。
医学部だからと言ってお医者さんであるとは限りませんw

西内さんがPythonに出会った頃、なんとこのnoteの全身であるcakesに使われたレコメンドエンジンを開発していたそうです!

小難しい話をするかと思いきやめちゃくちゃ面白くてわかりやすいトークでとても聴きごたえのある内容でした。

ランチタイム

2日目もしっかりお弁当が出ました。

そして、Day2ではPyConJP Association(PyConJPの運営団体)への寄付コーナーが有りました。今回無事オフライン開催されたことに感謝を込めてしっかり寄付をしました!

そしてDay2の夜にはパーティがあります。パーティに参加するには検査キットを使って陰性であることがわかったら参加できるようになります。そして無事に陰性だったのでいろんな意味で人権を獲得できましたw

お前はまだ本当のDjango ASGIを知らない。

Djangoの非同期対応にまつわる話でした。Djangoの3系から非同期対応が入りましたが、実は完全に非同期実装に対応しておらず、そのあたりが詳細に解説されました。なかなか興味深い話でした。次は実際にプロダクトを非同期対応させたときの苦労話が気になるところでした…

コーディング規約自動化: Pylintのカスタムルールを作ろう

チーム開発では欠かせないのがコーディングルール。そのコーディングルールに則って開発をしていきますが、PRレビューでそのコーディングルールに合っているかどうかを見ようとするとどうしても見落としが出がちです。
そのコーディングルールをコードに落とし込んでカスタムLinterを作るという内容です。Linterでカスタムルールを定義する方法やそのテクニックがまとめられてて簡単なやつから積極的に導入していきたいところです。

Python使いのためのスポーツデータ解析のきほん - PySparkとメジャーリーグデータを添えて

Day2最後のセッションはなんだかんだでおなじみの野球分析のセッションでした。今回はPySparkやGCPのサーバレス構成で分析する仕組みの話です。野球という題材ですがCloudを使ったアーキテクチャの例としてもいいなと思いました。

クロージング

Day2のクロージングでは恒例の記念撮影やスポンサーLTなど見どころ満載でした!最後まで席には人がいっぱいでなかなか盛り上がっていました。

パーティ

Day2のお楽しみのパーティの時間です。会場は20階の見晴らしのいいホールでした

このパーティではLTをやっていましたが、僕も当選してLTでお話しました。酔った勢いでやったのとこのパーティに参加した人だけの話にしたいので資料はあえて公開しませんw。

そして照明を落として夜景を楽しむ時間は夜景のきれいな湾岸ならではのコンテンツでした!

所感

というわけで2日間現地で久々にPyConJPを楽しめました。4年ぶりに現地でいろんな人達とお話できてやっぱりオフラインは最高です。オンラインでも聞けるような話もありますが、オフラインだからこそ発生するコミュニケーションがあって、本当に知識以上の満足感が得られました。
来年こそはCFPを出したい!!

趣味の開発についての小ネタを中心に書きます。