2年ぶりにPHPerKaigi2025に参加したゾ

去年はいけなかったPHPerKaigi。今年は参加できた。

中野ということで練馬・ココネリではない新天地でのカンファレンス体験。 2年振りの参加ということもあり、自分の変化を大きく感じ、diffが取れたのでiwillblogをしていく。

過ごし方の変化

トークを聴く、以外にもカンファレンスの廊下で立ち話などをした。

以前だと同僚や同僚の友人などハブとなる人を介したコミュニケーションがメインだったような気がする(?)が、トークの感想を登壇者にしたり、オフラインならではの話ができたと思う。

特に @koriym との雑談はどれも面白かった。

最も面白かった話題の1つで、 homebrew-malt の紹介があった。

「なぜ開発環境が遅いのか?」という問に対して、 @koriymが出した答えは

「開発環境はmacなんだからmacで片付けたら良いじゃん」

というものだった。

HTTPサーバーとDBサーバーがそれぞれ独立して使えればよいので、使えるようにしてやればいいだけのことである。

みんなdockerの高速化を必死のパッチで行っているが、引き算の発想が自分の中になかったなあ。と凝り固まった脳筋が解れた気がした。

「当たり前を疑う」「自分の頭で考える」ということが難しいことの意味を改めて対峙できた。考えることが多すぎて、全てに思考のリソースを注ぐことができないことなんだと気づくことができた。

また、聞いたトークに対してはできる限り疑問を持ち、質問するように心がけた。

聞いたトーク

大規模ふるさと納税サイトをPHP8化した時の苦労話 by 瀬尾 一矢

他人事ではないと思い聞きに行った。

テンプレートエンジンのviewにPHPの単純なif文ではないロジックが大変そうだった。 この手の話を聴く度に、viewテンプレートは無限にありそうだなということと、技術選定の難しさ・重要さが身に染みた。

シンタックスハイライトが効かないのは当たり前だし、メンテナンスされているかどうかも怪しいなんてことはざらにある。

バージョンアップ前と後でリポジトリを分けていたという点は珍しいなと感じた。

安全に倒し切るリリースをするために:15年来レガシーシステムのフルリプレイス挑戦記 by さくらい

あまりにも刺さりすぎるタイトルで絶対に聞きに行きたかったトーク。

具体的な技術詳細は、エラーに対するtry catchをうまく活用し、Featureフラグを組み合わせながら小さく適用していく。という印象を受けた。

最も良いと思った技術は、リプレイスの新旧差分を 非同期で ログで吐き出しておき、タスク化して修正するフロー。 非同期であるがゆえに重要度と優先度を順位付けできるし、冷静にジャッジできる点が素晴らしくぜひ参考にしたい。

バグと内部組織に恐れず、前に進もうとするチームの話を聞きたくてAsk the Speakerをした。 チーム内での役割やメンバーの性格、内部組織との折衝など聞けて良かった。

プロダクトコードとOSSに学ぶ例外処理の選択肢 — キャッチするのか、投げっぱなしにするのか by asumikam

ふんわり使っていた例外に関して、がっちり使っているライブラリの実装から読み解くアプローチは面白かった。

自分は明確にRuntimeExceptionとLogicExceptionを使い分けていて、排他処理elseのパターンは基本的に後者を使っている。

でもそれは毎にプロダクトの思想が違うから他のプロダクトを見てみようというモチベーションにはならなかったので、大変学びになった。

モジュラーモノリスでスケーラブルなシステムを設計・開発する by プログラミングをするパンダ

今働いている現場も同じような思想で境界線が引かれていて、CIで交通整理が行われている。 マイクロサービスという言葉が流行っていた時代に、モジュラーモノリスという選択をした組織のその後の話が気になりすぎた為聞きに行った。

最後の5分からが、ものすごく面白そうで前半は何だったのだ? というくらい惹かれた。 リアーキテクチャによってCI/CDが早くなったと話していたが、個人的に直接的には関係しないだろうと思ってBASEのひとに質問した。

CIが早くなったのは、テストを高速化できた という理由。 インテグレーションテストを見直して、モジュール間の接続をモック化し、ユニットテストを増やすことでDBアクセスやメール送信などがテストで行われないように工夫した結果早くなったという。

CDが早くなったのは、 EC2からECSに移行した という理由。 インフラとソースコードが結びつかないようにモジュラーモノリスを採用、設計したとの話を聞いた。 コンテナ技術のビルドが早いというのはあまりピンとこなかったので、自分は学びがたりなさそうだと言うことに気づくことができた。

関心ごとの変化

人がコードを書き、組織がシステムに成る という信条が最近あるため、面白そうな参加者のチームの話を聞くようになった。

突発的なアンカンファレンスが気になるので、聞きたいトークに絶対行くスタンスはやめた。 アンカンファレンスは資料がアップされないことも多いにもかかわらず、面白い話も多く生えるからだ。

成功しているシステムは、組織に大きな秘密があることが多く、戦略的なチーム配置が求められる。 こんなものはカンファレンスの廊下でしか聞けない。

大いに活用できたし、コードを書くのは全体から見たら1つの手段なんだなと俯瞰できるようになった。

まとめ

めちゃくちゃ楽しかったです。

朝食代わりのドーナツデプロイや、無限コーヒー、広く寛げるゆったりとした会場手配。 程よいスポンサーブース。何から何まで自分のペースで楽しめるような動線が張り巡らされていて、次もまた来たいなと思いました。

懇親会の食事が激烈に美味しかった。 が腹パンパンでうまいこと食べられなかったことが悔しい。 ランチや間食を減らして、次は感動する懇親会料理に舌鼓を打ちまくりたい。

また、どこにいってもスタッフがおられて安心感がすごかった。

ビール瓶の蓋のオブザーバビリティも面白かった!

運営・準備、本当にお疲れさまでした。機会があれば登壇者としてもPHPerkaigiに関われたら良いなと思っています。

ありがとうございました!