水面下の夢

競プロやイラストに興味があります.メインブログがここ.同人サークル「かのらぶ」のページはこっち( https://yumechi0525.amebaownd.com ).ブログアイコンはYaQ(@8_9_00)さんから.

PHPCon2017に行ってきました

今更この記事を書くのもどうかと思いましたが、書くことにしました。ちなみに1ヶ月以上前の話らしい。

ちなみに去年も参加していましたが、それからPHPについて勉強したことといえば、Laravelを導入してHello, Worldしたくらいです。

ですが、行ったほうがいいかどうかといったら行くべきだったんじゃないかなと思います。

PHPCon2017詳細

qiita.com

聞いた講演の話

前提として午前中は調子が良くなく、自宅で寝ていたため午後からの参加です。

初心者セッションとかランチタイム前とかに行っておけばよかった。

モバイルページを爆速に Laravelで実現するAMP対応の自動化

Laravelのフレームワークだと結構簡単に出来るみたいでしたが、それ以前にAMPページの制約がとても厳しいことを知りました。

CSSの制限がきつい(50kbらしい)ので、よくあるようなデザイン用のCSS(Boostrapとか)が使えないために最適化が必要みたい。

既存のタグを正規表現で変えて頑張っているみたいだけど、大変そうでした。

PHPガッツリ仕事で使ったことがないので、こういう苦労があるんだなあ… ということで、WEBについて1つ詳しくなることが出来たような気がします。

大規模WebサイトのURL刷新の方針と実装

よく見たことある人が登壇してるなあと思ったら、 @tamanobi さんでした。

MFI(mobile first index) と言うものをGoogleが導入するらしく、これ以上にモバイルドメインのドキュメントが重視されるということ。

というわけで、某サイトでは現在PC版とモバイル版のURLが分かれているそうなんだけど、それを1つにして、SEOユーザビリティを改善しよう、という流れでした。

getパラメーターでこれまで指定してたものをURLに埋め込んでスラッシュで囲むような形で〜みたいな最近のAPIでよく提供されているような形にするみたいです。既に一部のサービスでは稼働中なんだって。

これすごかったのがvim.scriptを持ち出して置換をガットやったらかなり早く終わらせることが出来たというのがすごかったです。普段から自分が使う道具をよく知っておくことで自分の作業を楽にすることが出来るんだなあと感じました。

Webほとんど触らないエンジニアなので、MFIとかの概念も知らず、その時点で新鮮でした。 vim.script もその概念は知っていたものの、活用している事例を聞いたのは初めてかもしれません。 大変勉強になりました。

企業ブース

この次は入りたかったところに入れなかったので、色々回りました。

PHP以外の話もしたり。普段勉強会でよく行くVoyage Group様もいたりして、そこでなぜかGo言語の話をしてもらったり。 あと知らないようなサービスも色々教えてもらいました。

湊川あい様より本にサインをいただきました!ありがとうございます!

好評発売中でGitをコマンドじゃなく、概念的に理解できるいい本になっています。

わかばちゃんと学ぶ Git使い方入門〈GitHub、Bitbucket、SourceTree〉

わかばちゃんと学ぶ Git使い方入門〈GitHub、Bitbucket、SourceTree〉

テスト駆動開発の翻訳をしていたt-wada様も見えていたようですが、当日買うのを躊躇ってやめてしまった(惜しいことをした、テスト駆動開発はその後秋葉原を駆け巡ってなんとか入手した)。 思い切って買うことができない自分の経済力を反省しました。

PHP Version Up と AWS への移行

某会社では古いバージョンのPHPが動いていたので、その度にピンポイントにパッチを当てたり、古いバージョンなので新しいバージョンの機能が使えなかったりと不便だった。

それをAWSと合わせて使うことで仕事を楽にしていこうぜ、みたいな話。

PHPも関連してくる話ですが、システム構成自体を大きく変えていくイメージが強く、システムを俯瞰して考えさせられるいい話でした。

特に古くからあるものは密結合したロジック(同じサーバーでないと動かない、パフォーマンス向上のためにAPI化されていない)、肥大化したコードなど大変な問題があったそう。リプレイスするにも何千代のサーバーを構築しなきゃ…

という状況でしたが、ある程度のものを作って開発環境の構築を統一(Chefとかを使う)することで開発環境を整え、インフラの人とかも巻き込んで作業することで効率的にできたとのこと。

相互理解が進むことにより、インフラの知識もついたりといい事づくし。 AWSの切り替えは手順化してしまって、移行日の深夜メンテだけで確実に終わらせてきたんだとか。(失敗がたった1回なのはすごい)

大きなシステムだったため、PHPのバージョンアップを通じてチームを超えたコミュニケーションが出来るようになった、というもの興味深かった。

運用、追加開発しづらいPHPアプリケーションに未来を与える方法

これはわからない部分も多かったんだけど、ELBとかALBとか挟むとか、Slimを使うとか書いてある。 テストコードを当たり前のように書き、デプロイ前後でエラーがないかとか確認しやすくして、運用・追加開発がしやすい形にできるよう、周りのエンジニアと協力する。

とかしか書いてない…。多分理解追いつかないので、これ目も残ってないですね。まずは Slimってなんだ? というのを調べてみようと思います。

まとめ

PHPConはPHPや関連Frameworkの話も多いですが、結局はソレを使ってどうプロダクト、システムを動かしていくか、というところにフォーカスした話が多かったように思えます。(自分がそういうセッションを選んで聞いているということもありますが)

なのでPHPちょっとだけ触ったことがある… っていう私でも十分楽しめましたし、少し触ったことがある人がPHPで何が出来るんだろう… Webサービスってどう作ればいいんだろう… と考えるヒントを得るきっかけになると思います。

来年は朝から参加して初心者セッションで色々学んできたいです…。