PHPerKaigi 2023
2023年3月23日開催 / 発表資料 66 本
石坂 省吾
Laravel製の不動産クラウドファンディングを2年以上運用して得た失敗談。インフラやDevOpsの改善を含め、失敗を品質向上につなげた具体例が分かる。
てきめん
PHP 8.1以降のmbstringの変更点と後方互換性の問題、UTF-8の最適化を整理し、文字コードの理解を深められる。
果物リン
空のファイルから自作PHPフレームワークを作る過程を紹介。composerの使い方、ライブラリ選定、テストとCI、Packagist公開での試行錯誤が分かる。
きんじょうひでき
2010年刊『パーフェクトPHP』のMVCフレームワークをPHP8.2で現代風に書き直す試み。当時と今のFWの要件の違いと実装への落とし込み方が分かる。
清家史郎
AWS Lambda でのPHP本番運用の経験を踏まえ、PHP 8.1に対応したAWS App Runnerと比較し、本番利用できるかの可能性と違いを探る。
ちゃちい
名付けの重要性を見直し、名前を付けられない画面とはどんな状態かを考えることで、設計における命名への意識を改められる。
takedajs / ヒエイ / おのぽん
機能開発を止めずに技術負債を解消する進め方と、事業メンバーの理解を得る方法、開発サイクル加速の工夫が分かる。
株式会社イーシーキューブ 斉田真也
OSS開発と並んでセキュリティ対策が重要な理由と、どれだけ時間をかけるべきかを、実際に注力したエンジニアの経験から語る。
- PHPUnit 10 概論スライド動画
02
2023年リリースのPHPUnit 10で、PHPUnit 9から何が変わったかをchangelogに沿って解説。要件変更や削除された機能、移行時の注意点が分かる。
久保田賢二朗
ウォーターフォール型に見えて成功したプロジェクトを、『クリーンアジャイル』に照らして分析。成功に効いたアジャイルのプラクティスが分かる。
- PHPをブラウザで動かす技術スライド動画
永野(@glassmonekey)
WebAssemblyを使ってPHPをブラウザ上で動かす技術をデモ付きで紹介し、必要な技術要素や現状の課題が分かる。
田中ひさてる
書籍「ちょうぜつソフトウェア設計入門」の執筆時に考えていた意図や、本に書かなかった裏話・書き方の判断理由が聞ける。
- PHPで学ぶ "Cacheの距離" の話スライド動画
富所 亮
Cacheを入れても速くならない理由を、Cacheとの距離という視点で整理。PHPで使える各種Cacheの効果とベンチマーク結果から使い分けが分かる。
- 作って理解するバックドアスライド動画
Roku
PHPでバックドアを実際に書きながら、その仕組み、原因と対策、PHPerにできることを解説。Webサイト改ざん被害の実態と防ぎ方が分かる。
小山健一郎
APIサーバ開発でテスティングトロフィーを採用した理由と、インテグレーションテストを低コストで増やす仕組みの作り方が分かる。
akase244
URLを入力してから200 OKが返りページが表示されるまでの、ブラウザの向こう側の仕組みについて、登壇者の調査結果から全体像を学べる。
ナカムラシュウイチロウ
建設支援クラウドPhotoructionが解く課題と、PHP/Laravelによる構成、日々の技術課題の改善の取り組みが分かる。
すぎやま@MASH弦楽団
登壇のハードルを下げる「完成度低いの歓迎LT大会」の経緯と成果を紹介し、実際のLT大会の雰囲気を体験できる。
山岡広幸
0.1+0.2のような浮動小数点の誤差を避け、PHPの任意精度演算で消費税や手数料などの金額を正しく計算する方法が分かる。
sji
ISUCON12本選問題のPHP参考実装を、他言語参加者の手法も参考に改善しスコアを伸ばした記録。PHPで性能改善がどこまで通用するか分かる。
nsfisis
PHPの参照の挙動を観察し、php-srcのソースを追って実装レベルで理解する話。参照の内部動作とphp-srcの読み方の入り口が分かる。
しけちあ
PHP 8時代の型と静的解析、フォーマット、IDEを統一して使い、チームで安全に長期開発を続ける防衛的な手法が分かる。
あすみ
Composerの役割やcomposer.lock、コマンド、実行方法を整理し、Dockerのマルチステージビルドでの使い方と採用例が分かる。
- PHP Parserで学ぶPHPスライド動画
inouehi
PHP Parserのノード定義を読み解き、PHPの文や式、構成要素にどんな種類があるかを知ることで、PHPの言語構造への理解が深まる。
秋葉 誠一
データ基盤やBIを作っても広まらなかった失敗から学び、データの民主化を進めるための泥臭い取り組みとアプローチの変え方が分かる。
やまもとひろや
PHPのプロセスが途中で止まりデータが中途半端に残る問題を、シグナル制御で防ぐ方法の解説。安全に終了させる実装の考え方が分かる。
工藤 剛
Rectorを活用して本番環境のPHPを7.4から8.1へ運用を止めずにアップグレードした実例から、進め方とツール活用のコツが分かる。
- ふんわり使う PlantUMLスライド動画
@suzuki
厳密さにこだわらずPlantUMLでテキストベースの図を気軽に描き、情報共有や図の差分管理に活かす方法が分かる。
げんえい
CodeCraftersの課題でPHPからRedisを作った体験談。サイトの概要、作成手順、RESPプロトコルの基本が分かり、学習の次の一歩の参考になる。
Yamato
社内専用システムをIPアドレス制限ではなくGoogle CloudのIAPで守り、在宅でも安全にアクセスできる構成とPHPでのパスワードレス実装のポイントが分かる。
大塚 ひろき
New Relicでサービスの性能だけでなく開発チームの活動も可視化する事例を、コードレベルも交えて紹介。定量化による改善の進め方が分かる。
前田啓佑
大規模システムのパフォーマンス改善を「計測してから直す」方針で進めた実例。効率的な進め方、改善方法、失敗談から実務の勘所が分かる。
山村 光平
意図が伝わらず誤解や問題を招く不幸な命名の実例を挙げ、変数や関数に名前を付ける際の重要性と気をつけるべき点を考えられる。
Takaaki Tsunoda(Taka2)
AWS EC2上のPHP-fpmのWordPressをDatadogで監視し、APM・ログ・メトリクスがどう見えるかを紹介。Observabilityの基礎と実際の画面が分かる。
- stdClassって一体何者なんだ?!スライド動画
寺西 帝乃
動的プロパティが非推奨になる中、stdClassだけが許される理由を機能と用途から解き明かす。今後stdClassを使ってよいかの判断基準が分かる。
浅野 仁志
Laravel、CakePHP、Yii、Slimの特徴や設計思想、向いているプロジェクトを比較。各フレームワークの違いと選び方が分かる。
Motoki Hirao
JavaからPHP/Laravelへのリプレイス案件で、脆弱性診断ツールVAddyを使ったセキュリティテストを実施。導入の課題と問題コードの対処法が分かる。
くろきり
PHPを.NETランタイム上で動かせるPeachPieの紹介と、個人開発で得た知見。C#とPHPの相互運用の可能性が分かる。
mpyw ・ New Relic株式会社 大平 譲
New RelicでLaravelアプリを実際に計測する方法を、画面を使って紹介。ボトルネックの見つけ方とチューニングの勘所が分かる。
横山雅季
問い合わせ調査をアキネイター式の質問で過去事例に絞り込む方法を、miroとKibelaでの工夫と課題を通じて紹介する。
- PHPの最高機能、配列を捨てよう!!スライド動画
uzulla
PHPの連想配列がなぜデータの信頼性を損なうのかを示し、配列やstdClassをやめて型のあるオブジェクトでデータを扱う利点と考え方が分かる。
曽根 壮大
機能追加に強いテーブル設計を実例で解説し、責務の分解やRDBMSの活用、ALTERによる障害や条件分岐の増加を避ける考え方が分かる。
おかしょい/岡田 正平
CakePHP、Laravel、Slim、Symfonyのindex.phpを起点に、ルーティングやController呼び出し、レスポンス返却の仕組みを比べて理解できる。
中榮健二
PHP開発でコンテナのマネージドサービスを使う利点と、実行方式・イメージのビルド・非同期ワーカーなどPHP特有の課題への対処が分かる。
伊神誠人・志賀彩乃
オブジェクト指向に基づく依存の少ないユニットテストの書き方と、Symfonyの公式コマンドでCRUD画面を作る方法の2本立て。
たけてぃ
約10年運用のLaravelアプリを安定稼働させる監視強化やパフォーマンスチューニング、次の10年への基盤づくりが分かる。
- Attributeを極めるスライド動画
tadsan
PHP 8のアトリビュートについて、文法や制約、アクセス方法、実用例を短時間で整理し、使いこなすための知識が得られる。
- 計測できるレガシーさを捉え、コード改善に対処するスライド動画
大橋 佑太
規模・重複・規約違反・循環的複雑度などツールで測れるレガシーさを数値化し、どこから改善やリファクタリングすべきか判断する道筋が分かる。
武田 憲太郎
賛否あるLaravelとEloquentの魅力を、使うべき機能やベストプラクティス、コンテナでの本番運用まで紹介。Laravelらしい開発の進め方が分かる。
- PHPの配列の内部実装について学びたくなった。スライド動画
meihei
PHPの配列・連想配列の内部実装を、PHP 5から7への変化も含めて読み解き、順序付きマップの仕組みが分かる。
森下 繁喜
PHP_CodeSnifferを導入して規約チェックを自動化し、コードレビューの手間を減らした実体験から、導入時の困りごとや気づきが分かる。
そーく
PHP8.1の列挙型をJavaやPythonの仕様と比べながら解説。PHPでの役割と使い方、安全な設計への活かし方が分かる。
EndoFutoshi
PHPの対話シェルPsySHの導入と使い方を紹介し、ブレイクポイントや変数確認で素早くデバッグする方法が分かる。
山藤駿亮
PHP8.xのmatch式、名前付き引数、コンストラクタ関連の新機能を7系と比較し、メリットや注意点を知ってバージョンアップへの意欲が高まる。
- 可能な限り確実にmkdirを成功させるにはスライド動画
すぎやま@MASH弦楽団
PHPのmkdirで起きがちな、パス指定・実行タイミング・パーミッションに由来する失敗を、ラッパー関数づくりを通じて学び確実に成功させる方法が分かる。
ことみん
PhpStormの便利なショートカットキーを、デフォルト設定と登壇者独自のカスタマイズの両面から多数紹介し、IDEの魅力と効率的な使い方が分かる。
mukaken
初めて勉強会を開く人向けに、集客やタイムテーブルなどの運用面と、マイクや接続機器などトラブルを防ぐ機材面のノウハウ5選が分かる。
- PHPマジックメソッドクイズ!スライド動画
加納悠史
PHPのマジックメソッドの効果と使い方をクイズ形式で学び、フレームワークやライブラリのコードを読む時に迷わなくなる。
廣部 知生
フレームワーク以前の2001年リリースのレガシー製品を、Laravelに「載せる」形で移行した実装戦略を紹介。段階的な置き換えの考え方が分かる。
- クイズを作ってPHPに親しむスライド動画
やんまー
PHPのクイズを作る経験から得られる学びやコツ、注意点を紹介し、作問を通じてPHPに詳しくなる方法が分かる。
- PHPのARM向け最適化の中身を見てみたスライド動画
hnw
PHPに実装されたARM向け最適化の中身と背景知識を解説し、ARM環境採用をアプリ層まで含めて判断する材料が得られる。
そが
サイボウズが出題したPHPerチャレンジ問題の解説LT。問題の狙いと答えの考え方が分かる。
- 成瀬の挑戦状動画
GMOインターネットグループ
スポンサー企画「成瀬の挑戦状」と連動し、参加者の挑戦の様子を実況しつつ、問題の解答と解説を行うセッション。
- 未来の開発者へ負債を残さないために取り組んだことスライド動画
工藤 颯斗
DDD導入、テスト設計の見直し、SRE活動、OAS活用など、技術的負債を将来に残さないための実践例が分かる。
GMOインターネットグループ
GMOインターネットグループが作成したPHPerチャレンジ問題の解説セッション。出題内容と解き方が分かる。
nsfisis
デジタルサーカス社が作成したPHPerチャレンジの問題について、解答と解説を行うセッション。