BASEプロダクトチームブログ

ネットショップ作成サービス「BASE ( https://thebase.in )」、ショッピングアプリ「BASE ( https://thebase.in/sp )」のプロダクトチームによるブログです。

PHPカンファレンス沖縄2019にBASEが協賛&3名のメンバーが登壇しました

こんにちは!この度は10/12(土)に沖縄で開催されたPHPカンファレンス沖縄2019にBASEが協賛&3名が登壇いたしました!今回はめもりー(@m3m0r7)、川島(@nazonohito51)、東口(@hgsgtk)の3名から参加レポートをお届けします!

イベント概要

PHPカンファレンス沖縄は カンボ様 (@kanbo0605) が実行委員長を務められ、沖縄で開催されるPHPカンファレンスとしては、今年初でした!10/12にPHPカンファレンス沖縄が開催されたのですが、それに加えて前日(10/11)に開催された(非公式)PHPカンファレンス沖縄2019前夜祭リジェクトコンにも参加したので両方レポートいたします。

(非公式)前夜祭

10/11に(非公式)PHPカンファレンス沖縄2019前夜祭リジェクトコンが開催されました。前日から参加できるPHPerたちで、ゆるい雰囲気でお酒を飲みながらトークを聞いたり懇親したりする会でした。

会場は、那覇市内の株式会社サイダスさんのオフィスでした。非常におしゃれで過ごしやすい会場でした。

f:id:khigashigashi:20191016141901j:plain
前夜祭会場の株式会社サイダスさん

本編

10/12はいよいよPHPカンファレンス沖縄2019当日!会場は、宜野湾市に構えるCODE BASE OKINAWAという会場でした。

f:id:khigashigashi:20191016141937j:plain
PHPカンファレンス沖縄2019 入り口

海が近くてちょっと会場の裏に行けばすぐに海が見え、PHPだけでなく沖縄を感じられとても良きでした!

f:id:khigashigashi:20191016142011j:plain
会場裏をチョット歩くと見える宜野湾の海

BASEは、シルバースポンサーとして協賛していたので、オープニングでは会社紹介いただきました。

f:id:khigashigashi:20191016142104j:plain
オープニング

(非公式)前夜祭、本編にてめもりー(@m3m0r7)、川島(@nazonohito51)、東口(@hgsgtk)の3名が全員で合計7回登壇いたしました。以下登壇者各位による紹介になります!

登壇内容&スライド

めもりー(@m3m0r7)、川島(@nazonohito51)、東口(@hgsgtk)の3名の発表内容をお伝えします!

めもりー

沖縄では、前夜祭・本編・懇親会 LT をあわせて 3 回登壇させていただきました。

前夜祭

前夜祭は PHP で バイナリファイルを読む -JVM の ClassFile Structure を読んでみる - (English Title: How to read a binary file - Read the ClassFile Structure of JVM -)という内容で登壇 & ライブコーディングをさせていただきました。予めどういったことをするのかをスライドで作っていたのですが、ほとんどがライブコーディングだったため、資料はアップロードしていません。今回の PHP カンファレンス沖縄では台湾の方が多くいらっしゃっていることを前夜祭で知り、急いでその場で英語版の資料をつくっていまいた。そして、前夜祭でピザを食べながら、ORION を飲みつつ Drunk Driven Development で日本語と英語のスライドを交互に予め説明させていただき、ライブコーディングを 15 分程度行いました。ライブコーディングの発想は @DQNEO さんのインスパイアです。15分という限られた時間でしたので、次ライブコーディングをするときはもう少し長めの時間でやりたいなと思いました。

f:id:khigashigashi:20191016142137j:plain
前夜祭での登壇様子

英語にあまり自信がなかったのですが、雰囲気で伝わっているようで良かったです。

本編

PHPer のための PHPUnit と Selenium を使ったブラウザテストのすゝめ というタイトルで発表させていただきました。こちらは PHP カンファレンス北海道にて登壇した内容と同じタイトルですが、発表の仕方を変えたり、 Twitter のフォロワーさんから「リンク切れをどう検知するのか知りたい」といった要望がありましたので、一部スライドを増やしてデモンストレーションも追加しています。

また、一参加者として Swoole のコアコミッターの Albert Chen さんの How Swoole Blows Your Mind about PHP? を拝聴し、さらに懇親会のときにお話をさせていただけてすごく有意義な時間を過ごせました。 ハムスター監視システムに Swoole を使用させていただいているので、Swoole のライフサイクルなどがとても学びになりました。

懇親会 LT

懇親会 LT があるという噂を聞いていて、何を話そうか悩んでいたんですが、周りからキーボードの話が聞こえてきて「今まで使ってきたキーボードの話してみようかな」と考えたのですが、いろんな記事になっている話題ではあり、二番煎じだしどうしようということで少し迷っていました。 そして、思いついたネタが「今までに壊したキーボードとマシンたち」で、さっそく資料をつくり壊したキーボードの思い出に浸りながら懇親会 LT で登壇させていただきました。

川島

PHPカンファレンス北海道と同じくスポンサーセッションという形で登壇させていただきました。私にしては珍しく勉強会設計の話をさせていただきましたがとても反響があり驚いています。勉強会を通じてどう成長するのか、エンジニアの知的生産術から学習パターンを引用しながら一般化して話させていただきました。

東口 @hgsgtk

沖縄では、非公式前夜祭・本編・懇親会の3回発表してきました

デザインパターンを出自から深く理解する at 非公式前夜祭

非公式前夜祭で15分お時間を頂いて話しました。GoF(Gang of Four)のデザインパターンは、建築家クリストファー・アレグザンダーの「パタン・ランゲージ」に影響を受けたアイデアです。普段、デザインパターンを自然と口にしている私達ですが、改めてその出自からデザインパターンを見ると、その目的・課題感が見えてくるのではと考えています。今回の発表はその考えを言語化してみました。

発表後、akki_meganeさんと、発表内容に関連するクリストファー・アレグザンダーの建築理論についての書籍感想戦ができたり、@koyhogeさんにパタン・ランゲージに関連する参考情報をいただけたり、発表したことでさらに理解が深まっていい時間になりました。

「割れ窓」を増やさないためのコード設計 at 本編

f:id:khigashigashi:20191016142802j:plain
本編でのLightning Talk中の様子

本編でLTの一枠を頂いて話しました。普段、業務での開発をしていて、「元のコードが厳しいがそれを改善する時間がない、しかし機能追加のマイルストーンは迫っている」という状況下で生まれたPull Requestに対して、さっと「マシな選択肢」の資料が出せるようにしたいと思い、この資料を作成しました。

懇親会にて「参考になった」と感想を頂いたり、資料公開後、約4100View・約190はてぶ(2019年10月15日時点)いただき、多くの方にご覧いただく結果になりました。

PHPにおける独自例外設計を考える at 懇親会

当日の懇親会LTがあったので話しました。例外設計において、どのように独自例外クラスを作るかについては、エラーハンドリングについての考え方やその背後にある品質についての考え方が背景にあると思います。今回は、独自例外の特に基底クラスをどうPHPにおいて実現するかを、Symfonyの内部実装などを参考にしながら考えたものを資料にしました。

といっても、懇親会なので賑やかし要素も欲しいよなということで、台湾から来ている方々もいたので、全編英語で話すチャレンジをしました。ある程度会場の盛り上がりに貢献できたような気がするので良かったです。

おわりに

PHPカンファレンス沖縄2019の実行委員長のカンボ様(@kanbo0605)をはじめ、実行委員会の皆様、また弊社エンジニアのセッションをご清聴してくださった皆様に心より御礼申し上げます。PHPコミュニティに対して協賛や登壇という形で微力ながら貢献できたこと光栄に思います。次回の開催を心より楽しみにしております。誠にありがとうございました!