採択
2024/02/11 10:30〜
$room['A']
レギュラートーク(15分)

オープニング

PHPカンファレンス関西2024実行委員会

オープニング

採択
2024/02/11 10:50〜
$room['A']
レギュラートーク(15分)

はじめてのOSSコントリビュート

youkidearitai てきめん

我々の業界では、オープンソースソフトウェア(ハードウェア)によって支えられています。
PHPもオープンソースです。いきなりですが、そんなPHPに何かで貢献してみませんか?

本トークではオープンソースによって得られる恩恵と、貢献の仕方・手法をご説明します。
php-srcに貢献しているぼくが個人的に嬉しい貢献をバーっと並べていきます。
たとえば

  • typoの修正
  • The PHP Foundationへの寄付
  • ドキュメント(doc-ja、doc-en)の修正
  • Issueで書けるFeature request(新機能の追加や既存の機能の提案))
  • Issue
  • PHPで書かれている.phptファイルの追加

初心者でもやっていけることをやることでオープンソースに貢献をすることで知見が得られ、
エキスパートへの道を一歩踏み出すきっかけになれば幸いです。
おおきに

採択
2024/02/11 10:50〜
$room['B']
レギュラートーク(15分)

レガシーシステムへのPHPStan導入から半年での課題と効果

don3_jp don

静的解析ツールは使っていますでしょうか?
昨今のPHPのバージョンアップでは型定義が厳しくなってきており、静的解析ツールを導入することの優位性が高まってきています。
15年以上続いているレガシーシステムにPHPStanを導入した際の課題と効果について紹介します。

・既存の静的解析ツールからPHPStanへの移行
・PHPStanの導入時の課題
・導入から半年での効果と課題

既存の静的管理ツールに課題を感じている方や、静的解析ツールを導入したいと考えている方にとって参考になる内容となっています。

採択
2024/02/11 10:50〜
$room['C']
レギュラートーク(15分)
初心者向け 関西在住者

Laravelでミニマム開発からスタートして個人サービスを利益化するまでの経験談!

mukae9 mukae

世の中には数多くのシステムサービスがありますが、少額であっても利益化まで持っていけるサービスは本当に限られるかと思います。
そこで今回は自分がリリースしているサービスで、少しですが利益化できたサービスの技術構成やLaravelだからこそできるサーバー代節約術、どうやってユーザーを獲得したのか、どのような告知を打ったのか、その費用対効果はどうだったのかなど、「技術的な側面」と「ビジネス的な側面」両方から経験に基づいたお話をしたいと思います!

12
採択
2024/02/11 13:00〜
$room['A']
レギュラートーク(15分)

CodeRevieweeが求められること

onopon_engineer おのぽん

誰かの書いたコードが世に出る過程で、コードレビューを行う組織は多いのではないでしょうか。
コードの質を担保するため。属人化を防ぐため。知識共有や認識合わせのため。チーム内のスキルアップのため。
コードレビューは様々な意味や目的を持って行われます。

先日発表したPHP Conference2023「CodeReviewerが求められること」の続編です。
https://fortee.jp/phpcon-2023/proposal/25891e6c-7762-47b5-8cb3-e3db7f056abc

前回のおさらいや、PHPコード上でのコミュニケーション例の紹介、
そしてどんなコーディングやPullRequestの出し方がCodeReviewerに求められるものとなっているのかに迫ります。

少しでもお役に立てると幸いです。

対象者: コードレビューに携わる全エンジニア(役職問わず)

採択
2024/02/11 13:00〜
$room['B']
レギュラートーク(15分)

アプリケーションエンジニアこそ「監視」だよね!と私が考える訳

o0h_ きんじょうひでき

開発と運用が分かれていた時代、「コードを書く人」から見て「本番システムの監視」は遠い存在だったと聞きます
──「アプリ側」の自分から見て、「それって本当に勿体ないぜ」と強く感じるのです!

頑張って作ったWebアプリケーション、ユーザーに気持ちよく使ってもらいたいですよね
そのために、少しだけ視野を広げてみませんか?

ねらい

開発者としてサービスに関わる人に、少しでも「良いものを届ける」ために「監視もやるぞ!!」という想いを持ち帰ってもらう

こんな人に伝えたい

  • コードを書くの楽しい、もっと楽しみたい!人
  • (とりわけ)自社サービスに関わっている人

こんな事を話します

  • そもそも監視ってどんなこと?なんで?
  • アプリケーション開発者でも出来ることあるの?
  • 実は「アプリ側」こそ大事な存在!

関連キーワード

  • サービス運用
  • オブザーバビリティ
採択
2024/02/11 13:00〜
$room['C']
レギュラートーク(15分)

レガシーとモダンなシステムが混在する開発環境を改善しよう

井上良太

古くからあるサービスには、機能強化とともにサブシステムが増えていきました。

最初は良いけれど、
・検証サーバーは共用だったり、個人毎だったりバラバラに存在
・共用サーバーには、交代して使用する為に待ち時間が発生
・複数の人が使うので、テストデータがぐちゃぐちゃに
・サブシステムが増える度にサーバーも増えてくる
・当然、ソース修正や管理、デプロイもややこしくなる
というような問題が、だんだん見えてきました。

では、この問題の改善にチャレンジしよう!とは言いつつ、
「今まで使い慣れたエディタやリポジトリ構成、開発の流れは変えたくないよ」という声もあります。
さて、どの様に改善していったでしょうか。

・Dockerで共用サーバーを廃止して、メンバー毎の環境を整理しましょう
・コンテナ環境でも今まで通りPhpStormで開発作業ができるようにしましょう
・ユニットテストもうまく連携しましょう

採択
2024/02/11 14:15〜
$room['A']
レギュラートーク(15分)
初心者向け 初登壇 関西在住者

なんで、ファイル名とクラス名を揃えるの? 知っておきたいautoloadのはなし

aki_artisan 赤塚啓紀

Target class [...] does not exist.
このようなエラーを見たことはないでしょうか?そして、よくわからないけど、ファイル名を直したらうまく動くようになった!という経験はないでしょうか?

実はこの裏ではautoloadという仕組みが働いています。

autoloadがどういう仕組みで動いているのかを知ることで、ファイルが読み込まれない時やクラスが見つからない時の原因が早くみつけられるかもしれません。

このトークではPHP初心者向けにautoloadの仕組みを少し掘り下げてお話しします。

トークの内容
・autoloadは何を解決するか
・autoloadのルール
・autoloadを実現する仕組み

採択
2024/02/11 14:15〜
$room['B']
レギュラートーク(15分)

PHP8.2にバージョンアップしたら文字化けが発生して道頓堀に飛び込みたくなった話

藤掛治

皆さんはリリース後に文字化けが発生して、道頓堀に飛び込みたくなったことはありますか?
私はあります(※)。

PHP8.2の下位互換性のない修正の1つにmb_detect_encodingの文字コード検出の仕様変更があります。

私が担当しているメール共有サービスのメールディーラーでバージョンアップ後に、一部の受信メールが文字化けをしました。

受信したメールのエンコード時にmb_detect_encodingを使っていたからです。

下位互換性がないため文字化けを回避することができず、結果的にメールヘッダに文字コードの指定がないRFCに準拠していないメールまで対応しました。

メールディーラーの保守運用・顧客対応チームのリーダである私が顧客対応で泣きをみたことを中心にお話いたします。

私と同様に顧客対応されているエンジニアの方々の参考になれば幸いです。

※実際には飛び込んでいません

採択
2024/02/11 14:15〜
$room['C']
レギュラートーク(15分)

その条件分岐って本当に必要?

mako5656_i 伊神 誠人

弊社では文化として受け継がれている「条件分岐禁止」というのがあります。
条件分岐禁止バンドをつくっちゃうほどに

条件分岐があることでコードが複雑化してしまったり見にくくなってしてしてしまいます。

そのアンチパターンやどうしたら良いコードになるのかを話します。

対象者: PHPのコードを綺麗に書きたい人

採択
2024/02/11 14:35〜
$room['A']
レギュラートーク(15分)

実践、Interface

このトークでは架空サイトのログインをInterfaceを利用して差し替えることでInterfaceへの理解を深めます。

「Interfaceってなんだか抽象的で分かりにくい」
「解説しているブログ記事や映像を見てもいまいちピンと来ていない」
「ライブラリのInterfaceの使い方見てもいまいち嬉しさが分からない」

そんな方は是非このプロポーザルに☆をつけてください!
Interface、コワクナイ!

採択
2024/02/11 14:35〜
$room['B']
レギュラートーク(15分)

PHPコミュニティ、その魅力と熱狂をあなたにも!!!

kotomin_m ことみん

「PHPコミュニティ、その魅力と熱狂をあなたにも」と題した私のトークへようこそ!
2022年から数々のPHPカンファレンスや勉強会に飛び込んで、今や参加したイベント数は両手ではとうに数えきれないほど、私はPHPコミュニティへの熱い愛に満ちています!!!
PHPにとどまらず、技術コミュニティへの情熱は、一人のPHPerとして、また一人のエンジニアとして、成長の核となっています。

「技術コミュニティとは何か?」、「なぜ私はPHPコミュニティをここまで愛するのか?」という問いに対し、私の体験と感動を通じてその答えをお届けします。

ただ参加するだけではもったいない!このトークを通じて、「PHPコミュニティ人生をどうすれば200%楽しめるか」という秘訣を余すことなく解説します!
6年ぶりのPHPカンファレンス関西2024だからこそ聞いてほしいトークです!是非、この機会をお見逃しなく!!

採択
2024/02/11 14:35〜
$room['C']
レギュラートーク(15分)
初心者向け 初登壇 関西在住者

Mutation Testingとはなにか? 〜Laravel(Pest)でInfectionを利用したライブデモ〜

samurai_se Kanon

Mutation Testing とは、プロダクションコードに対するテストコードがどれだけ十分なものか、というテストの品質自体を評価するテスト手法です。

Mutation Testing を導入することで何がよいかというと、見かけ上のコードカバレッジが高く、作成したソースコード全般的にテストコードが網羅できていたとしても、テストコードが正しく書けているとは限らないのですが、その部分を簡単に検出できるということです。

今回は「Mutation Testingとは?」という詳しいお話から始め、実際にInfection PHPを利用してMutation Testing をライブデモしながらお話をすることで、より品質の高いテストコードの作成に寄与できればと考えています。

28
採択
2024/02/11 15:10〜
$room['A']
レギュラートーク(15分)

モデルとは何か

77web 菱田裕美

PHPerのあなたにとって、"モデル"とは何ですか?
Laravelユーザーにとってはデータベースに保存された1件のレコードを表すアレかもしれませんが、一口に"モデル"と言っても利用シーンや文脈ごとに意味が異なります。
さまざまな"モデル"を見ながら正体を探ってみたいと思います。

採択
2024/02/11 15:10〜
$room['B']
レギュラートーク(15分)

nullsafe演算子を使おう〜if文地獄からの開放〜

NakMeKtt 仲見川勝人

PHP8.0にて導入されたnullsafe演算子(null安全演算子)。
メソッドチェーンしたいけどnullableだからnullチェックしないといけない、そんなときに大活躍するのがこのnullsafe演算子です。

ご存じの方も多いかも知れませんが、改めてその有用性や使い方を「今まではこう書いていた」という事例であるif文での書き方やnullObjectパターンを添えてご紹介したいと思います。

nullsafe演算子を使いこなして、より効率的なコードを書く第一歩を踏み出しましょう。

想定視聴者

  • nullsafe演算子聞き覚えがないな、という方
  • 聞いたことはあるけどいまいち使い道がわからないな、という方
  • nullチェックで苦労した方
  • 最近PHP8.xに触れて新しい書き方をキャッチアップ中な方
採択
2024/02/11 15:10〜
$room['C']
レギュラートーク(15分)

PHPの「歴史的な理由」ってなんだ!?

suguru_ohki スー

PHPは20年を超える歴史を持つ言語で、php.netでは度々「歴史的な理由」という単語を見かけます。
このトークでは、php.netの標準関数における説明において「歴史的な理由」がなぜ生まれたのかを追い、PHPの歴史とともにその理由について深掘ります。

採択
2024/02/11 15:30〜
$room['A']
レギュラートーク(15分)

PHPで生成AIのAPIをやってみた

ixcy 有本雅哉

ChatGPTの人気で、話題沸騰の生成AI。
Pythonではなく、PHPでOpenAIのAPIをつかう方法をやってみました。

Pythonが一般的に使用される中、PHPを活用してAI技術を取り入れる方法を実際のコード例を説明します。

  • OpenAIのAPIにアクセスするための基本的な手順の説明
  • APIキーの管理とセキュリティについてのベストプラクティス
  • PHPを使用して、生成AIを活用してテキスト生成を行う実際のコード例
  • 生成AIを使用することで解決できる問題やビジネスへの適用可能性について
    上記をご紹介したいと思います。
採択
2024/02/11 15:30〜
$room['B']
レギュラートーク(15分)

PHPで学ぶ、セッションの基本と応用

hanhan1978 富所 亮

ステートレスなHTTPをステートフルに変えてくれる仕組みがセッションです。ユーザのログイン、リダイレクト後のエラーメッセージの表示、CSRF対策等、現代のウェブアプリケーションで多用されているセッションですが、セッションがどのように動いているかと聞かれた時に正しく答えられますか?

本トークでは、ウェブアプリケーションにおけるセッションについて、その正体を分かりやすく解説します。セッションの正体を知ることで、初心者とベテランエンジニアの間に存在する知識と経験の差を少しでも埋めることが狙いです。

このトークでお話すること

  • セッションの仕組み
  • ウェブアプリケーションフレームワークにおいて利用されているセッションの例
  • セッションが本番アプリのアーキテクチャに与える影響
採択
2024/02/11 15:30〜
$room['C']
レギュラートーク(15分)

夢から現実へ: PHPエンジニアの私がスタートアップCTOとして直面した挑戦

kunikiya 原田裕介

内製開発チームを立ち上げて半年程度のスタートアップに昨年ジョインし、2023年の7月からCTOをやっております。
14名の開発チームに成長、サービスの展開を加速させていく中で、組織作りや開発基盤の整備を含め、取り組んできたことをPHPer目線でお話しします。
CTOに限らず似たような立ち位置の企業にジョインしたエンジニアの参考になればと考えています。

◆対象者
・スタートアップエンジニア
・新規の開発チーム立ち上げをしている人

◆話すこと
・エンジニア組織作り
・採用、技術広報、技術試験の導入
・経営層、他部署の知識向上
・開発環境、ルール作り
・うまくいった取り組み、うまくいかなかった取り組み

採択
2024/02/11 15:50〜
$room['A']
レギュラートーク(15分)
関西在住者

ほげ言語にあってPHPにない機能

tanakahisateru 田中ひさてる

いろいろな言語の言語機能のうち、PHPにまだないものを挙げます。
で、ないのはしょうがないので、どうするかと考えていきます。

21