レギュラートーク(25分)

PHP LangChainで始める大規模言語モデルプログラミング

yando yando

ChatGPTの登場以降、関心の高まっている大規模言語モデル。
機械学習に関するツールやライブラリがPythonに多いですが、PHPからそれらのモデルを駆動させる事もできます。

Pythonで注目の集まっているPHP LangChainのPHP実装、PHP LangChainを紹介します。
LangChainは個別のWeb APIやローカルで動作するモデルなどを抽象化した実装で扱う事ができます。
これにより復数のモデルを組み合わせたり、利用するモデルを切り替えられます。

可能な範囲でデモを交えて紹介し、利用したプログラムコードなどは公開する予定です。

予定する内容
・大規模言語モデル入門
・PHP LangChainとは
・PHPからOpenAIのモデルを利用する
・PHPからLLaMAのモデルを利用する

1
LT(5分)

コードレビューのない5年間 < コードレビューのある半年間

_namitech katagiri

【トーク概要】
『コードレビューやペアプロの文化がない環境で過ごした転職前の5年間』と『チーム開発が活発な職場に転職してからの半年間』では、
確実に後者の方が私に多くの学びや恩恵を与えてくれています。
1人ではなくチームで開発をすること、人を頼ることのメリットについて、お話したいと思います。

【対象者】
・職場にコードレビューやペアプロの文化がなく、基本的に一人で開発している方
・人を頼るのが苦手な人
・スキルアップに伸び悩んでいる人

※大きめなカンファレンスでの登壇は今回がはじめてです。

レギュラートーク(25分)

あなたの知らないドメインの世界(入門編)

litencatt 中村光佑

6月にGoogleが運営するドメイン登録サービス「Google Domains」の売却が発表されて話題になりましたが、一般的にドメインとはインターネット上のURLのことであるくらいの認識で、普段ドメインに関わる機会は少ないと思います。 しかしドメインとは2023年においてもインターネット上においてとても重要な要素です。 そこで普段ドメイン登録サービスの開発に携わる自分がドメインについての入門的な基礎知識から普段あまり知ることがないドメインの管理構造や公表されている管理ポリシーなどについて紹介し、みなさんにドメインについてより興味をもっていただきたい思います。

本トークでは以下についての発表を行います

  1. ドメインの基礎知識(ドメインの仕組み、管理団体、WHOISとは?、DNSとの関係)
  2. ドメインの登録・管理・移管方法(ドメインのライフサイクル、ドメイン管理に関わるポリシー)
2
レギュラートーク(25分)

Raspberry PiでCPUを作る 2023 - ベアメタルプログラミングの世界

tomzoh 長谷川智希

私はこの1年ほど、趣味プロジェクトとして1980年代に栄華を誇った名作CPUである"Z80"のハードウェアエミュレータを開発しています。
これはZ80で動作しているコンピュータからZ80を取り外して、代わりに自作のハードウェアを取り付けて動作させるというもので、Raspberry Piをベースに開発しています。

PHP Conference Japan 2022では、実際にZ80として動くハードウェアエミュレータをご紹介しました。
このトークでは昨年の大きな課題だった動作速度を改善させるべく意を決して踏み込んだベアメタルプログラミングの世界について利点と欠点、それがもたらすパフォーマンスについてお話します。

CPUを作ってみたい方はもちろん、コンピュータの仕組みを理解したい方や、プログラムが実行された時にコンピュータの中で何が起きているのかを知りたい方などにもお楽しみ頂けると思います。

2
LT(5分)

PHPer アルケミストになる

c_a_p_engineer こぴぺたん

PHPerな僕がアルケミストになってElixirを触っている話。

PHPがメイン言語な僕がElixirを触っていてPHPと似ているところやElixirの良いところや癖など紹介。
Elixirからの良い文明をPHPに持ってきたい。

【対象者】

  • Elixirに興味がある人
  • Elxir を既にやっていてPHPに興味ある人
LT(5分)

PHPプログラミングの新人研修が面倒だったので自動化した話

c_a_p_engineer こぴぺたん

受け持っているプロジェクトの進行と新人教育の両立は、多くのエンジニアが直面する課題です。
この課題を解決するために、PHPの研修をDockerとDevContainerを使用して自動化する方法を思いつき実践してみました。

どのようにしてPHPの研修を自動化し、新人が自己学習を進められる環境を整えたのかを共有します。
具体的には、問題を作成し、自動テストで答え合わせを行うことで、新人が自己ペースで学習を進められる環境を提供しました。

この方法により、新人の教育を効率的に行うことができました。

2
LT(5分)

PSRが覚えられないので、SymfonyでPSRのIntefaceを実装してる部分を具体的に見てみる

kin29ma_n 志賀 彩乃

みなさん、PSRを全部覚えてますか?
私は覚えてません。
なので、SymfonyでIntefaceを実装している具体的な部分を読んでみます。
その一部をご紹介します。

LT(5分)

事業を前に進めながら技術的な改善を進める取り組みの変遷

yanamura_ yanamura

普段からPHPやフレームワークのバージョンアップ対応、技術的負債の解消、新しい技術の導入など技術的な改善活動が日常的にできていますか?
技術的改善を進めたいけど事業を優先して時間がとれずなかなか進められないといったことがあるのではないでしょうか。

コネヒトでもこの問題に直面し、長年に渡り様々な試みをしてきました。
これらの試みでうまくいったことうまくいかなかったこと両方についてお話します。

みなさんの組織運営のヒントになると幸いです。

7
レギュラートーク(25分)

PHP (本体) デバッグ入門

zeriyoshi 工藤 剛

PHP を使っていて予期せぬクラッシュなどに遭遇したことはありませんか?
バグ報告するにもバックトレースやコアダンプをどうやって取れば良いか悩むことも多いかと思います。
今回は PHP 本体のデバッグ手法について説明し、最低限のバグ報告ができるようになるまでを説明させていただきます。

5
レギュラートーク(25分)

大規模プロジェクトにおける静的解析との付き合い方

zeriyoshi 工藤 剛

PHPStan や Psalm 等の静的解析が急速に普及する中、既存の大規模プロジェクトに対し持続可能な形で導入するためには考慮しなければならないことが数多く存在します。
PHPStan を導入した実例を元に、大規模なコードベースに対しどのようなアプローチで静的解析を導入していったかについて説明させていただきます。

2
LT(5分)

気が利くDTO!データオブジェクトライブラリ「Laravel-data」導入してみた

古池新太郎 | 株式会社スタイル・エッジ

みなさんDTO(Data Transfer Object)使ってますか?
実際使用すると、Getter/Setterや型変換など、コード量が肥大化してしまうケースもあるのではないでしょうか。
それらの課題を解消すべく、入出力や加工をシンプルにできるデータオブジェクトライブラリ「Laravel-data」を導入してみました。

本セッションでは、Laravel-dataの機能を活用した「気が利くDTO」の作り方をご紹介します。

話すこと

  • Laravel-dataとは
  • 機能と事例
    • FormRequestやEloquent Modelなど、あらゆる形式から分解せずにDTO生成
    • 型宣言・アトリビュートのみでキャスト・バリデーションを自動適用
    • APIやView用など要求に応じた出力制御
    • プロパティ名変換・キャストなど加工ロジックの独自拡張が容易
1
LT(5分)

エンジニア経験2~3年のメンバー中心でDDD・TDDに挑戦してみた

古池新太郎 | 株式会社スタイル・エッジ

弊社では数年間運用してきた業務システムをフルリプレイスしました。
既存のシステムでは、業務ロジックが分散されていたり、業務知識の属人化などによって、開発スピードが出せなくなってきていました。

この状況では、機能拡充のボトルネックになることが明らかだったため、今回のリプレイスでは、ドメイン駆動設計(DDD)やテスト駆動開発(TDD)、依存関係や責務を明確にしたレイヤードアーキテクチャなどを取り入れた、よりモダンな開発に挑戦しました。

本セッションでは、モダン開発への挑戦にあたり、具体的に実践したことや直面した課題、工夫したことなどを話したいと思います。

本セッションで話すこと

  • 実際に行ったドメインモデリングの流れと気をつけたこと
  • DDDやTDD、レイヤードアーキテクチャをチーム開発で実現する上での取り組み
  • 直面した課題とそれを解消した仕組み
2
レギュラートーク(25分)

気が利くDTO!データオブジェクトライブラリ「Laravel-data」導入してみた

古池新太郎 | 株式会社スタイル・エッジ

みなさんDTO(Data Transfer Object)使ってますか?
実際使用すると、Getter/Setterや型変換など、コード量が肥大化してしまうケースもあるのではないでしょうか。
それらの課題を解消すべく、入出力や加工をシンプルにできるデータオブジェクトライブラリ「Laravel-data」を導入してみました。

本セッションでは、Laravel-dataの機能を活用した「気が利くDTO」の作り方をご紹介します。

話すこと

  • Laravel-dataとは
  • 機能と事例
    • FormRequestやEloquent Modelなど、あらゆる形式から分解せずにDTO生成
    • 型宣言・アトリビュートのみでキャスト・バリデーションを自動適用
    • APIやView用など要求に応じた出力制御
    • プロパティ名変換・キャストなど加工ロジックの独自拡張が容易
2
レギュラートーク(25分)

Laravelアップデートを行った経験をシェアする

kido

Laravelのアップデートを、Laravel Shiftを使いながら行ってきました。

実際にどのようなことを行ってきたかをお話しできればと思います。

アップデートをいずれ行う予定の方や、Laravel Shiftの導入を検討している方に
経験したことをシェアすることで、何かしらの参考になればと思います。

LT(5分)

偶然C言語と目が合ったのでPHPer目線で向き合ってみた(zip版)

st_tm_k satak

ーーー 深淵をのぞく時、深淵もまたこちらをのぞいているのだ。 (フリードリヒ・ニーチェ『善悪の彼岸』より)

ということは、私たちはPHPを触る時、無意識的にC言語をPHPという壁越しにのぞいているとも考えられるのでは?🤔
(たぶんC言語も私たちをPHP越しにのぞいている気がする)

というわけでC言語完全初見の自分から見たC言語の印象・PHPとの比較、
向き合った結果わかったこと・わからなかったこと等をお話してみようと思います。

【対象者】

  • C言語触ったことないけど興味ある方
  • C言語あるある有識者
  • C言語を読み書きできると何がうれしいか知りたい方・ご存知の方
1
LT(5分)

ECS(Fargate)で Laravel のリリース時の DB マイグレーションってどうやってますか?

benzoh_w benzoh

多くのWEBアプリケーションで導入されているであろう ECS(Fargate) 環境では DB マイグレーションってどうやってますか?

  • ECS Execログインを利用して migrate コマンドを実行する
  • ecspresso をつかう
  • 自前でマイグレーション用のコンテナを用意する
  • (他にもある?)

弊プロダクトでは マイグレーション用のコンテナを用意する 方法を採用しています。
コンテナ環境での DB マイグレーションの実行方法はあまり情報がないように思われるので参考になれば嬉しいです。

レギュラートーク(25分)

エンジニア経験2~3年のメンバー中心でDDD・TDDに挑戦してみた

古池新太郎 | 株式会社スタイル・エッジ

弊社では数年間運用してきた業務システムをフルリプレイスしました。
既存のシステムでは、業務ロジックが分散されていたり、業務知識の属人化などによって、開発スピードが出せなくなってきていました。

この状況では、機能拡充のボトルネックになることが明らかだったため、今回のリプレイスでは、ドメイン駆動設計(DDD)やテスト駆動開発(TDD)、依存関係や責務を明確にしたレイヤードアーキテクチャなどを取り入れた、よりモダンな開発に挑戦しました。

本セッションでは、モダン開発への挑戦にあたり、具体的に実践したことや直面した課題、工夫したことなどを話したいと思います。

本セッションで話すこと

  • 実際に行ったドメインモデリングの流れと気をつけたこと
  • DDDやTDD、レイヤードアーキテクチャをチーム開発で実現する上での取り組み
  • 直面した課題とそれを解消した仕組み
2
LT(5分)

Instagram Graph APIに詳しいので知見をたくさん公開する(怖い話もあるよ)

s_ikuta_tete 生田 聡満

Instagram使ってますか?
仕事でInstagramからデータを取得するAPIを毎日何万回と叩いてるんで、普通の人より詳しいです。
Meta社への問い合わせや許せねえ!というエピソードなど素早くたくさん話します。

Instagramのサービス作ってみようかな〜とか、Meta社が最近ThreadsだしたしAPI公開されたら気になってる〜や、外部API利用で起こる怖い話ききたい〜みたいな人に大変刺さる内容になるはずです。

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

エンジニアの少ない会社で新人エンジニアリングマネージャーがよい仕事をするために心がけたこと

s_ikuta_tete 生田 聡満

最近流行り?のエンジニアリングマネージャー。
ある日突然上司(非エンジニア)から会社初の技術職でのマネージャーをやってくれないかと打診があった私。
エンジニアリングマネージャーになって何したの〜から、上手くやれた話、上手くやれなかった話、めちゃ大変だった話をします。

エンジニアの少ない会社でエンジニアリングマネージャーになるのって何が大変?
実際にどんな仕事が増えたの?
なりたい人はどういうことやってくとよさそう?

みたいなことお話します!

LT(5分)

Symfony歴1年生が5分間でサービスを作り出すライブコーディングに挑戦!

mako5656_i 伊神 誠人

Symfonyフレームワークを使って、リアルタイムでメモアプリを作ります。
5分という限られた時間の中で、どれだけの機能を実装できるかを実証するために、ライブコーディングを行います。
もちろん、トラブルが発生する可能性もありますが、その場合はその場での対応をお見せします。

SymfonyはLaravelやCakePHPなどのフレームワークと比べ、少し敷居が高いと感じられるかもしれませんが、実際そうでもないと思っています。
1年間のSymfony経験で得た知見や手法を駆使し、5分間でどれだけ素早くアプリケーションを構築できるかを発表しようと思います!

お話すること

  • Symfonyで利用するコンポーネントの超簡潔な紹介
  • 限られた時間の中でのデモンストレーション

Symfonyに興味を持つ全ての方々に、実際の開発をリアルに感じていただける内容にしようと思います!

2