PHPerKaigi 2022
2022年4月9日開催 / 発表資料 60 本
- テスト放送動画
uzulla
進化を続けるPHPの現状やUnion型対応などについて、主観を交えて語る雑談的なトーク。PHPの今の雰囲気と変化への向き合い方に触れられる。
小黒 陽弘
Laravelアプリの性能問題をDatadog APMで可視化し、導入手順と継続的な改善の進め方が事例で分かる。
並里
PHPのFatal・Parse・Warning・Noticeの違いと読み方を整理し、原因の素早い特定と適切なエラーハンドリングの方法が分かる。
若田部 誠
サムザップでのNotion導入経緯や移行、活用法と、PHPからNotion APIを使った仕組み作りの実例が分かる。
- エラー監視とテスト体制への改善作戦スライド動画
ヒエイカザト
Sentryによる本番エラー監視と、チームでテストコード文化を根付かせカバレッジを上げる施策が分かる。
株式会社あつまる 三井 翔吾
約7年のWordPress制作経験と失敗談から、WordPressが提供する価値と、現代のCMSで愛され続ける理由が分かる。
めもり〜
PHP 7.4のFFIとlibnfcを使い、SuicaなどFeliCaを読むNFCリーダーをPHPで実装する方法を、デモを交えて学べる。
和田卓人
PHP 8.1の型宣言や列挙型などを活かし、誤りにくい「予防」中心の設計で堅牢なコードを書くヒントが分かる。
植江田和成
MongoDBの約1.6億件・1TBの記事データをPHPでBigQueryへ移行した事例。Stream Wrapperでの圧縮書き込みなど大量データ処理の工夫が分かる。
富所 亮
PHPでFiberを使いEventLoopを自作することで、非同期処理の仕組みを根本から理解し、GeneratorやFiberの役割も分かる。
永野 峻輔
GraphQLのメリット・デメリットを整理し、PHPで扱う是非や主要ライブラリ、エコシステムの現状が分かる。
香月 雄介
大規模サービス「ペライチ」でCakePHP2から4へ、2バージョンを並行稼働させ停止せず段階移行した工夫と手順が分かる。
柴田 一帆
フルリモートの90名規模Garoon開発チームで1on1ログを公開し、モヤモヤを見える化して改善した取り組みが分かる。
ふわせぐ
Laravel初学者が陥りがちな肥大化したControllerやFacade依存の問題と、その解決策が分かる新卒の経験談。
川島 慧
BASEがCakePHP2からのリアーキテクチャでモジュラモノリスを選んだ戦略と、PHPでの実践方法が分かる。
小山健一郎
GitHub Actionsの細かな活用知見を紹介し、最終的にPHPで独自Actionを作る方法まで分かる発表。
Kazuki Higashiguchi
Selenium等の裏側にあるWebDriverとChrome DevTools Protocolの仕様と違いを、PHPで直接実装して理解し、E2Eテストの課題に対処できる。
- 設計におけるソリューションドメインスライド動画
吉田あひる
技術に関するソリューションドメインの知識が設計に与える影響を整理し、PHPを避けるべき問題領域の考え方が分かる。
白井 英
Laravel OctaneをPharでワンバイナリ化して運用した経験から、PHPをビルド・デプロイする実践上の課題が分かる。
久山勝生
10年超の歴史を持つものを含む全5サービスのPHP8移行の進め方とノウハウが、事例から分かる。
GMOインターネット株式会社
マインクラフトを題材にしたスクラムワークショップの様子を紹介。体験を通じてスクラムの理解を深める方法が分かる。
安達 勇太
リリース9年目の巨大PHPモノリスで、マイクロサービス化では解けなかった複雑性にどう挑んでいるかを、具体例とともに紹介する取り組みの話。
- DBGpを使ってPHPのデバッガーをつくろうスライド動画
田実 誠
DBGpプロトコルとPHPのソケット通信で簡易デバッガーを作り、Xdebugなどデバッガーの仕組みが分かる。
kiridaruma
PHPで長時間かかるバッチ処理を並列実行する方法と注意点が、インフラ担当者の実体験をもとに分かる。
たけうちよしたか
quicktypeがPHPに未対応という前提で、言語をまたぐ型情報の共有を実現する工夫を紹介。PHPで型を活かしつつフロントエンドと連携する方法が分かる。
- 作って遊ぼう!Composer Pluginスライド動画
きんじょうひでき
Composer Pluginの仕組みと概念、実例を紹介し、何ができて開発者体験の向上にどう使えるかが分かる。
大橋佑太
更新を怠ったプロジェクトにRenovateを段階的に導入し、依存ライブラリを定期更新する運用を作った流れが分かる。
- 計測ことはじめ 〜アプリケーションを知るために〜スライド動画
清家史郎
Webアプリの性能改善に向けた計測の第一歩として、サーバー、DB、フロントエンドの各層での計測手法を俯瞰し、N+1問題などの課題発見につなげ方が分かる。
ぬさし
foreachの複雑化を、map処理・並列処理・遅延処理の考え方で整理し、PHPで読みやすく反復する方法が分かる。
三雲
PHPの記号を4択で出題する視聴者参加型の高速LTクイズ。初心者も上級者も記号の意味を楽しく確認できる。
もやしきんぐ
PHPのスカラー型をクラスでラップしメソッドを使えるようにするライブラリStannumの開発動機と設計が分かる。
- 本当にあった怖いPHPコード7選スライド
カンボ@沖縄
引数7個以上や深いifネストなど、実務で見た読みにくいPHPコードの実例と、そのリファクタリング方法を学べる。
廣部知生
新卒で20年もののPHPレガシープロダクトに配属された体験談。初学者がつまずく点と乗り越え方が分かるLT。
かずへい
IteratorやStringableなどPHPの定義済みInterfaceを実装し、独自クラスを組み込み型のように扱う方法と利点が分かる。
hnw
PHPのgRPCクライアントでGoogle Assistant APIを呼び出し、プログラムから「OKグーグル」を実現する試み。PythonやGoより手間な点とgRPC活用の勘所が分かる。
おかしょい / 岡田 正平
ISUCON11のPHP参考実装を移植した際の設計判断や取捨選択、トラブル解決の経緯から、設計実装の事例が学べる。
曽根 壮大
RDBMSが長く使われる理由とこの10年の変化を振り返り、今後10年使えるデータストアの選び方が分かる。
- 2022年版php-srcのバグ報告の仕方スライド動画
てきめん
2021年末にbugs.php.netからGitHubへ移ったphp-srcのバグ報告の新しい手順と、報告後の扱われ方、セキュリティ案件の例外が分かる。
- PHP で PHP のプロファイラをつくろうスライド動画
sji
FFI経由でLinuxのシステムコールを使い、別プロセスのPHPを覗くプロファイラの仕組みと使い方が分かる。
takoba
CakePHP Fixture Factoriesを中心に、PHPでのテストフィクスチャ管理の新しい選択肢と使い方が分かる。
02
Conventional Commitsの考え方と導入のメリットを解説。ツールでのメッセージ作成や、PHPプロジェクトでのChangeLog自動生成の方法が分かる。
志賀彩乃・有澤之博
Satisで社内プライベートパッケージを再利用する事例と、受託から自社サービス企業へ転職した感想の2本立てLT。
- カオナビでのチーム開発の舞台裏スライド動画
佐野元気
カオナビの約1年の開発プロジェクトで、スクラムによるチーム開発で直面した問題と対処法が分かる経験談。
- PHPerでもできる!マイクロサービススライド動画
菱田裕美
PHPでマイクロサービスを作り運用してきた経験から、向く機能の見極め、設計とコード、AWS上での稼働の仕組みが分かる。
ytake
チーム間で言葉の意味がずれる問題を題材に、ドメイン駆動設計の境界づけられたコンテキストの基本と、コミュニケーション改善への活かし方が分かる。
- PHPコードを消すライブラリを作ったスライド動画
Kenjiro Kubota
コメントを目印にPHPコードを削除するComposer Bin Commandライブラリの開発話。コマンドの作り方とPackagistでの公開手順が分かる。
- 本当にあった怖い脆弱性の話スライド動画
Roku
保守で出会った実際の脆弱性やインシデント事例を怪談風に紹介し、Webシステムで起こりがちな危険と教訓が分かる。
岡本 秀高
AWS LambdaでPHPを動かしStripeの決済・定期課金APIを作る方法と、Secrets Managerによる安全な鍵運用が分かる。
- フレームワークで見るObserverパターンスライド動画
あすみ
CakePHPのCakeEventとLaravel Observerを比べ、Observerパターンの基本と実装・使い方の違いが分かる。
株式会社ユニラボ システム部 石揚 千洋
PHPの型の種類と使い方、型を意識するメリット・デメリットを解説し、保守性や堅牢性を高める実践方法が分かる。
takamasa uno
10年以上運用するNEXT ENGINEに溜まった「秘伝のタレ」的な冗長コードや管理者不明箇所へ、どう向き合っているかが分かる事例紹介。
うさみけんた
PSR-7とPSR-15でフレームワークに依存せずWebアプリを作る実装パターンを、ピクシブ百科事典の経験から学べる発表。
くすのき
PHPコンテナイメージをマルチステージビルドとキャッシュで高速化しつつ小さく保つ方法が分かる。
AkitoTsukahara
機能実装のついでにできるLaravelのデータベースクエリ最適化のコツを短時間で紹介。パフォーマンスを意識した実装の手がかりが得られる。
- PHPの緩やかな比較の実態スライド
ゆい
PHPの「==」による緩やかな比較が内部でどこにどう実装されているかを辿り、その挙動の根拠が分かる話。
つざき
LaravelでN+1問題を手早く検出し、問題化する前に解消する方法が分かる。
おかしょい / 岡田 正平
PHP8のAttributesを使い、DBやJSONのデータをクラスのインスタンスへ自動変換するメタプログラミングの方法が分かる。
加納悠史
PhpStormの便利機能を段階的に解説するセッション。日常業務ですぐ使えるテクニックから無理なく習得する道筋が分かる。
きんじょうひでき
cs2prでGitHub Actions上の静的解析やテスト結果をPRの該当箇所に表示する方法と使い方が分かる。
加賀田 裕介
テストコードでの共通化はプロダクトコードと考え方が違う点を、DRYとDAMPの2原則で整理する話。レビューで共通化の是非を説明するための視点が得られる。