満を持して開催決定!2019年1月26日(土)、TKPガーデンシティPREMIUM仙台西口8Fで開催します。仙台では今回が初の開催となります。後援ご質問、お問い合わせは下記メールアドレス宛にお願いいたします。初心者〜中級者向け近年、テストをかくことの重要性について多く語られていますが、テストを書くのが辛いという声は身近でよく聞きます。テストを書くことのつらみに対して、テスト駆動開発のアプローチを取り入れることによってその辛さは下げ、その上でテストを書くことを設計のツールとして活用する考え方について話せればと思っています。上級者向けWordPressを大規模に運用するにはスケールアウト可能な状態にしておくことが理想です。WordPressはスケールアウトを前提とした構造ではないため、スケールアウトするには、ルール決めとカスタマイズが必要になります。ランサーズではWordPressをAWSで運用しています。AWSで運用しているWordPressのスケールアウトのノウハウを、HTTPS化、セキュリティ対策と合わせて紹介いたします。中級者〜上級者向け独立したコアレイヤパターンは、アプリケーションアーキテクチャパターンの一つです。アプリケーションとして何を実装する(What)とフレームワークやライブラリを使ってどのように実装する(How)を分離するパターンです。文脈で良く語られるレイヤードアーキテクチャやクリーンアーキテクチャなどとの比較などご紹介します。初心者〜中級者向けWebサービスは生き物です。実際にどのようにインフラを監視し、プロダクトをモニタリングするかは重要なスキルです。関係内容に見えてもビジネス的なKPIはシステムの振る舞いに直結するモニタリング項目だったりします。そんな実際に小規模から大規模までWebサービスを支えるためのモニタリングの技術をお伝えします。システム障害が発生する前に知りたいがやり方がわからないこのような人たちが実際にどうすればいいか、そして次のステップに行くとどんなメリットがあるか。そんなモニタリングの話をしたいと思います。初心者向け株式会社オウケイウェイヴでは2000年10月より、Q&Aサービスを運営してきました。コミュニティサイトの運営においてはサポートチームのコンテンツに対するクオリティコントロールがとても重要になってきますが、社内向けであるということもあり、管理画面のPHPバージョンアップが後手になってしまっていました。そのような状況の中で、2017年11月より管理画面のリプレイスプロジェクトを進めてまいりました。そのリプレイスプロジェクトの取り組みや進める過程で発生した問題などについてお話できればと思います。(ランチセッション)オミカレはこの秋、会員登録総数30万人を突破したサービスで、日々数多くの改善が行われております。運用開始から約7年の経験から、もの凄いスピードについていく為に「変化に強いチーム、改善していく文化」が作り上げられています。この春転職してきた自分が感じたオミカレの組織・文化作りとはどういったものかというという事とその組織をより良くする為に自分が行った取組についてお話させて頂きます。中級者向け開発、運用を行っていくうえで避けることのできない障壁としてシステム障害があります。システム障害と言っても、プログラムのバグ、オペレーションミス、クラウドサービスの影響等、非常に多種多様な原因が存在します。それらのシステム障害は起こさないことが最善ではありますが、それと同じぐらい重要なのが”次、同じことを起こさないように何をするのか”です。このセッションではメルカリで実際に取り組んでいる有効な再発防止策を生み出すための取り組みや、実際に行った対策のユースケースを交え、再発防止策について今一度考えます。中級者向け昨今ではネイティブアプリケーションやSPAなどフロントエンドアプリケーションと、APIを提供するバックエンドアプリケーションを分けて作ることが多くなっています。多くの場面でモノリシックなアプリケーションを構築することもあるでしょう。使ったUI部品の共通化の方法、エコシステムについて解説します。v4にも採用されたことでも知られるGraphQL。旧来のRESTfulな形式のAPIを爆発的に置き換えていっている!とは言えませんが最近少しずつ国内でも採用事例を聞くようになりました。GraphQLとは何なのか?どういった強みがあるのか?ツラミはないの?等について話したいと思います。初心者〜中級者向け統合開発環境PhpStormとユニットテストフレームワークPHPUnitを連携すると、ユニットテストの作成が楽になります。このセッションではユニットテスト作成を楽にするためのPhpStorm機能をデモを交えながら紹介します。初心者向けサービスを運営していると、突発的な緊急案件や少し長期的な開発案件など様々な特徴があるtaskが待った無しでやってきます。要件を満たすだけではなく、その先を見据え、より良いアーキテクチャや新技術も活用していきます。しためまぐるしい状況の中でも品質担保、スピード感を持って対応するには`レビュー`が重要な要素になります。中級者向けCQRS(コマンドクエリ責務分離)は近年話題のアーキテクチャパターンですが、イベントソーシングやNoSQLデータベースと共に語られることが多いため、遠い世界の話だと感じている方もいるのではないでしょうか。CQRSそのものは馴染みのあるPHPとMySQL、それからOOPの基本原則さえわかっていれば十分に実践可能なものです。CQRSとその元ネタともいえる「コマンドクエリ分離原則」の解説に加えて、実際の業務でCQRSを採用してみた感触についてお話したいと思います。中級者向けPHPにおいて、middlewareという考え方が導入されたのは最近のことです。handlerのインターフェイスが定義されたことで、今後、標準化が進むことが期待されます。Frameworkといったmiddlewareベースのフレームワークだけでなく、LaravelやCakePHPでもおなじみのmiddlewareという仕組みについて、考え方からわかりやすく解説します。初心者〜中級者向けその時はベストだと思っていた名前も、後からコードを読み返したら何だかよく分からなくて、内容を思い出すのに時間がかかってしまった、という経験は誰しもきっとあるのではないでしょうか。変数やメソッドの名前の付け方を、「言葉の選び方」という観点で少しだけ深く考えてみようと思います。初心者向け昔作った愛着のあるWebアプリを、Laravel+PWAを組み込みつつモバイルアプリ風に仕上げた過程をお話します。Webアプリは、地図へのマッピングアプリとなっており、文字列検索により緯度経度をYahoo!さんのAPIで取得し、GoogleさんのAPIにて地点GoogleMapへのマッピングを行うものです。各地点間の所要時間もMap外に表示しています。若干APIのものやサーバなどPHP以外の話もでますが、ご了承ください。中級者向けPSRはPHPのフレームワークなどの開発者たち有志によって結成されたPHP-FIG(PHP相互運用グループ)によって策定されたPHPの共通仕様で、現在までに10種類あまりのPSRが発効されました。このセッションでは各PSRのインターフェイスを実装した上で、各仕様について紹介します。中級者向け長期運用中スマホゲームのサーバで使用しているPHPを短期間でバージョンアップしたことについて紹介します。テストコードが無いプロジェクトでどのようにしてPHP5.6からPHP7.2にバージョンアップを成功させたか、また、その後のパフォーマンス向上について紹介します。初心者向けエミュレータの設計やコードは、Webアプリやフレームワークのそれと違った特長を持っています。中級者向けPHPから派生し独自進化を遂げたHackを使ったアプリケーション開発では、PHPと異なり、静的型付け言語のような堅実なアプリケーション開発をサポートする強力な機能が多く用意されています。本セッションではそれらを使い、アプリケーションアーキテクチャ設計と、Hackならではの実装コードに落とし込んでいくヒントを紹介します。中級者〜上級者向けリファクタリング、ナビゲーション、ファイルの移動、PhpStormをマウスを使って操作していませんか?マウス、トラックパッドは窓から投げ捨ててしまいましょう。マウスフリーになるPhpStormの知ってトクするショートカット、並びに便利技100選を紹介します。このセッションを受講すれば明日から開発速度が100倍くらいになる!かもしれません。中級者向けJWT認証の概要を説明し、LaravelでのJWT認証導入からAPI作成方法までを説明します。初心者向けReactを追い越すのでは?と言われるほど注目されているVue.jsをLaravelを通じて実装した話を事例と共に紹介します。初心者向け【初心者向けです】サービスが拡大すると、サイトに表示する情報が増えてきます。コントローラのコードが肥大化していきます。本LTではViewComposerという機能を使用してコントローラのコードを主要な処理だけに絞る方法を紹介します。初心者向けサーバサイドエンジニアは多いけどiOS/Androidネイティブアプリエンジニアは少ない、という会社さんは結構多いのではないでしょうか?私はこれまで、何の因果か社内やプロジェクトの中でネイティブアプリ担当が自分だけ(他のエンジニアはみんなサーバサイド担当)という「ぼっち」環境で数年くらい過ごしてきました。PHPカンファレンス仙台の参加者は主にサーバサイドエンジニアの方が多いと思いますので、このLTではそんなぼっちiOSエンジニアが日々抱える悩みや苦労を、サーバサイドエンジニアの皆様と共有できればと思っています。中級者向けuzullaさんのPHPerKaigi2018「大統一PHP」(https://speakerdeck.com/uzulla/da-tong-php)で紹介されていたSwooleという非同期かつ、Coroutineの仕組みをもったライブラリがあります。Swooleを用いたフレームワークの1つにSwoftがあります。中級者向け先日、長谷川さんによりPHPで動くファミコンエミュレータが公開されました。ブログ記事で「誰か速くして!!」という話があったので、試しに少し速くしてみました。1つ1つの呼び出しは速いような関数が大量に呼びだされ、DBやネットワークレイテンシの問題がなく、PHPコードそのものの速度が問われる世界で、どんな最適化が有効なのか。オタク特有の早口でまくしたてます。