幡ヶ谷亭直吉ブログ

娘のここねと格闘するエンジニア。

PHPカンファレンス小田原2026 に参加しました

PHPカンファレンス小田原2026に参加しました。
イベントに参加した感想をまとめます。

イベントの概要

小田原の地でつながる、
気張らないカンファレンス

コンパクトでレトロな「小田原」という地を活かす
コンパクトでレトロな「小田原」という地を活かし、新しいつながり・深いつながりを生む体験をつくります。

自然体でいられる、リラックスした雰囲気
参加者が自然体でいられるような、リラックスした雰囲気をつくります。

「良い発表」を創出する場
学びや発見を共有し合いながら、カンファレンスという形でこの世に「良い発表」を創出する場をつくります。

引用:https://phpcon-odawara.jp/ja/2026/

イベント参加の背景

  • 秦野出身者として小田原はずっと憧れの街。
  • PHPコミュニティに対してずっと憧れがあった。
  • 今回、PHPUnitのBergmann Sebastianがキーノートということもあり自分でしゃべれることもあるんじゃないかと応募!LT登壇決まりました!!

登壇内容:プロダクトを触って語って理解する、チーム横断バグバッシュのすすめ

speakerdeck.com

今回LT登壇の機会をいただき、ありがとうございました。
バグバッシュというイベントと、その好きなところをお話ししました。

プロダクト志向が大事とは言いつつ、エンジニア目線で言えば抽象度高くて、「何をすれば」と思う要素が大きいと思っています。
その抽象度を自分たちのコンテキストに落とすのは、各関係者間での会話が重要と思っています。
また、単一の指標だけで何をすべきかが決まることは少ないと思っており、複合的な指標が複数のロールからの視点で成り立つと思っています。
そうすると、大事なことは当事者間で会話をすることになる気がしています。

バグバッシュはそれまで各自の頭のなかにあったモヤッとしたものが、具現化したタイミングで関係者間で会話するからこそ、価値が生まれると思っています。
バグを見つける以上に価値のすり合わせ機会として大切にしたいと感じています。

後日頂いたフィードバックにも本当に励まされました。
ご清聴いただいた皆さまありがとうございました。

貴重な学びを頂いたセッション

PCOVから学ぶコードカバレッジ by きんじょうひできさん

speakerdeck.com

メモ

pcovの基本的な使い方。
pcovの使い方:startとstopで括り、collectで出力する。

実行されたファイル・行を記録する仕組み。
・低次元な形に変換:ZendCompillerでコンパイルされたOpCode。これが仮想マシンに渡る。
・1ステップごとに実行:受け取ったOpCodeを1ステップずつ実行
PHP拡張とフック
・記録
分母はcollect時に記録。閉じ括弧のみの行なども測定対象行から省く。

PGHP拡張は主要なライフサイクルに独自の処理を組み込むことができる。

知らなくてもできるが、知っていると気持ちよくなる。

学び

そこにあるメソッドの蓋を開いて、中身を探求する好奇心の大切さを改めて思い出しました。
今や勝手にAIがコードを生成してしまう中、自分が学んだプログラミングの本質はなんだったのか。
それを考える価値は十分にあると学びました。

Webアプリケーションエンジニアにも知ってほしい オブザーバビリティ の本質 by Futoshi Endoさん

speakerdeck.com

メモ

オブザーバビリティとは。
元来の定義:
外部出力の知識からシステムの内部状態をどれだけうまく推測できるかの尺度
現在の定義:
システムがどのような状態になったとしても、どれだけ理解し説明できるかを示す尺度。
アドホックに調査し、よりデバッグが可能となる。


障害が起こったときにログを見てもどれが原因か分からない。
経験によってその理解度が変わってしまう。
それは、オブザーバビリティな状態ではない。理解できることが本来あるべき状態。
属人性もあるべきではない。ヒロイズムなチームに繋がり、単一障害点となる。

オブザーバビリティに大事なこと。
・常にプロアクティブにモニタリングできる。
・誰でも把握ができる。

オブザーバビリティを意識した開発とは。
ClaudeCode誕生以来、圧倒的にコミット数が増えた。
今後、書く作業よりも、確認する作業が増えていく。

人間が得意なこと、AIが得意なことを分けて開発を進める。
AI:書いていく
人間:挙動を観測できる設計、コンテキストを記録

オブザーバビリティがターゲットにするのは、UnknownUnknownの記録。
トレースのためにカーディナリティを高くすることが重要となる。
json構造を活用して理解を容易な状態とする。
レビュー段階で打ち取れるようにする。
エラー発生時に作った仕組みで特定できるようにする。

個人からチームに。
オブザーバビリティデータを民主化することが重要となる。
誰かに属人化するのではなく、プロダクトチーム全体で扱えるようにする。
そのために、誰でも理解容易な共通言語として持つべき。

学び

改めて、オブザーバビリティの重要性を学ぶことができました。
今まで「いつか誰かが」と捉えてしまっていましたが、必要な時にチームで考えることが重要と学びました。
そして、属人性を排除し、誰もが分かる言葉で整理をする。
当たり前のことのようでしっかり取り組むべきと感じました。

PHPと旅するOSI 7階層 第二章 by 市川さん

vaddy.net

Bitforestさんのスポンサーセッション。
途中参加でしたが、企業紹介もエンジニアに対する愛情を感じ素敵でした。
エンジニアが自分の技術探求を話せるスポンサーセッション素敵。

AI時代のPhpStorm最新事情 by 山本ユースケさん

www.jetbrains.com

AIの利用率上がっている使うと圧倒的に早い。
AI≒知能の優れた宇宙人。手が速いけど賢くはない。
リファクタリングはしない。計算コスト高い。大規模解析苦手。
AIが苦手で、PhpStormが得意な部分もある。MCPも提供している。

PHP式プログラミング道 by うさみけんたさん

メモ

「PHP式」プログラミングではなく、「式プログラミング」。
式とは、Exprを実装したもの。stmt=文({};)。
式を具体的な値に置き換える。前提を必要とする。
計算した結果を返す。
いかに副作用を起こすかを考えて実行する必要がある。
PHPはCやPerlから影響を受けている。

学び

式とは何かを突き詰めて考える。
その体験を共有することが、言語コミュニティの面白さと感じました。

手を動かして学ぶプロダクトセキュリティ by つめたいうどんさん

メモ

神田セキュリティ勉強会を立ち上げた。

https://kanda-sec.connpass.com/

知識として学んだことをすぐに手を動かして確認することもできる。

portswigger.net

とにかくいろんな領域でセキュリティが重要になっている。
座学や情報だけでは身につかず、実践をすることが重要になっている。

www.ipa.go.jp

個人だけではなく、チームで学ぶことが身についていく。

学び

経験主義の重要性と、それを属人化せずチームのものとすることの重要性。
そして、何よりそのための経験の場が、珍しくないことが大きな学びとなりました。

レバテック株式会社 by 岡田竜典さん

メモ

内製システムを改善し続けている話。
改善後:
週1リリースから毎日数回リリース、チーム人数3倍、勉強会定期開催をした。
改善前:機能改修のために環境整備に時間を使えなかった。顧客影響が見えなかった。
改善ポイント:
・開発環境構築の手間(Docker移行)
・運用対応改善(定型化している依頼を機能化)
・リリースの属人性解消
・バッチ処理管理(ツール変更)

レガシーシステムに自動テストを導入した。
4名チームでアップデート実現。

zenn.dev

小さな改善の積み重ねが開発者体験をあげ、事業価値に向けた開発を進めることもできた。

学び

真摯な対応の積み重ねの重要性を改めて感じました。
改めて認知負荷を取り除いて、エンジニアが考えるための余白を持つ重要性を感じました。

レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜 by プログラミングをするパンダさん

speakerdeck.com

メモ

10年前父親からソフトウェア開発の依頼を受けた。
昨年ClaudeCodeがあることもあり、改めて依頼を受けた。
父が要望、現行のソフトウェアとの比較をし、進めていった。

ドメインエキスパートとの協業。保育施設で扱うシステム。
父にどんな機能が欲しいか質問すると、整理された内容が帰ってきた。
現場にはCRUD以上のものがあった。

AI。
UIは早かったが、バックエンドは目に見える成果をすぐ出せなかった。
ガードレール作り過ぎた。150件作っても機能しなかった。
昨日も作り込み過ぎていた。フルスタックフレームワークの採用を決めた。

AIで夢想は幻想。失敗の過程は成長の過程。AI利用に一気に習熟。
ドメインとユーザーと向き合うエンジニアは不要にならない。

学び

生活のなかにエンジニアリングがあること。
そこから学びを得ることができることの重要性を改めて感じました。
個人開発でも、誰かとの協業でも、そこから学んで成長につなげる。
父親のことをドメインエキスパートと呼ぶ関係性もとても良いなと感じました。

LTセッション

BASE株式会社

 

メモ

AI時代に新卒採用はじめた。
ジュニアエンジニア不要論ある。(新卒、歴数年、コード書けるが設計一人称できない)
AIで生産量が圧倒的に増えた。手数は不要になった。
シニア、育てないと消える。会社との社会責任で新卒採用始めた。
ジュニア*AI、試行回数が圧倒的に増える。
自社だけじゃなく、コミュニティに育てられた。

学び

エンジニア、コミュニティに対する考え方が素敵でした。
そうした企業に新卒は幸せなイメージが持てました。

有限会社アリウープ

メモ

受託以外のチャレンジの歴史。
コスメ@モビ。ISO情報サイト。いろいろやってきた。

学び

やってきたことを振り返ることの重要性。
時代時代でできることが違うのも面白いと思いました。

OBI + APMでお手軽にアプリケーションのオブザーバビリティを手に入れよう

メモ

オブザーバビリティo11y。
大抵の場合、アプリケーションから体系的にシグナルが出るようには作られていない。
OpenTelemetryなどを介し、そのような機構を作っていく。ゼロコード計装も可能。

学び

OpenTelemetryについてももっと知識を得たい。

LTセッション

自分の登壇もあったため感想のみ書き留めます。

PHPUnitの「Depends」を使うと次のテストに返り値を渡せるの、なんで?読むぞ!

PHPコミュニティでの学習の共有の価値を改めて体験しました。

PHPUnitのテストフックを使ってテストにかかる時間の計測をしよう

人が調べないことを機になった人が調べて共有する。
それがコミュニティの共有資産になるイメージが持てました。

個人的に嬉しかったpnpmの新機能・3選

自分の好きなことが誰かの気づきになる。
好きなことを発信する重要性を改めて感じました。

2026年春から始めるOpenTelemetry

何よりも当事者意識とやる気が大事と再認識しました。

PHPでGitを実装してみる

好奇心にしたがって実験をする。実験から学んだことを共有する。
そうした知識の蓄積がコミュニティを豊かにするイメージが持てました。

5分で挑戦!laravel newからデプロイまで

立川が盛り上がっていくのが嬉しいです。

画像内の"写ってはいけないもの"を弾きたい

実例からの試行錯誤を聞いてわくわくしました。
体験の共有、重要。

年間150冊の「雑食読書」が、自社コードの意図を解き明かす鍵になった話 — 非エンジニアPdMによる、技術ドキュメントの効率的な読み解き方

本は知らない世界に連れて行ってくれる。
頭にインデックスを貼るだけでも世界を拡張してくれるイメージが持てました。

エンジニアの実装が、体験をつくっている

問いがチームを拡張していくイメージが持てました。
スライド自体が語り過ぎておらず、とても素敵でした。

基調講演

Past, Present, Future: The PHPUnit Story by Sebastian Bergmann

メモ

PHPUnitの技術的なことより個人的な回顧。
Rubyにかつて触ったが相性がよくなかった。
jUnitのPHPに移行する人は他に誰もいなかった。
実践したが当時はうまくはいかなかった。
PHPUnitは今多くの人間に使われており、責任を持つことを感じている。
失敗から多くを学ぶ。プロジェクトの失敗は悲劇である。
ただ、過ちから学ぶことはできる。
NASAの失敗だのからもエンジニアリングシステムの失敗から
人間と機械のやり取りよりも、人間同士で問題を理解する必要がある。
PHPUnitは粘り強さや、抵抗に対するものになる

昔は皆テストに興味が無かった。
PHPUnitのベストプラクティスは変わっていく。
個人的な使い方が仕様を決定していく。誰の課題を解消するかで決まっていく。
依存関係を明確にしていくことが大事である。

私たちはソフトウェア開発において課題の抽象化を考え続けてきた。
オブジェクト指向、DDD、イベントソーシング、など。

技術的な負債は悪意からは生まれない。最善の結果と捉えることが重要である。
誰かに悪意を向けることは何の役にも立たない。目の前のコードに向かうべき。

未来について。未来はいつも曖昧。
テストは曖昧さを取り除く。

テストはソフトが正しく動作するかを確認するだけでなく、ソフトが何をするかを記録することでもあり、何をしないかも明らかにすること。

テストは実行可能な仕様である。
ユニットテストもドメインレベルで理解できるべき。

学び

失敗からの学びを改善に繋げていく。
その言葉は、誰もが利用するPHPUnitの作者が言うことに大きな重みと価値が生まれると感じました。
特にテストはプログラムが想定通り動くかどうか確認することを目的とせず、意図したことが動いていることを明示できるドキュメントであるべきといった言葉も興味深かったです。
かつ、それがドメインを表すと考えた時、もしかしたらUIベースのふるまいよりも、コードベースの方が特定しやすい状態にできるのかも知れない。
何度も反芻したい登壇でした。

ランチマッチング

ことみんさんにお誘いいただいてラーメンに行きました。
味噌ラーメンが本当に美味かったです。

コミュニティかわらばん

今回、多摩.devのチラシをはじめて作成し、配布いただきました。
興味を持ってくださった皆さまありがとうございました!!

懇親会

交流させていただいた皆さまありがとうございました。
充実の時間を過ごすことができました。
コミュニティの宣伝もさせて頂きました!
まだ誕生したばかりのコミュニティですが、多摩.devご参加いただけたら嬉しいです。

https://tamadev.connpass.com/

感想

憧れの小田原、憧れのPHPコミュニティでの登壇ができて嬉しかったです。
PHPerKaigiと続き、言語コミュニティの重要性を学ぶことができた気がします。
そして、活気を感じるとともに、自分のように馴染みのない人間も受け入れてくれる暖かさを感じています。
いろいろな方たちとお話しできて嬉しかったです。
また、PHPコミュニティに継続的に参加したいです。
運営の皆さまありがとうございました。