採択
2022/04/11 12:10〜
Track A
レギュラートーク(20分)

コミットメッセージ規約「Conventional Commits」を導入してみよう!

みなさんはコミットメッセージ規約「Conventional Commits」をご存知でしょうか?
「Conventional Commits」を導入すると様々な利点があります。
例えば調査しやすいコミットメッセージをささっと書けるようになったり、ChangeLogを自動生成できるようになったり・・・

そこで本セッションでは、コミットメッセージ規約「Conventional Commits」を導入するとどんなメリットがあるのかを話していきます。

具体的には以下のような内容について話をする予定です。
・コミットメッセージ規約「Conventional Commits」とは何か?
・ツールを使って、Conventional Commitsに沿ったコミットメッセージ作成
・Conventional Commitsに沿ったコミットメッセージを使ったPHPプロジェクトでChangeLogを自動生成

採択
2022/04/11 12:10〜
Track B
レギュラートーク(20分)

CakePHP Fixture Factories の登場によって変化する、PHPプロジェクトにおけるテストフィクスチャ管理の選択肢

takoba_ takoba

自動テストにおけるテストフィクスチャは、ほぼ全てのソフトウェアにおいて必要になるテクニックです。その中でもデータベースと密接に連携する Web アプリケーションにおいては、データベースにデータを投入し、そのデータをフィクスチャとして利用するテクニックは初期の頃から利用されてきました。

PHPにおいては、 Fabricate という Ruby における factory_bot のような"柔軟な定義構文を用いてフィクスチャを管理する"ためのパッケージや、ここ最近になって CakePHP Fixture Factories という Fabricate に近しいコンセプトのパッケージが登場してきています。

本トークでは、最近登場した CakePHP Fixture Factories の解説を中心に、新たなテストフィクスチャ管理ツールのスタンダードについてお話できればと思います。

採択
2022/04/11 14:20〜
Track A
レギュラートーク(20分)

PHPコードを消すライブラリを作った

kubotak_public Kenjiro Kubota

kubotak-is/php-delというPHPコードをComposer Bin Commandを利用して消すライブラリを作成しました。
特定の形式でコメントを書いておくと、そのコメントを基準にPHPコードを削除します。
なぜそんなライブラリを作ったのか、その実装はどのようになっているのかを紹介します。
このセッションではComposer Bin Commandの作り方や自作のComposerライブラリをpackagistで公開する手順などを学ぶことができます。

採択
2022/04/11 14:20〜
Track B
レギュラートーク(20分)

本当にあった怖い脆弱性の話

ad5jp Roku

中小ベンダーのエンジニアとして、有象無象のWebシステムの開発や保守に関わる中で、本当にあった、身の毛がよだつようなアプリケーション脆弱性のお話や、笑えないセキュリティインシデントのお話を、怪談風に(・・・の予定で)お話しします。

第一話は、他社から保守を(引き継ぎなしで)引き継いだ、証券会社の顧客向けマイページシステムが、恐ろしい脆弱性だらけだったお話です。

調査結果の一次報告のとき、「このことは口外禁止でお願いします。明るみに出ると死人が出ます」と言われたことが今でも忘れられません。

第二話は、WordPressサイトが攻撃されて相談を受けた数々の事例の中で、一番悲惨だったお話。

時間が許せば、自社のやらかし(未遂)事例などもお話ししようと思います。

採択
2022/04/11 14:55〜
Track A
レギュラートーク(20分)

フレームワークで見るObserverパターン

asumikam あすみ

去年、「オブジェクト指向のこころ (SOFTWARE PATTERNS SERIES)」を読みました。その中で、デザインパターンの1つ「Observerパターン」の紹介がされています。「そういえば、今まで使ってきたフレームワークの中でObserverパターンの処理があったな」「でも、微妙に記述方法が違ったな?」「それぞれの違いを比較してみたいかも!」となりました。

  • CakePHPに見るObserverパターン「CakeEvent」
  • Laravelに見るObserverパターン「Laravel Observer」

どのように使うのか?どのような実装がなされているのか?それぞれのいいところ・・・ナドナド、「Observerパターン」の基本的な説明も含めて、時間の許す限りまとめます!

採択
2022/04/11 14:55〜
Track B
レギュラートーク(20分)

AWS LambdaとStripeでオンライン決済・定期課金APIを実装しよう

hide__dev 岡本 秀高

オンライン決済サービスStripeを利用することで、少ないコードで複雑な料金体系の定期課金や決済機能を実装することができます。
また、Webhookを利用したバックエンドシステムへの組み込みや自動化、CRMなどとの連携も難しくありません。

このトークでは、PHPの実行環境としてAWS Lambdaを利用し、以下のトピックについて紹介します。
・AWS LambdaでPHPを利用する方法(Serverless Framework)
・AWS Secrets Managerを利用した、安全なAPIキー運用
・Stripe / Stripe Webhookを利用した定期課金の実装やサービス連携方法

AWS Lambdaに限らず、
AWS上でPHPとStripeを利用したWebアプリケーションを開発する際に意識したい点やアーキテクチャのヒントについてもお話ししたいと思います。