記: PHPカンファレンス名古屋2025 #phpcon_nagoya 〜登壇して楽しかったね編〜

2月22日に行われた、PHPカンファレンス名古屋2025に参加(+登壇)しました

phpcon.nagoya

長くなったので、自分の登壇周りは記事を分割。
こちらは「登壇したよ〜〜〜!」な内容です。 「参加したよ〜〜」的なやつは↓に

daisuki.nichiyoubi.land

自分の発表とか

今回のトークは、以前にカンファレンス後の懇親会*1で話題になったことを「言えることあるかも!」と思ってプロポーザルにしたもの。
2024年の「同一テーマでプロポーザルを出さない」縛りをしていた時期に1回、その後にも別の所に出したような出していないような気がしていますが、何にせよ「複数回挑んで得たチャンス」な内容が日の目を見た形です。

最近の登壇は、「自分の頭の中にあるものを、じっくりと言語化していくの好きだなー楽しいな〜〜」という気分で準備している事が多いので、今回のも中々にやり甲斐を感じられるものになりました。
認知負荷とかマインドモデルとかそういう話も興味深いよねーって思っている中で、最近になって縁があって読んだD・A・ノーマンの著作に大いにインスピレーションを得て、「テストを書いた方が早いってこういう事だぞって言えそう!!」 を組み立てていった次第です。 (なので、もし福岡で採択されていたら違った形になっていたんじゃないですかねー)

準備の最中は「全体の枠組みが大体できたぞ〜」→「・・コレでいいのか?」→「聴いている人が退屈しそう、自分が面白がらせたいポイントに辿り着く前に興味がログアウトされそう・・・」→「やり直し!!!」が何度かあったりも。
いつもなら、枠組みからぶっ壊しになるのは1,2回くらいなので、そういう点で言えば今回は最終形に辿り着くまでに難儀したのかなー。って気もしています。
かといって、頭の中にあった要素(知識とか文献とか)で「足りないもの」は無かった気もするので、組み立ての部分ってことですよね。面白い。

準備を始めて1番最初に置いたメモ、この時点で中心となる要素は出てそう

ここら辺がノーマン

構成を考え始めて、「即効性が足りん?となると、空中戦ぽくなって想定聴衆とギャップが出ない?」ってなってる所

詰めていってる所。「期待していたようなテストの話じゃない」って言われない?切り返せる?をゴニョゴニョ考えとるんじゃな

当初は(福岡に出したver. を含め)、「こういう事ができるからテストによって加速できるんだ」っていうのが中心になる想定でした。
最終的に「テストを必要とするのは人間の脆弱性からだ」みたいな、より課題の大きな話にも踏み込めて、味わいが出たんじゃないかな〜と思っています。

いずれも、「テストを覚えると設計のレベルが上がるはず、技術力が伸びるはず」「なのに”チームがテストを書いていないから”とか”テストを書く時間がじれったい・意義を感じない”って状況の人はいる」「本当は技術力が伸ばせる良い方法があるのに、それを使えていないもったいない・・!」なんて問題をどうにかしたいな〜というのが、一貫した想いです。

スライドの与太話

「卵を買うのにお金(cash)」に対して

キャッシュ(cache)があるなら代替できる?という対句でした

「テストが良く分からん」の解像度を上げようとした時に、最初の頃の気持ちを思い出したのですが・・・

スライドのこの部分は、その名残。回収できなかったなー

ドン「グリ」とハマ「グリ」は別なので、BaseGuriクラスを継承するかい?っていう説がありました(誤った設計や共通化をテストで暴露する的な・・)。すぐ消えました

これも「人間が先、機械が後」的なノーマンっぽい話。人の力を拡張するのに使いたいのに「テストは嫌だけど避けられないもの」になるのはおかしい

ここのスライドは強く言いたかったことの1つなんだよなー。だからこそ「質の高い(良い)テスト」みたいな話を今回は一切入れていない、ってところもある。こっちのプロポーザルにも繋がるテーマ

反響とかベストトーク賞とか

今回は何となく「よし、”聴いてみたら意外と面白かったな”と言わしめるくらいのものにはできそうだぞ」という手応えを持って臨みました。
蓋を開けてみたら予想の何杯も反響をいただけて、かなり嬉しい〜〜〜となっています。

記念スクショ(src)

挙げ句、「ベストトーク賞🥇 2位(同率)」だったとのことで、「あの丁寧な説明と優しい語り口で、落ち着いて聴けた安心感・安定感のあるあひるさんと同率で良いの??」なんて思っています。 めちゃくちゃ嬉しいですね!
一方で、「2,3人くらいの人に何かインパクトを残せたり、もしくはAsk the Speakerとか懇親会で熱心に(or具体的な内容で)話しかけてくれる人がいたら、それだけで何より価値もあるよな〜」というのも紛うことなき本音として思っているところで、不思議な感じでもあります。
このトークのきっかけとなった張本人もイベント中に捕まえる事ができ&じっくり話せたので、それも良かったです。

実際、Ask the Speakerにも懇親会・2次会にも「発表聴きましたー!」「ここが気になったんですけど」と質問をしてくれる人がいて、俺は・・俺は・・・早口オタクだぜ・・・・・・・となってました。嬉しいな〜あの時間が永遠に続かないかな〜〜。
ブログでもチラホラと言及してくれている人がいて、というかブログで書いてくれてる数がもしかしたら過去最高な気もする?*2、凄いことだなーと思っています。

フィードバックとか

セッション後に受け付けていたフィードバックが、まさか翌々日には共有されるなんて・・!と驚き喜んでいます。スタッフの皆様の仕事が早すぎる・・・・

いくつか、スライドや発表の中にあった具体的なポイントや表現に言及して「ここが良かった」と言ってくれるコメントもあったり。そういうのは「ちゃんと聴いてくれていたんだなぁ」「話の流れや表現を一生懸命考えた甲斐があっなぁ」とニマニマしています。
(そういう形でなくても、もちろん嬉しいです!!励みになります)

その中でも、今回は「発表中にあったやり方で、実際にやってみた&チームに受け入れられたことがある」という感想もいただいて、コレもまた嬉しかったです。
この方の場合は「新しい知見を得たぞ」ということにはならなかったのかもですが(既に自分でやったことある!なので)、「そのやり方で上手く行ったよ」という話を共有してもらえるのは有り難く感じます。肯定されたような気持ちになりました。

課題みたいな所とか

しかし「いわゆるテスト」とは違うんじゃないか・・・?っていう気がずっとしていますね。
「開発者テスト」でも、まだ広い気はしており。

多分「TDDでテストと読んでいるものは本当のテストじゃない」って感じがあり、Kent Beckさんはrefactoringが混乱を招く語彙になったからtidyを提唱して・・・っていうのが落ち着いたら、このあたりも言語化してほしいです。
品質を高める(=QC的な意味での)効果は高めるものではないと感じますし、だからこそ「コミットしなくてもいい(開発完了?コミットまでが主たるスコープであり、その後は破棄されて良い!)」という提案に繋げても許されるんだろうなー的な。

どうなんでしょうね。詳しい人がいたら、お話を伺いたいです。

その他に、もう1点。

発表を聴いてくれた人との会話で「テストを書こうと思っても/ちょっと書いてみても、どういうのが効果のあるテスト?」「どんな観点でケースを増やせばいいんだろう?」というのが掴めていなくて〜という話をいただきました。
確かに自分の発表の中でカバーできていなかった部分だし、資料を見てもまだ足りていない部分だなーという気がしています。・・・「足りていない気がする」というか、「もっと言えることがあるはずだな!」が近いかも。

同日にあったプッシュさんの発表が、それに近い位置にありそうな内容だなぁと思っています。もう少しだけ発展的な、「知識」提供に傾けたような話があると、自分の今回の発表は味が出るんだろうなーと。

発表準備中に書き散らかしていたメモに書いてある、これを拾いきれていない

「孤独だとしても、自分だけでもテストに触れ始めてみよう!」と背中を押せれば良いなぁという発表だったので、「少しずつ自信を持てるようになってきた」まで押し込めないとしたら、まだ未完成だなーなんて気持ちがあり。 「ここで装備していくかい?」に対応できるものにしたい!!!

そのため、この「どうしたらテストを書けるようになった!と言えるようになるか?」は、ちょっとした宿題を貰った気がしています。

ということで、やるか〜〜〜〜〜!となったのが↓です。
ちょっとインデックスを作れるように取り組んでみるぞ〜

おしまい

改めて、スタッフの皆様、セッションを聴きにきてくださった皆様、聴いてはいなくても資料を開いてくれた人たちも、ありがとうございました!!

ベストトーク賞でおなじみのそーだいさんが「自分が『いい話(をした)』と言っているのは、良い言語化ができたということ」と話していたのが個人的には素敵だなー好きだなーと思っています。

※ 出典。聴いてね! listen.style

そういう意味では、今回も自分にとって「良い話」と呼べるものになったな〜〜と感じています。
なかなか、ここまでの労力をかけて話をまとめたり言える事を考える・・・って大きなイベントが無いと取り組めないので、本当に自分にとってユニークな価値のある機会になりました。ありがたやありがたや。

お疲れ様でした!

*1:香川だと思ってたけどな、福岡のCfPにも応募してたから違うかも。phperkaigiの後日イベントかな〜

*2:全然数えていないですが