🐪

YAPC::Hakodate 2024 に参加したら最高だった!

2024/10/13に公開

フロントエンドカンファレンス北海道 2024 に始まり、いろいろなカンファレンス・勉強会への興味が出ている今日このごろ。
中でもかなり大規模なカンファレンスである、YAPC::Hakodate 2024 に行ってきました!Perl を書いたことがなくてもとても楽しかったので、YAPC おすすめです!

YAPC を掲げる未来大
YAPC を掲げる未来大

参加の決め手

YAPC というおもしろそうなカンファレンスがあることはいろいろな方のツイートから知っていましたが、その YAPC がほど近い[1]函館で開催されるということを知り、詳しく調べてみることに。

基本的には Perl を中心としたカンファレンスですが、最近では Perl 関係ないセッションも多くて、Perl 初心者でも楽しめるっぽい。実際に今回もセッションの数だけ見れば非 Perl のほうが多い気がします。

(完全に余談ですが、読みは「やぷしー」っぽい。「わいえーぴーしー」じゃないんだね……)

未来大に行ってみたいという気持ちがかねてからあったのもあり、行くことを決定。すぐに学生チケットと札幌丘珠―函館の航空券を取りました。

学生旅費支援を使うことで大幅に負担を軽減できることを知り、学生旅費支援も申し込みました。最初の抽選では落選し、函館の宿泊費の高さから諦めるか悩んだものの、繰り上げ抽選で当選したため参加できました。本当にありがとうございます!

前夜祭も行きたかった~

参加チケットには前夜祭・本編・懇親会のすべてがセットになっているため、当然前夜祭から参加するつもりでいました。
ところが、10/1 からの新学期早々に授業を休むわけにも行かず、泣く泣く金曜夜の函館入りに。

おもしろそうなセッションもあるし、どうやら函太郎のお寿司が出たらしい。いいなぁ……

https://fortee.jp/yapc-hakodate-2024/proposal/ad9a9b89-2fea-411d-bd6b-b09c227289db

https://fortee.jp/yapc-hakodate-2024/proposal/5c6af231-0dd8-4226-bb6f-30cb1ebc90aa

セッションの感想コーナー

タイムテーブル を見ると、Track A が Perl 中心、Track B, C がそれ以外という感じだったので、Track B, C が多めな結果に。ちょっと Perl 成分薄すぎたかなと思ったんですが、LT でいろいろ Perl の話も聞けて満足。

U25 支援企画

YAPC::Hakodate 2024 から始まった「U25 支援」のスポンサー LT・参加者によるトーク。

かっかさんによる「LLM と生きていくためのアーキテクチャ」では、デモ用の DB として Notion が用いられていました。簡易な DB というと SQLite 等を使いがちですが、人間が読むための DB として Notion は便利かも。(ちなみにめっちゃ遅いらしい)

https://speakerdeck.com/wisteria30/llmtosheng-kiteikutamenoakitekutiya

Oribe さんによるセッションでは、docker image save コマンドの出力が OCI 準拠になっていい話……と思いきや、この変更が修論発表直前ですべてがぶっ壊れたという衝撃的な事実も。普段 Docker を使っているときには気にすることの少ない、image の構造の話が聞けてよかった~

https://oribe.work/slides/YAPCHackodate2024

プロファイラ開発者と見る「推測するな、計測しろ」

https://fortee.jp/yapc-hakodate-2024/proposal/9bea263b-9ae7-41da-bdaf-deae04926a1a

ベストスピーカー賞に投票し、そして選ばれた本トーク。12 月に ISUCON を控える中で「計測って一体なにをどうすればいいんだ〜」という思いが強まっていたので、個人的にタイムリーな話題でした。

まず登壇への場慣れがすごい。そして出席簿が回ってきてびっくりした。登校する大学間違えたかと思った。

パフォーマンスが低い、という結果から原因に遡る過程で「推測」を挟むと、原因を特定できなかったり不正確な原因に至ったりするので、正しく「計測」をしようねというお話。また、パフォーマンスが低いことを知らないと計測が始まらないので、そもそも継続的に計測を続けることが大事。たしかに。

(スライドの図がとてもわかりやすかったんですが、公開されてなさそう?どこかに上がってたら教えてください…!)

テストコードの品質を客観的な数値で担保しよう 〜Mutation Testing のすすめ〜

https://fortee.jp/yapc-hakodate-2024/proposal/a91375cf-5d1c-4abf-bedf-b291c685e056

スタンプラリーをしながら Track B に移動して、QA シリーズ 1 つ目。「頑張って Test Coverage 上げても、そのテストの正しさは保証されなくない?」の解決のためのテスト手法、Mutation Testing の紹介でした。

テストコード中の演算子やリテラルを書き換えた「変異体」を生成し、そのテストが落ちることでオリジナルのテストの正しさを数値化するというもので、Google がめっちゃ頑張っているらしい。論文まで出してる[2]

最近、慣れないバックエンドと慣れないユニットテストを書いてるので、実際に導入してテストコードとプロダクトの品質をどっちも上げていきたい 💪

品質マネジメントで抑えておきたい 2 つのリスクを見分けて未来に備えよう

https://fortee.jp/yapc-hakodate-2024/proposal/da4c92fe-0a90-4fd1-9eec-946ce046c1e2

焼き鳥が焼ける QA エンジニアさんによる、QA シリーズ 2 つ目。「プロダクトリスク」と「プロジェクトリスク」を正確に判断することで、未来のリスクを的確に推測しようというお話。

  • リスク:不確かで、顕在化したときなにかが起こる
    • プロダクトリスク:ユーザーにもたらすリスク
    • プロジェクトリスク:進行上のリスク

プロダクトリスク(バグとか)からプロジェクトリスク(開発遅延)になるように、これらは相互に影響し合うので、適切に見分けて対処する必要があるけど、なかなか難しい……

データマイグレーションの成功戦略:サービスリニューアルで失敗しないための実践ガイド

https://fortee.jp/yapc-hakodate-2024/proposal/4d431198-2819-4329-9557-3e72bbfcc832

はてな社内の実際のデータ移行事例を交えながら、様々なデータ移行の経験者によるデータ移行のベストプラクティスのお話でした。

まず必要なのは、移行するデータの量を見積もること。これは実際にデータを移行する際の進捗の指標にもなります。
また、データ移行のためのバッチ処理を程よく並列に回すために、AWS Batch + Step Functions + S3 を用いた手法も紹介されていました。S3 ってそういう使い方もあるんですね……

https://x.com/su8ru_n/status/1842432112500101591

Web セキュリティのあるきかた

久々の Track A に戻ってきて、Web におけるセキュリティのお話。タイトルの「あるきかた」の通り、Web アプリケーション開発において多すぎる「気をつけること」を幅広く、時には詳しく見ていきます。

Cookie の __Host- prefix とか、javascript:alert(origin) が有効な話とか、Trusted Types とか、まだまだ知らないものが多くてまだまだ勉強しないといけない……

このセッションは 40 分とほかより長めなんですが、おもしろくてあっという間でした。ぜひスライドだけでも追ってみることをおすすめします。

最近「人間は XSS の前に無力なのでは」みたいな気持ちになっていたので、個人的タイムリーその2。[3]

https://x.com/su8ru_n/status/1840098997354279249

クレジットカードの製造技術

https://fortee.jp/yapc-hakodate-2024/proposal/9ac2a951-a514-4993-b2fb-ba2c29e935b8

スポンサーブースで休憩したのち、Track C に向かったら満員でびっくり。
実際に B/43 というサービスでクレジットカード[4]を発行しているスマートバンクさんの CTO による、クレジットカード発行・製造の技術的側面のお話でした。

他と比べてやや異色のセッションですが、こういったセッションが聞けるのも YAPC のいいところなのかなと思ったり。

カード番号の付番体系や、カードについている IC チップの認証フロー、国際ブランドである VISA とのやりとりの話など、とてもおもしろかったです。
特に重要な鍵を分割して複数の輸送会社を用いた輸送を行うキーセレモニーはかなり独特。

LT

LT は全部紹介していると大変なので、印象に残ったものを 2 つ。

これは Perl?それとも Ruby?クイズ〜〜〜〜〜!!!

まずは一番印象が強いこれ。

選択肢になかった「Perl、ところにより Ruby」とかいう天気予報みたいな答えも出つつ、楽しく Perl の文法を見ていたんですが……
Inline::Ruby ってなに!?!?

https://x.com/moznion/status/1842478440290701495

TypeScript エンジニアが感じた Perl のここが面白い!

2 つ目は、同じ TypeScript エンジニアとしてこれ。

真偽値ないのはさすがにびっくりしたけど、Go とかでも

const true bool = 0 == 0

みたいなのがツールチップから見えたりするので、実はあんまりいらないのかも…?

キーワードはだいぶ独特な感じがする、ちょっとかわいい(?)

ちなみにこの LT は本来 moznion さんの前だったみたいなんですが、機材トラブルで入れ替わったことにより面白さが倍増した気がします。
ヘンな Perl を見たあとにまともな Perl を見た

https://x.com/su8ru_n/status/1842473425694253085

あっという間に keynote

クイズのときの moznion さんと同一人物とは思えない始まりでしたが、登壇のうまさはやはり同じ。

大量生産によって量が質に転化していくという話で、自分の GitHub の年間 contributions が年々減っているのを思い出してギクリ。
2020 年の 2,375 contributions はさすがに異常ですが、せめて 4 桁には戻したいですね……

https://x.com/su8ru_n/status/1842488260779708869

https://x.com/su8ru_n/status/1842489411268677841

懇親会

函館駅前のホテルの大宴会場で行われた懇親会。入った途端大量のご飯が並んでて大興奮してました。おいしかった~~

どうしても知り合いや学生の輪でぬくぬくしがちなんですが、やっぱりいろんな人と話してみようと思って頑張って話しかけに行ったりもしました。
不慣れゆえの失礼もあったかと思います、その節はすみませんでした……

観光

函館には何度か足を運んでいますが、やきとり弁当をずっと食べそこねていました。
今回の旅のサブ目標です。

新函館北斗から帰る友人をお見送り 👋


北海道新幹線札幌延伸まだかな……

函館駅前でやきとり弁当を購入!空港[5]でいざ実食。


セコマでも売ってください…おねがいします…

そしていつもの北海道エアシステムで帰札!


このアングルで飛行機見れるの楽しい

まとめ

とても楽しかった上に、普段自分が触っている分野での学びも多く、ぜひ来年の福岡(九州行ったことない!)にも参加したいと思っています 💪
あわよくば登壇もしたい!

運営の方々、スポンサーの方々(特に学生旅費支援の!)、交流してくださった方々、ありがとうございました!

余談

函館市電 LT に行けなかったの悔しい

https://x.com/su8ru_n/status/1842918734706700546

脚注
  1. 内地に比べて近いというだけで、札幌から函館はあまり近場ではない ↩︎

  2. State of Mutation Testing at Google ↩︎

  3. このツイート、私の書いた記事でもないのにちょっと伸びてしまって申し訳ない気持ち ↩︎

  4. 正確には Visa プリペイドカードかも ↩︎

  5. 函館空港のビジネスラウンジは飲食物持ち込めて飲み物も豊富なので最高 ↩︎

GitHubで編集を提案

Discussion