michimani.net

PHPerKaigi 2019 に行ってきました − 2日目 −

2019-03-31

3/29 (金) 〜 3/31 (日) まで 練馬区立区民・産業プラザ Coconeriホール で開催されていた PHPerKaigi 2019 に行ってきたので、そのレポートです。

1 日目の レポートはこちらです。

【3/31 (日)】 2日目 セッションレポート

1日目 と同様に、2日目に実施されたセッションのレポートを、セッションの概要と、一言感想くらいで書いていきます。

10:25 #a マニュアルにない引数を与えるとどうなる?php-srcへのバグ報告をした時の話

私も GitHub で公開される OSS に PL を送ってマージされた経験がありますが、やっぱり多くの人に使われているものに貢献できるのは凄く嬉しさがあります。それが PHP のような利用者が非常に多い言語となると、その嬉しさはさらに大きいでしょうし、動揺もすると思います。このセッションではバグレポート時にチェックすべき項目、たとえば再現方法では「この場合では起こるけど、この場合では起こらない」みたいなことを漏れなく書く、中の人がわかりやすいように書くことに関して参考になる部分が多かったです。
PHP に限らず何かしらのバグレポートをする際の参考にできると思います。

10:50 #a PHPでURLルーティングをつくる

Router とは

Router を作るというのは想像したことがなかったので、とても面白かったです。Router って仕組みとしては URL の path とコントローラを結びつける っていう単純なイメージですが、その path の探索を効率よく行うためにはには木構造のアルゴリズムを理解する必要があったり、突き詰めると深いなと感じました。最近は、プログラムを書くに際してアルゴリズムとか数学的な知識も必要かなと思っていたところなので、やっぱりそういった内容の勉強は必要なんだと再確認しました。

11:25 #a Hack HTTP Request and Response Interfaces

「Hack とはなんぞや?」ということでこのセッションを聴いてみました。聴いた結果、 なんか PHP っぽいけど PHP と対立してる言語 ということはわかりました。(あんまりわかってない)
とりあえず言語の開発者を募集しているらしいので、気になる方は発表者の @ex_takezawa さんにコンタクトを取ってみてはどうでしょうか。PHP っぽいけど PHP じゃない、マイナーな言語ということで今後の楽しさがありそうだなと思いました。

12:20 #a ランチセッション

PHPerKaigi 2019 の Diamond Sponsor である 株式会社メルカリ の @hidenorigoto さんによるランチセッションでした。

メルカリのバリューについての話から始まり、後半は 視点視野視座 の違いの話でした。視(点|野|座) の話は非常にわかりやすくて面白かったです。
また、最後にあった 『変化のある環境に身を置く、飛び込む』という話はとても大事なことだなと感じました。Q&A タイムであった「転職を考えるきっかけは?」といった趣旨の質問に対するこたえも凄く良くて、その時々で重要視することが変わる (家族との時間を大切にしたい、チャレンジングな環境に身を置きたい など) というのを聞いて なるほどなと思いました。


ちなみに 2 日目 は 無事にランチチケットをゲットできたので、美味しいお弁当をいただくことが出来ました。

PHPerKaigi 2019 ランチ

13:30 #b アンチパターンから学ぶ、RDBの正しい設計

「すべては本に書いてあります!」 ということだったので、私も 失敗から学ぶRDBの正しい歩き方 (Software Design plus) を買おうと思います。(単純)
とはいえ、セッションの内容だけでも凄く面白い内容で、 RDB を使う上でのアンチパターン、正しい設計方法についての意識改革になりました。特に印象的だったのは「できることからやろう」ということです。 DB まわりのリファクタリングには結構な労力が必要になるので、既存のサービスに手を加えるなら、まずはアプリケーション側でどうにかできないかを考えてみる ということです。

14:15 #a PHP監視、サービスを守る為に行う不測の事態への努力

登壇スライド » PHP監視サービスを守る為に行う不測の事態への努力

昨年末辺りから一世を風靡した(?) 『入門 監視』 のポイントを抑えたセッションでした。私も 入門監視 は読んだので、その内容の復習ができたような感じで良かったです。入門監視 を読んでから実際に業務で携わっているサービスの監視方法も少し変更したりしているので、監視ツールについては今後もチェックして、どのツールで何が出来て何が出来ないのか、サービスごとに適したツールは何なのか、といったことを吟味できるようになれれば良いなと思いました。

PHPer Challenge

今回の PHPerKaigi では、 PHPer Challenge というゲームが裏で (表で?) 同時に開催されていました。ゲームの概要としては、イベントのサイト、スポンサー各社のブログ、会場内の掲示物、ノベルティなどなどに隠された 「"#" からはじまる文字列」 = 「PHPer トークン」 をどれだけたくさん見つけられるか というものです。文字列をみつけたら、専用のサイトに送信することでポイントが貰えて、最終的に獲得したポイントで順位を競うというゲームでした。
PHPer トークン が書かれている場所の例としては、上に書いたもの以外には、登壇者のスライド内や、突発的な LT で使用されたホワイトボードだったり、もういろんなところに存在してました。また、ちなみに各トークンは 100 〜 2000 pt で、最初に見つけた人から少しずつポイントが減少していく といったシステムだったようです。なので、同じトークンでも最初に見つけた人のほうがポイントが高いということです。
また「徳丸浩の挑戦状」と題して、徳丸先生が用意した 脆弱性を持ったアプリケーション の脆弱性を突くことで得られる PHPer トークンというのもありました。これに関しては Web アプリケーションの脆弱性の勉強にもなって、単なる宝探しゲームの域を超えたエンジニアっぽいゲームになってました。

で、最終的に私の順位はどうだったかというと…。

PHPerKaigi 2019 PHPerChallenge result

狙ってなかったものの、順位はゾロ目になりました。ただしゾロ目賞みたいなのはなかったようです。
ちなみに 1 位の方のポイントは 54,700 だったようで、どこにそんなにトークンがあったのか…っていう感じですね。
ただ、順位はともかくメインのセッション以外にもこういったお楽しみがあるイベントっていうのは、新鮮でとても楽しかったです。

2日目 と PHPerKaigi のまとめ

以上、2日目のレポートでした。本当は 15時頃からの LT も聞きたかったんですが、やむを得ず離脱…。あとから Twitter で #phperkaigi で流れてくるツイートを見ながら楽しそうだなーと、感じているところです。
2日目もコアな話、意識改革につながる話を聞くことができて良かったのと、美味しいお弁当も食べることができたのが良かったですね。


あとは、PHPer Challenge ですね。 1日目はほとんど会場内を探索できなかったので、2日目は少し探し回りました。結果的には上に書いた通り 33 位でしたが、ちょっとした宝探し感、徳丸先生の脆弱性を見つけるゲームについては楽しみながら脆弱性の勉強にもなるという、とても楽しいイベントでした。


で、初参加となった PHPKaigi、言語単位のカンファレンス でしたが、一言で言うと 楽しかった に尽きます。他の参加者とのコミュニケーションはほとんど取れませんでしたが、 Twitter では少しフォロワーも増えたりして、また次回もあれば行きたいなっていう感じです。個人的に今年の目標としては、いろんなカンファレンスとかイベントに参加する っていうのを掲げているので、先月の JAWS DAYS に続いて今回の PHPerKaigi 2019 にも参加できたのは、よい経験になりました。

最近は PHP ほとんど書いてないんですが、また久々に書いてみようかなと思うきっかけにもなりました。

運営のみなさま、登壇者のみなさま、お疲れさまでした。楽しい時間をありがとうございました!

以上、よっしー (michimani) でした。