LT(5分)
初登壇(これまでカンファレンスで登壇経験なし)

プロジェクトを燃やす方法

164fm ヒロ氏

プロジェクトが炎上してしまった…
納期に間に合わない…
あとから仕様の観点漏れに気がついた…

開発をしていればこういうことに直面することがあるかと思います。

どのような行い、マインドセットがプロジェクトに悪影響を及ぼすか、
過去に自分が経験したことを皆様に懺悔することで、
後学に活かせればよいと考えている次第です。

1
LT(5分)

普段 PHP を書かない私が OSS である PHP のコミュニティに「貢献したい気持ち」を繋げるべく考えていること

tomio2480 西原 翔太

2024 年はどんな 1 年でしたか?
 
日本 PHP 界隈だと,各地で開かれた地域 PHP カンファレンスの印象が強いのではないでしょうか.
様々な背景の人たちが各地に足を運び,配信を見て,コンテンツを持ち寄り,運営をし......
それぞれの形で「貢献したい気持ち」を表現した 1 年でした.
2025 年もその勢いは変わらず,この名古屋開催につながっていると感じます.
 
多くの地域に PHP の名を冠した活動があれば,日常的に PHP に触らない人も PHP コミュニティに関わってきます.
かく言う私もその一人です.大前提として PHP は OSS であり PHP 自体の発展には PHP 自体の改善や利用拡大が不可欠です.
これらが主だと知りながら,その外から関わっています.
 
そんな私が PHP コミュニティに「貢献したい気持ち」を繋げるべく,どう考え,動いているかを話します.

1
レギュラートーク(15分)

PHPUnitのデータプロバイダーを改めてよく知り考える

takaram71 荒巻拓哉

あなたはPHPUnitを使っていますか?では、データプロバイダーは?

データプロバイダーは、1つのテストメソッドを引数を変えて実行する「パラメタライズドテスト」を実現する仕組みです。
PHPUnit 9までなら@dataProvider、10以降なら#[DataProvider]を使うことが多いですが、実はそれだけではないんです。

このトークでは、データプロバイダーを実現する複数の方法を紹介し、それらのメリット・デメリットを考えます。

お話しすること

  • データプロバイダーとは何か、それを使う利点
  • PHPUnitにおけるデータプロバイダーの実現方法
  • 各方法のメリット・デメリット、使い分け方

想定する観客

  • PHPUnitを使っているがデータプロバイダーを知らない人
  • #[DataProvider]@dataProviderしか知らない人
2
LT(5分)

PHPUnitのデータプロバイダーをもっと知ろう!

takaram71 荒巻拓哉

あなたはPHPUnitを使っていますか?では、データプロバイダーは?

データプロバイダーは、1つのテストメソッドを引数を変えて実行する「パラメタライズドテスト」を実現する仕組みです。
PHPUnit 10以降ではアトリビュートを使って実装しますが、そのときに使えるアトリビュートはなんと4種類もあります!

このLTでは、これら4つのアトリビュートを紹介するとともに、どう使い分ければいいのか考えていきます。

お話しすること

  • データプロバイダーとは何か
  • データプロバイダーを使う利点
  • PHPUnitにおけるデータプロバイダーの実現方法
  • 実現方法の使い分け方

想定する観客

  • PHPUnitを使っているがデータプロバイダーを知らない人
  • #[DataProvider]@dataProviderしか知らない人
1
レギュラートーク(15分)
初登壇(これまでカンファレンスで登壇経験なし) 東海勢(出身or在住)

情熱プログラマーになれなかった私の仕事との向き合い方

longkey1 longkey1

35歳をとっくの昔に過ぎ去った私は、今も変わらずソフトウェアエンジニアとして働いています。
若いころに読み、影響を受けた「情熱プログラマー」の著者ようには、決してなれていませんが、そんな私の仕事への向き合い方を皆さんにシェアし、何か持ち帰っていただければ幸いです。

主な内容

  • 文系出身でエンジニアのキャリアを始めた時の焦燥感
  • マネジメント職に転身した時に見えた景色
  • 地方からみたメガベンチャー企業の世界
  • 現在のソフトウェアエンジニアリングへの向き合い方
2
レギュラートーク(15分)
東海勢(出身or在住)

小中規模のWebサービスで「表示速度改善」に取りかかる前に知っておくと嬉しいこと

kataokatsuki Kataoka Katsuki

「なんかこのページ、表示が遅く感じるなあ。速くしたいなあ。」
と感じた経験がある方は多いのではないでしょうか?

しかしながら、いわゆる「チューニング」は各分野の専門家の方が日夜研究しておられる分野です。
サービスの規模・構成等によって目標・対処方法も大きく異なり、
「これをやれば高速になるテク」
をそのまま適用して「おっしゃ解決!」というのは難しいことも多いかと思います。

インフラ・フロントエンド・バックエンドと(強引に)分野を区切ったとして

  • どこで
  • どのような問題を
  • どの程度
  • どうやって解決するか?

の判断も難しいかと思います。

このトークでは、昔ながらの構成のWebアプリケーションにおいて
私の実体験から、「表示速度改善取り組む前に知っておくと良さそうな話」をしたいと思います。

このトークが各分野の専門的な内容を学んでいく足がかりになればいいなと考えています。

1
レギュラートーク(30分)

Laravel Sailを「よく分からない」から「大体わかった」にレベルアップするためのSail仕様を解剖するの巻

yu_mashirou 柚口ましろう

こんな方におすすめ

  • Laravel Sailをデフォルトだけしか使ったことのない方
  • Sailコマンドをサーバ上で実行したことのない方
  • Dockerの仕組みをもうちょっと深堀りしたい方

本題

みなさんはLaravel Sailを使っていますか?

Laravel Sailは2020年9月8日Laravel 8が登場したときに追加された、Docker環境を構築するための超便利パッケージです。
ですが、あまりにも多機能、というよりも全部モリモリセットになってしまっているため、開発用にしか使われていない方が多いのではないでしょうか?

そこで、ある程度実環境でも使えるように、Laravel Sailのデフォルト構成を、Dockerの理解を深めながら良い感じに改造するために、Laravel Sailを解剖していきたいと思います。

2
レギュラートーク(15分)
初登壇(これまでカンファレンスで登壇経験なし)

リソースを重要機能に集中!プロダクト価値を最大化する開発戦略

suzuki_mar 鈴木まー

登壇をする内容の概要
プロダクト開発を成功させるには、重要な機能にリソースを集中させることが不可欠です。重要な機能にフォーカスすることで、最大の価値と競合差別化を生み出せます。
一方で、重要でない機能を含む全体的なリファクタリングや、コードベースの保守性向上だけでは、こうした成果は得られません。
この登壇では、重要な機能についての考え方とLaコストをかけない機能の実装方法も提示します。

話を聞いた人に持ちかえってほしいこと
聞いた人には、プロダクトの機能を再評価し、リソース配分の優先順位を考え直すきっかけにしてほしいです。また、その考え方をチームで共有し、ディスカッションを通じて話し合う機会を持っていただきたいです。

主な内容

プロダクトの価値を考える必要性
どのように優先することを決めるか

同様のタイトルの30分との違い
こちらでは実際のコード例を省きます

1
レギュラートーク(15分)
初登壇(これまでカンファレンスで登壇経験なし)

変更に強いユニットテストの考え方

suzuki_mar 鈴木まー

変更に強いユニットテストの設計と実装について、実践的なアプローチについてはなします。
多くの開発現場で課題となっているテストコードのメンテナンス性やどのようなテストを書いたほうがいいかを具体的に解説します。

同様のタイトルの15分版となります
話すトピックの数を減らしています

主なトピック:
ユニットテストの本質的な目的の再考
メンテナンス性を重視したテスト設計の考え方
具体的なテストコード作成の指針

1
レギュラートーク(15分)

Laravelで挑むクリーンアーキテクチャ - フレームワークを活かしつつドメインモデルを守る方法

NakMeKtt 仲見川

クリーンアーキテクチャをベースにした開発においては、レイヤー構成やフレームワーク(FW)の利用方針をどのように棲み分けるか課題に感じる事があるかと思います。
FWの利便性を活かしつつも、ピュアな設計原則を守るためには、どこで柔軟に対応し、どこで堅実に守るかのバランスが求められます。

本セッションでは、私たちの実体験に基づき、具体的な構成やその判断基準をご紹介します。特にドメインモデルの保護を主眼に置き、FWの力を有効に活用しながらもクリーンアーキテクチャの原則に則った構成の実現方法と、現時点で私たちが感じている課題についてご紹介します。

私たちもまだ道半ばで伸びしろがあると思って居ますので是非、質疑応答やAsk The Speakerにて意見交換も出来ればと思います!

3
レギュラートーク(15分)

作ってわかるNullオブジェクトパターン

aki_artisan あかつか

Laravelのoptional()関数を使ったことはあるでしょうか?
Nullである可能性のあるオブジェクトに対してoptional関数を用いることで、Nullでない時はオブジェクトの動きをさせ、Nullの時はnullを返させることができるようになります。

optional関数を使って実装していたある日、ふと「どのようにして動いているのか」が気になりました。
調べてみると、Null Objectパターンというものを使って実装されていることがわかりました。

このトークでは、簡単なNullオブジェクトを自作することで、optionalがどのように実現されているのかを見ていきます。

話すこと

  • optional関数の説明
  • Null Object Patternの実装方法
  • Nullsafe operatorとの比較
3
レギュラートーク(15分)

MockeryでPHPテストをもっとシンプルに!効果的なモックの使い方

kajitack 梶川 琢馬

みなさん、PHPのテストを書くときに「他のクラスや依存関係のせいでテストが難しいな…」と思ったことはありませんか?
そんなときに役立つのが、PHPのモックフレームワーク Mockery です!

Mockeryを使えば、依存するクラスやインターフェースの動作をモックして、テストをもっとシンプルに、効率的に進められます。このトークでは、Mockeryの基本的な使い方から実際の業務で役立つテストケースまで、具体例を交えて解説します。

取り上げる予定の内容はこちら!

  • モックを使ったメソッド呼び出しの検証方法
  • 高度な引数の比較を使った柔軟なテスト
  • 実務でのテストケースの実例紹介
  • Mockeryを使えば、テストのストレスが軽減され、もっとスマートにテストが書けるようになります!ぜひ参加して、PHPのテストを楽にする方法を学んでください!
2
レギュラートーク(30分)

責務を分離するための例外設計

kajitack 梶川 琢馬

例外処理って「エラーをキャッチするもの」と思いがちですよね?
でも、実はもっと重要な役割があります。例外を使うことで「自分のコードがどこまで責任を持つべきか」を明確にし、処理を他に委任することができるんです。

このセッションでは、例外を活用してエラーハンドリングを整理し、過度なキャッチによるコードの複雑化を防ぐ方法をお伝えします。
さらに、フレームワークが担うべき役割や、ビジネスロジックを表現するカスタム例外の作り方も紹介します。

ぜひチームでのディスカッションに活用してみてください!

話すこと

  • 例外の型の使い分け
  • ビジネスロジックを表現するカスタム例外
  • 例外をハンドリングする方法
3
レギュラートーク(15分)

本当はこわくない SOLID 原則

shogogg 河瀨 翔吾

SOLID 原則は、ソフトウェア開発において高品質で保守性の高いコードを書くための重要なガイドラインですが、やたら難しい言葉が並んでいて理解が難しかったり、誤解に基づく解釈が広まってしまっている面があります。

本トークでは、SOLID 原則に含まれる5つの原則について PHP のサンプルコードを交えながら解説し、その活用方法についてお話しします。

こんな人に向けて話します

  • SOLID 原則?何それ知らないよ!って人
  • SOLID 原則、聞いたことあるけどよくわからん、って人
  • SOLID 原則、完全に理解したけど実践できていないよ、って人
1
レギュラートーク(15分)

技術的負債を正しく知り、正しく付き合う

shogogg 河瀨 翔吾

ソフトウェア開発を行うエンジニアで「『技術的負債』という言葉を知らない」という方は今日においてほとんどいないと思います。その一方で「技術的負債とは何か」を正しく理解し、自信を持って説明できる人はあまり多くないように思います。その相手が非エンジニアであればなおさらです。

このトークを通じて、技術的負債についての理解を深めるお手伝いができればと思います。

お話しすること

  • 技術的負債とはなにか
  • 技術的負債はいつ・どうして生まれるのか
  • 技術的負債を放置することで発生するビジネス面・技術面でのリスクとは
  • 技術的負債とどう付き合っていくべきか
1
レギュラートーク ルーキー枠(10分)

非フレームワークなPHPのススメ

aki_artisan あかつか

フレームワークを用いないPHPでの開発をした経験はあるでしょうか?
現在では、Laravelなどの便利なフレームワークが多数あり、業務で使うPHPは専らフレームワーク上のもの、ということもあるかもしれません。

私は、非フレームワークなPHPを使って、リバーシや物理エンジンなどを作って遊んでいます。

フレームワークを使わないPHPでは、本で見た設計を柔軟に試せたり、必要なパッケージをミニマムな状態で試せたりなど、独特の学びがあります。

レールは自分で敷く、そんな開発を体験してみませんか?

1
LT(5分)

なぜ私は2024年にPHPを使いLispを愛し型に賭けるのか

tadsan うさみけんた

私は業務でPHPに触れていますが、もともとはLispやRubyといった動的言語を好んで使っていました。
一方で私は近年はPHPStanといった静的型検査に力を入れていて、PHP界隈では型にこだわりがある人間のように振る舞っています。

プライベートではPHPStanにプルリクエストを送る一方、長年Emacs PHP Modeというソフトウェアのメイン開発者としてメンテナンスを続けています。

名古屋といえば関数型。なぜ私がまったく異なる特徴の複数のコミュニティで活動しているのか、プログラミング言語、関数型言語、型への想いを騙ります。

2
レギュラートーク(30分)

CPUとは何か - 4つの立場からCPUを考える

tomzoh 長谷川智希

私は中学生のMSXというパソコンのCPUであるZ80のマシン語をプログラミング言語として体験していました。

25年後の2016年、PHPで書かれたゲームボーイエミュレータのコードを読んで衝撃を受けました。ゲームボーイのCPUはZ80をベースに開発されたものであり、エミュレータで実装されていたのはまさにそのZ80の命令だったのです。

その後、書籍「CPUの創りかた」で紹介されている4ビットCPU TD4を実装したり、Z80のハードウェアエミュレータを開発したりしています。

このトークでは私がこの数年で触れてきた4形態のCPUについて解説し、CPUの楽しさをみなさんにお伝えします。

どれも"CPU"ですが、それぞれ開発時に見える世界が全く異なっています。
このトークを通してみなさんがCPUの設計や動作に興味を持ち、いっしょにCPUについて語れることを楽しみにしています!

2
LT(5分)
U25(登壇時に25歳以下)

VercelにPHPのアプリケーションをデプロイ

uutan1108 うーたん

このセッションではPHPで作成したアプリケーションをVercelにデプロイする方法を紹介します。

Vercelは「Vercel のフロントエンド クラウドは、開発者にフレームワーク、ワークフロー、インフラストラクチャを提供し、より高速でパーソナライズされた Web を構築します。」(X:@vercelより引用)で、PHPのイメージはありませんが、PHPのアプリケーションをデプロイすることができます。

また、VercelにはVercel PostgresというPostgreSQL(データベース)を提供するサービスもあります。PHPとVercel Postgresを用いてアプリケーションを作成し、Vercelで公開することができます。

このセッションでは、VerceでPHPを用いたアプロケーションを公開する方法とVercel Postgreの紹介をします。

2
レギュラートーク(30分)

アナログとデジタルの架け橋 - 0と1の世界

tomzoh 長谷川智希

「コンピュータは0と1しか処理できない」とよく言われています。
ビット演算があったり、浮動小数点演算があったり、文字コードが16進数だったりと、PHPerのみなさんもなんとなく実感としてはあると思いますが、なぜ「0と1しか処理できない」のでしょうか。

このトークではアナログの世界・電気回路でデジタルの世界・コンピュータ処理がどの様に表現されるのか、私たちがC言語やPHPで書いたプログラムの実行結果がディスプレイやスピーカーで認識できるところまでがどの様にできているかをお話します。

ふだんの活動ではあまり気にすることのないコンピュータの基本的な仕組みの話になりますが、このトークを聞いたみなさんが今までより少し解像度の上がった目でコンピュータを楽しめることを願っています。

2