y_uti のブログ

統計、機械学習、自然言語処理などに興味を持つエンジニアの技術ブログです

PHP カンファレンス福岡 2017 に参加しました

6/10 (土) に開催された PHP カンファレンス福岡に参加しました。昨年に続き 2 回目の参加です。昨年はホテルの予約を取れず慌しく帰京したのですが、今年は観光も兼ねてのんびりと楽しんできました。スタッフ、発表者の方々、楽しいカンファレンスをありがとうございました。
PHPカンファレンス福岡2017

PHP 7.0 が普及してきたこともあるのか、今年は、レガシーなプロジェクトの運用やバージョンアップに関する発表が多かった印象です。ウェブには新しい技術に関する記事が溢れていますが、業務で常に最新技術を採用できるわけもなく、古びた技術要素で作られたサービスのメンテナンスの方が日々の苦労ということなのかもしれません。私もそういった話には興味があり、今回はそのような発表を選んで聴講しました。

本発表ももちろん大変参考になる内容でしたが、今回はスポンサーセッションがどれも面白かったと感じました。以下では、スポンサーセッションの各発表を紹介します。

株式会社 Fusic の濱野さん (@gorogoroyasu) によるプラチナスポンサーセッション「新卒 2 年目がサービス開発の際に乗り越えた課題とその解法など」は、担当したサービスの PHP バージョンアップやデプロイの自動化などを行った話でした。
speakerdeck.com

まず、二年目と一年目という決して経験豊富ではない二人のエンジニアで開発を担当して、その経験をカンファレンスで登壇発表 (登壇者は一年目のかた) という積極性に感銘を受けました。内容面ではデプロイツールの導入、自動化という部分が私は日頃あまりちゃんとできていないところで興味深かったです。デプロイなど開発に付随する作業は、自作のスクリプトで凌いでしまう癖がなかなか抜けません。

株式会社ハシゴの渡辺さん (@_nabeen) によるゴールドスポンサーセッション「僕たちがやってきたレガシープロジェクトとの付き合い方」は、レガシーなシステムをアップデートするのではなく、レガシーな状態を受け入れつつ継続的に安定運用できるように、テストの整備や設定ファイルの自動生成など必要な手当てを施していくという観点の発表でした。
speakerdeck.com

既存の実装に対するテストではなく、運用時に新規にコミットするマスタデータや ini ファイルに対してテストするというところが、運用の視点を感じることができて興味深かったです。実装に関しては、現状で不具合なく動作している実績があるなら無理にテストを書かないというのも現実的な判断なのかもしれません。動いているものに触らない、という姿勢はどうもマイナスのイメージで語られがちですが、実際には優先順位やコストとの兼ね合いでの判断なのだろうと思います。

GMO ペパボ株式会社の田中さんによるゴールドスポンサーセッション「mruby で作る海外 IP フィルター」は、ロリポップ!でホストしているウェブサイトへの海外からのアクセスを柔軟に遮断するという内容でした。
speakerdeck.com

単純に国別で遮断するだけなら GeoIP データベースを利用して実現できるということですが、遮断するかどうかをユーザが設定できる、Google など検索エンジンのクローラは遮断しない、といった柔軟性を性能を落とさずに確保する点が課題だったようです。mruby-msd (multistage datastore) を開発して多段キャッシュの仕組みを実現したという話で、なるほどと思いました。

本発表では、決済サービスの話など私がまったく知らなかった内容から機械学習の話まで、幅広い内容の発表を聴くことができました。また、今年は懇親会にも参加できて、こちらも楽しい時間を過ごせました。

[2017-06-21 追記] 勤め先で参加報告を行いましたので、その際に利用したスライドを公開します。

www.slideshare.net