PHPカンファレンス関西2018で「続・SOLIDの原則ってどんなふうに使うの? オープン・クローズドの原則 センパイのコーディングノート編」を話しました
7月14日に開催されたPHPカンファレンス関西2018で、『SOLIDの原則ってどんなふうに使うの? オープン・クローズドの原則 センパイのコーディングノート編』というトークをしました。
今回のスライドは以下です。60分という長めのセッションでしたが、聞きにいらしてくれた皆様、ありがとうございました!
SOLIDの原則シリーズのトークはこれで完結
PHPerKaigiから3回にわたって、「SOLIDの原則ってどんなふうに使うの?」シリーズのトークをしてきました。私の中では、それぞれのトークのポイントは次のようになっています。
- PHPerKaigi版:オープン・クローズドの原則そのものの理解
- PHPカンファレンス福岡版:コードにあらわれるバリエーションを見極める
- PHPカンファレンス関西版:良いコード設計の普遍的な特徴を垣間見る
どの回も私にとってはチャレンジングな内容でした。PHPerKaigi版では、いかにオープン・クローズドの原則のポイントのようなところを、腑に落ちるように伝えられるかというところが難しく、最終的な形式になるまでにかなり苦労しました。なお、オープン・クローズドの原則を直球で説明している部分も、「アジャイルソフトウェア開発の奥義」に書かれていることをベースに、よりクリアにした私オリジナルの内容になっています。
PHPカンファレンス福岡版では、PHPerKaigi版の内容をブラッシュアップしつつ、伝えたい内容を追加してすこしフォーカスをずらしたので、話のまとめ方、そして時間配分に苦労しました。
最後のPHPカンファレンス関西版では、福岡とはまた違った内容をプラスしていて、この部分の話をちょうど良い感じにまとめるだけでもかなり苦労しました・・・。追加したい内容の部分がかなりのボリュームになってしまったので、削りつつ、ストーリーを変更するということの繰り返しですね。
そして今回の関西のトークで、オープン・クローズドの原則を軸にした一連のトークは、完結となりました。聞いていただいた方には、やや消化不良な箇所があったかと思いますが、それは今の所の私の力量不足です。スミマセン! この一連の話は私の持ちネタとして、少しずつ改良を重ねていく予定です。
裏話:掛け合い方式がなぜ生まれたか?
センパイとコウハイの掛け合い方式は、最初からそのように考えて作ったものではなく、偶然の産物としてできたものでした。私はソフトウェア開発者としてある程度の経験を持っており、そのような立場として設計などについて説明すると、どうしても説明を端折ったり、そんなこと知っていて当たり前、というような空気で前提を作ってしまうところがあります。そういう、言い方は良くないですが「上から目線的」な話がウケる場合もあることは確かですが、今回の一連のトークでは、それとは違うアプローチにしようと思っていました。それは、より多くの人にきちんと伝わるトークにする、というものです。そのために、話の細部に渡って、聞いている人が「なぜそうなるの?」とか「あれ? わからない」となって話についていけなくなる、という箇所がなくなるよういろいろ工夫しました。その工夫の中で、話す内容についていちいち自分で「なぜそう言えるのか?」「新人が聞いても分かるか?」「新人ならどう考えるか?」などと自問しながらストーリーを磨いていました。そんなことをしていると、ふと、「この質問自体を共有した方が伝わるんじゃないか?」と気づいたんです。
これを入れたのは、今の私のトークスキルとしては、成功だと思っています。
もっとうまいやり方はあると思いますし、話者が質問を最初からいれなくても、会場からのリアルタイムな質問を引き出せれば、もっと面白いですよね。そして、熟練した話者なら、そんなリアルタイムの質問にうまく答えつつ、それさえも自分の話の流れに組み込んでしまうものですよね。そんなふうになれるよう修行せねばと思います。
今回のトークの反省
- スクリーンの左側に立つパターンに慣れていなかった。マイクを左手で持って、右手でスライド操作&水を飲むという感じで、スクリーンの方を指す場合は右手を使うのだけど、方向が逆なのでちょっとやりづらかった。右手マイクでやれる方がよいのかもしれない(対策未定)。
- 思っていたより、スライドの下の方まで見えるようにスクリーンが調整されていたので、スライドでは下いっぱいまで使った方がよかったかも。
- スクリーン表示が予想よりちょっと小さく、クラス図やコードの文字は読みづらそうだった。このあたりは、コード量が多いプレゼンテーションの場合の正解が分からない。(話している部分を拡大というのを手軽に作れればよいのだけど。。。)
イベントについて
PHPカンファレンス福岡でも感じましたが、このPHPカンファレンス関西でもスポンサーさんがたくさん集まっているというのが本当にすごいなと思いました。また、参加者もたくさんいらっしゃって、カンファレンスがすごく盛況だなと感じました。
スポンサーブースを回ってカードを集めるという面白い企画も用意してあって、このカード集めの際に、自然とブースの方と話せるようになっていて、上手い企画だなとも思いました。
いろいろな工夫をしてカンファレンスを準備してくださったスタッフの方々、ありがとうございました!
次回は?
未定です!
東京で開催されるPHPカンファレンス(12月15日) か、何か他の小さなイベントなどでも、気分やネタの準備状況によっては参加するかもしれません。
参加するならやはり発表者として参加し続けたいので、次なる渾身のトークアイデアを練ろうかと思います。