PHPerKaigi 2024 参加レポート Takashi Kakizoe

こんにちは、エンジニアの柿添です。

秋に記事を書いて以来サボりにサボり、春を迎えようとしております。
今年は花粉症対策に腸内多様性を考慮し、様々な種類のヨーグルト・納豆を身体に突っ込んでいます。
今のところ例年より症状がグッと軽く、効果があったんじゃないかと思います。

3月初め、3.7(THU)~ 3.9(SAT)にかけて、PHPerKaigi2024に参加させていただきました。
初めてのPHPerKaigi参加でしたが、とても楽しい時間を過ごすことができました。

今回は参加してみた感想を書いていこうと思います。

C-limbet PHPerKaigi 2024 Vlog はこちら

こんな静的解析導入は負けフラグ

https://fortee.jp/phperkaigi-2024/proposal/97568455-c264-4abf-b280-5e5279384c0c

うさみけんた 氏

PHP Conference Japan 2023 に 引き続き、私の(勝手に)尊敬しているエンジニアの一人 @tadsan さまのセッションでした。

  • PHPStanはCIでPRを妨害する敵ではない
  • PHPStanは仲間である
  • PHPStanを過信しすぎない
  • (引き続き)チームに合わせた意味のあるレベル設定を
  • (引き続き)baselineを有効活用しなさい
  • @var 祭りはやめろ
  • 手元で回せ
  • 手元で \PHPStan\dumpType() を有効活用せよ

と解釈しました。

Github Actions上で走るPHPStanやユニットテストはうちのプログラムコーディング門番となってしまっていますが、手元でしっかり回して確認していただければ、PHPStanはペアプログラミングパートナーになり得ると私も思います。

コードの品質を担保し、サポートしてくれる仲間として今後も有効活用していきたいです。

レベル考慮はプロジェクトや参画するメンバーに合わせて調整したいと思います。

帰ってきた「完成度低いの歓迎LT大会」(PHPerKaigi出張版)

https://fortee.jp/phperkaigi-2024/proposal/89879dc7-5e21-4cf6-b5bf-a629dc61279d

すぎやま@MASH弦楽団 氏

不定期に開催されている 社内LT大会の 出張版のセッションでした。

前職場では 勉強会 が週1で回ってきていたため、プレゼン・LTをやる環境がありましたが、現在は社内勉強会はあれどLT likeなことをやる機会がありませんでした。

今後社外で登壇する機会、発表する機会をいただけることを考慮し、社内でもまず完成度低いの歓迎LT大会を開催していけたらと思います!!

WebAssembly を理解する 〜VM の作成を通して

https://fortee.jp/phperkaigi-2024/proposal/bc5dc153-17af-4079-8f1b-2660af97e2c8

nsfisis 氏

  • WebAssemblyの話
  • あるとき突然すべてが上手く動くようになる
  • 自分の理解を遙かに超えたものがなぜが動く

WebAssemblyはブラウザが直接実行できるバイナリ形式でJavaScriptより高速に動作します。
速さや難解な処理をブラウザ上で動作させることを目的に個人的にrustで触れていたりしていますが、今回はPHP処理系を動かす話でした。

まだまだ表層に出てきていないですが、今後も情報収集を継続し、ブラウザ上動作にフォーカスした技術を積んでいければと思います。

PHP系カンファレンス反省会&壮行会

長谷川智希 氏

2024年に 開催 もしくは 開催される PHP系カンファレンスの実行委員長たちのお話を聞くことができました。 今回 2024 PHPカンファレンス福岡 に スタッフとして参加させていただきますので非常に参考に(かつ楽しい)話を聞くことができました。

まだまだカンファレンスに参加したことのないPHP関連の技術者はたくさんいるかと思います。
私も今の会社にいなければ積極的に参加することはなかったと思います。

どうやって参加したことのない方々までリーチできるか、
広めていけるかという視点を持ちながら、
法人的にも個人的にもいろいろな方と知り合うことができればと思います。

B+木入門:PHPで理解するデータベースインデックスの仕組み

富所 亮 氏

https://fortee.jp/phperkaigi-2024/proposal/69afd3b6-f70c-4983-a490-4ead1b9428b0

  • B+木の特徴
  • なぜ、データベースはB+木を採用しているのか
  • インデックスとは何か
  • Btreeの動きのデモ

B+木 について詳しく・手稲に解説されてありました。
実際の動きのデモを見ながらインデックスの仕組みを解説いただいたのは非常に勉強になりました。
Windows95時代にカタカタカタカタHDDをデフラグしていた話も出てきて懐かしく感じたセッションでした。

B-Tree Visualization

非常に動きがわかりやすいですので一度見てみると良いかと思います。

キャッシュと向き合う、キャッシュと共に生きる

曽根 壮大 氏

https://fortee.jp/phperkaigi-2024/proposal/69621b02-9027-4dc6-b116-2d24209b0c85

皆大好きキャッシュの話でした。非常に勉強になりました。

  • キャッシュは麻薬
  • 使わないでよければ使わない
  • キャッシュの設計を十分に行う
  • キャッシュ場所から決めるな
  • ボトルネックの改善から手をつけろ
  • 頻繁にアクセスされるデータか?
  • コストの高い計算結果のキャッシュ化?
  • データの更新頻度は?
  • 効果は望めて期待の範囲におさまるのか?
  • 個人情報は考慮されているか?

色々と勉強になるセッションでした。
私個人的にはCloudflareによるページキャッシュをゴリゴリ使いたい人間なので、
パージのタイミングや重複多段キャッシュにならないか設計をきちんとやっていこうと思います。

Cloudflareのページキャッシュは非常に強力ですので、あとは使い方次第ですね、、、。

ファイル先頭の use の意味、説明できますか? 〜PHP の namespace と autoloading の関係を正しく理解しよう〜

https://fortee.jp/phperkaigi-2024/proposal/bc88c7e7-0169-4299-a471-9adb1a2e5bcc

composer周りやautoload周りの話でした。

カオススクラッチPHPプロジェクトでなければ、フレームワークでcomposer&autoloadを使っていることが多いかと思います。
前職場ではカオス周りもありましたのでこの辺りは全く理解ができていない状況でした。

まとめの関係図や説明がとても丁寧で万人が理解できるセッションだったかと思います。

Xで見かけましたが、namespaceの大文字小文字、OSによってはパスの大文字小文字も気をつけないといけないと私も思いました。

はじめてのメンバー育成。マネージャーとメンバー視点で振り返る1年間

https://fortee.jp/phperkaigi-2024/proposal/ced975e3-ba32-4306-8a31-44adde2e775b

  • メンバー育成のナレッジを知りたい方
  • これからメンバー育成を任されたい方
  • もっと成長確度をあげていきたい若手エンジニア

マネージャー視点とメンバー視点による社員育成のお話でした。

  • エニアグラム
  • モチベーションタイプ
  • 価値観ワーク

個人によって熱の入る場所やタイミングなどが違うということを率いる場合にしっかりと頭に入れておかなければならないと思いました。
方向性を示すのはもちろんのこと、個々人にあった説明や示し方、接し方があるなと非常に勉強になりました。

「気づき 躓き 投稿チャンネル」っていうのを設置していたそうで、とても良いなと思いました!

個人的にAIサポートを突っ込んだ、チームリーダ用のチーム運用サポートアプリを作りたいなあなどと思いました。

PHP Parserで学ぶPHPと静的解析 by inoco

https://fortee.jp/phperkaigi-2024/proposal/15b92894-11cb-4022-85d5-bf8279f61d43

PHP Parserを利用して静的解析ツールを作る話でした。 PHPStanに内包されており、数多のPHP静的解析に用いられる PHP Parser を巧みに利用している inoco さま、非常に今回も勉強になりました!!

まとめ

今回は初めてのPHPerKaigi参加でしたが、非常に楽しい時間を過ごすことができました。
普段当たり前のように利用している点について理解を深め、新しい知識も得ることができました。
今後のビジネス転用、プロジェクトの生産性アップに繋げていきたいと思います。

Related article

おすすめ関連記事