LT(5分)

えらい人や成長している人がみんな言っている「メタ認知」ってなに?どうすれば身につくの?

for__3 ZOE

先輩や上司になにかを相談したり1on1したときにみんなよく言う「メタ認知を鍛えよう」とか「メタ認知力を上げよう」という言葉が何を指しているのでしょうか?
視座とか自分を客観視したときの状態とか難しい言葉が多く、何を意識すればよいのか分かりづらいですよね。
また、成長のために必要だと言われてもいまいち何をすればよいのかイメージも付きません。

このLTでは、「メタ認知」の図解や具体例を交えながらわかりやすく解説しつつ、「メタ認知」を身につけるために有効な方法をご紹介します。

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

SemVerによるAPIスキーマ管理のすゝめ

katzchum katzumi

最近のプロダクト開発においてSPAやマイクロサービスといったアーキテクチャを採用しているケースが多く、バックエンドのWeb APIの開発を避けて通れないと思います。

登壇者も近年数多くのAPIの開発を行ってきました。その中でスキーマ駆動開発も取り入れた開発プロセスを取り入れるなど、APIのスキーマ定義・管理方法ついて試行錯誤を重ねてきました。

その中でAPIのスキーマのバージョン管理がコラボレーションを行う上で大変重要であると気づきました。

如何にAPI開発側及び利用者双方の運用負荷を増やさない開発プロセスを考えることが大事です。

  • APIのバージョン管理
  • API仕様書の静的チェック
  • API仕様書を活用してアプリ全体の品質向上
  • 仕様書以外でのバージョンの活用
  • 円滑なリリースマネジメント

等など、CI/CDまで踏み込んだ実践してきた内容をご紹介いたします。

1
レギュラートーク(15分)
初登壇 九州勢

レガシーコードに潜む、便利な箱と化した配列にオブジェクトで立ち向かう

kechiiin_ けちーん

弊社ではCakePHP1.3を使用しています。
CakePHP1.3では、DBから取得したデータは配列となって返されます。
その取得した配列をそのままviewファイルに渡して、それを使ってHTMLを生成します。

それだけならまだいいんです。

今となっては度重なる機能追加によって、その配列に様々なデータが追加されています。
その配列内にはテーブルのカラムとしては存在しないデータも含まれており、非常にカオスな配列と化しています。

その状態を改善すべく、なるべくオブジェクトを使用して、既存のコードに立ち向かっていっているという話をします。

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

Re:PHPから始める異世界言語

tadsan うさみけんた

あなたはいくつのプログラミング言語を使えますか?
プログラミング言語にはさまざまな異なった特徴があり、「達人プログラマー」という書籍では、年にひとつの言語を学ぶことを薦めています。

Lispというプログラミング言語は1959年括弧まみれと揶揄されますが、PHPとは異なる多くの言語的特徴、多くの機能を持っています。

このトークでは、PhelというPHP向けに実装されたLisp方言をテーマに、Lisp言語の初歩とPHPとの関わりについて学んでいきましょう。

  • こんにちはPhel! こんにちはS式!
  • Lispとリスト操作
  • マクロは何をする人ぞ
8
レギュラートーク(30分)
U25(25歳以下)

【新卒エンジニア必見!】24新卒エンジニア研修「エンジニア基礎」大公開!!

kotomin_m ことみん

株式会社ウィルゲートで、24新卒エンジニア向けに「エンジニア基礎」という研修を実施しました。
今回、社内で新卒エンジニアやベテランエンジニアからも大好評だった研修を、PHPカンファレンス福岡で特別に再構成して皆さんにお届けします!

バックエンドやフロントエンドの知識といったテクニカルスキルの習得よりも、エンジニアとして重要なのは、 成長していくために必要なスタンスやマインドについて知ること です。

このトークでは、2時間の研修から特に重要なポイントに絞ってお話します!

話すこと

  • なぜエンジニアとして成長するために「スタンス・マインド」が大事なのか
  • エンジニアとしての基本心構え「プロ意識」
  • コミュニケーションの心構え
  • キャッチアップスキル
  • 作業するとき全般大事なこと
  • コード書くとき全般大事なこと
  • 継続的な成長をするために
14
LT(5分)
初登壇

Why we need to Code?

Why we need to code by Indramani Sharma

My talk in the conference is about why we need to code ? Why we need Generative AI ? Why coders always rely on ChatGpt and other open AI. Why programming language are difficult to understand ? Will AI replace the coders ? These are the sub domains , I want to talk in the conference .

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

急成長する人の1on1はここが違う!〜VPoEが教える成長するための1on1活用術〜

for__3 ZOE

私は現在VPoEとして、開発メンバー18人の1on1を毎週行っており、マネージャー時代も含めて3年以上メンバーとの1on1を続けてきました。

その中で、急成長する人は、1on1の使い方、上司の活用方法が圧倒的にうまいことに気づきました。

本セッションでは、VPoEの視点から様々なタイプの1on1を通して得た、急成長する人の1on1の特徴をまとめ、それを実践するための方法について話します。

こんな人におすすめ

  • 1on1はしているけど、いまいち成長実感がわかない
  • 1on1で何を話し、どう成長に繋げればよいかわからない
  • なぜ1on1をするのかよくわからない
  • 圧倒的に急成長していきたい人
9
採択
2024/06/22 10:40〜
ホライズンテクノロジーホール
レギュラートーク(15分)

並行処理を学びGuzzleと仲良くなる

shimabox しまぶ

昨今、サーバーサイドのお仕事といえばクライアントからのリクエストに応えてjsonを返す簡単なお仕事になっているかもしれません。
ですが、まれに外部APIや内部のサブシステムをHTTP, RESTで呼び出して返却された値を扱う場面もあると思います。
そんなとき便利なのが、そうGuzzleです。

このGuzzle、一言であらわすと便利なHTTPクライアントなのですが、中でも強力なのが非同期リクエストならびに並行処理(Concurrency)を扱えることです。
(我々人類はひとつひとつリクエストを投げてそれを待つ時間など無いのです)

今回のトークでは、

  • Guzzleはどのように並行処理を扱っているのか
    • GuzzleHttp\Promise, Pool について
  • どのようにテストを書けばいいのか

をお話したいと思います。

一緒にこのGuzzleと仲良くなりましょう!

レギュラートーク(15分)
初登壇

サービスの断捨離を通してサービスを理解する

_da1kong daichi

エンジニアがサービスを理解するタイミングは、果たして機能開発やバグ修正に限られるのでしょうか?
私はそれに加えて、機能を整理する際にも深い理解が必要だと考えています。

実際、既存のリソースを統合または削除する行為は、機能追加やバグ修正と比較してもより高いリスクを伴います。
なぜなら誤って必要な機能を削除してしまった場合、予期せぬ障害につながる可能性があるからです。

そのため、これらの作業を安全に進めるには、インフラやドメインを含む広範な知識が必要不可欠です。
本トークでは創業当初から運用されているサービスの統合や整理を通じて、サービスそのものへの理解を深めた経験を共有します。

2
LT(5分)
U25(25歳以下)

PHPバージョンアップで知った「PHPStanってマジですごい!!」

kotomin_m ことみん

PHPStan、知っていますか?

PHPStan(PHP Static Analysis Tool)は、コードを実行せずに検査できる静的解析ツールです。
あなたの書いたコードの良くないところを探して、こういうふうに直すといいよって教えてくれます。

「なんかCIめっちゃ落としてくるめんどくさいやつだ」

今までPHPStanは導入されていたし、一旦従って何気なく使ってきました。

でもコイツ、思っているよりもめ〜っちゃすごかった。
PHPのバージョンアップに取り組み始めてから、PHPStanがあるってこんなに嬉しいんだ……!!と感動しました。

このLTを聞いた皆さんは、「PHPStanがあるとなんで嬉しいの?」から「PHPStanってマジですごい!!」になるでしょう!

11
LT(5分)

エンジニアしての根源的な「力」を3大指標モニタリングで実現するシンプルな増強戦略

bash0C7 bash

わたしはかれこれ20年ほどエンジニアとして生活を営んでいます。その過程で様々なアクシデントや環境の変化に見舞われまれたことからの気付きとして、職業人として「力」を得るのは長期的な研鑽が欠かせず、つまり日々のトレーニングいかんによって成長度合いが左右されるということです。

10年代は闇雲に行っていて、それはそれで間違いではないものの、20年代に入ってからは先達から得た教えからトレーニングを3つの指標をモニタリングすることで確実な効果を得ています。

このセッションでは、具体的にどのような指標を使っているのかと、実際につけている記録からエンジニアリングとしてのプロセスの実践例を示します。

この皆さんが長く成長し続けるためのヒントになると信じています。

3
LT(5分)
初登壇

グローバルハッカソンから学ぶ、異文化コミュニケーションの壁の乗り越え方

ruitomowoyobu るいとも

私はベトナムにグループ会社があるグローバル企業に所属しています。
今年2月頃に、日本開発部のエンジニア達でベトナムへ行き、ベトナムのエンジニア達とハッカソンを開催しました。

日本とは文化も言語も違うエンジニア達と、どうコミュニケーションをとりながらハッカソンに挑んだのか、
実際のベトナムでハッカソンをした貴重な体験談から学んだ異文化コミュニケーションの壁の乗り越え方をお話します。

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

「無理なくできるだけ安全に」テストもないレガシーコードをリファクタリングするテクニック

for__3 ZOE

「レガシーなコードは嫌」「リファクタリングして認知負荷の低いコードにしたい」と思っていませんか?
でもいざリファクタリングして、使ってないと思って消したコードが実は使われてて危うく障害になりかけたり、
テストコードを書こうにも、テストコードが書きづらいためにリファクタリングし辛いことも多々あるはずです。

このセッションでは、そういったレガシーなコードに対し、どのようにリファクタリングをしていくとよいか、具体的なテクニックについて話します。

話すこと

  • そもそもレガシーコードをリファクタリングをするかしないかの判断
  • 使ってなさそうな関数には生存確認のログ埋め込み
  • でかい処理にはまず単純な関数分割
  • 改修頻度が高く重要なロジックからテストコードを書く
9
LT(5分)

レガシー開発あるある言いたい

at_taisuke 荒瀬 泰輔

日々レガシー開発の現場で闘っているみなさん!おつかれさまです!
自分も20年以上の歴史があるプロダクトの開発に関わっていたり、過去にはフレームワークのリプレイスに携わったりと、さまざまな問題に悩まされる毎日です。

そんなある日のカンファレンスで、同じようなレガシープロダクトに関する発表を聞いて思いました。
「ああ〜わかる〜あるある〜」
(ん?もしかして自分が思ってるあの悩みやこんなつまずきも、もしかしてあるあるなのでは?)

レガシー開発あるある、言いたい!!

というわけでこのLTではレガシー開発あるあるを紹介します。
あるある or ねーよ! など、皆さんの共感や感想交えて盛り上がれたら嬉しいです!

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

PHPミリしらなRubyistがLaravelに入門した感想、あるいはカンファレンスに新しい参加者を増やすためにできることは?

yu_suke1994 うなすけ

私はこれまでにPHPを全く書いたことがありませんでした。そんな私がPHPerKaigi 2024に参加しようと考え、せっかくだからLaravelで簡単なWebアプリを書いてみようと考えました。
RubyとRailsのエコシステムにどっぷりな開発者が、PHPそしてLaravelに入門して感じたことを話します。

そしてここからがこの発表の本題ですが、プログラミング言語またはフレームワークのコミュニティに新規参加者を増やすにはどうすればいいでしょうか。PHPerKaigiの懇親会で出会った、Rubyを学び始めたばかりの方からの意見など様々な方と話して考えたことを話します。

このトークでは、「このようなことができるかもしれない」というアイデアを投げかけることが限界でしょう。このトークを聞いた皆さんからも意見をもらえると嬉しいですし、あとでゆっくり考えてもらっても嬉しいです。

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

PHP4時代に作られた独自フレームワークはなぜ今でも動いているのか?

at_taisuke 荒瀬 泰輔

皆さんは「Azalea(アゼリア)」というPHPフレームワークをご存知でしょうか?
…すみません、多分知っている方はほぼいないと思います。
なぜならこれはサイボウズのGaroonというプロダクトで使用されている独自フレームワークだからです。

GaroonはPHP4の時代から提供されてきた、20年以上の歴史を持つプロダクトです。
昔はフレームワークの選択肢もなく、Garoonでは独自のフレームワークを構築して開発がされてきました、それがAzaleaです。
Garoonは今でも同じフレームワークで動いています。これはやばいです、色んな意味で。
このトークでは、なぜ今でもこのフレームワークが使われ、動いているのかについてお話しします。

■ 話すこと

  • Azaleaの提供している機能について
  • Azaleaは時代に合わせてどう変わっていったか
  • AzaleaとLaravelを比較してみた
5
レギュラートーク(30分)
U25(25歳以下)

【入門】チーム開発でデプロイ頻度を上げるための設計とタスク分割

kotomin_m ことみん

2、3ヶ月程度かかる大きめの機能開発も任されるようになったとき、「設計をどのようにすればいいか分からない」「大きい変更のタスク分割が難しい」と悩むことがあると思います。
全体の機能を一度にまるっと作ってからリリースしようとすると、プルリクエストが肥大化しレビューが複雑になり、見落とされた不具合や障害が発生しやすくなってしまいます。

このトークは、その悩みを解決する具体的なテクニックを、設計やタスク分割に慣れていない方に向けて順を追って説明します!

話すこと

  • なぜ、デプロイ頻度が大事なのか?
  • 細かくデプロイするためにインタフェースを設計しよう
  • 安心して実装に取り組めるように、テストコードを先に書こう
  • インタフェースごとにタスクを分割して実装しよう
10
レギュラートーク(30分)

メンバーだからこそプロジェクトにもっと貢献できる!〜初めてプロジェクトに参画するまえに知っておきたいテクニック〜

for__3 ZOE

-- 〇〇さん、次このプロジェクトに参画して開発してください
私は初めてプロジェクトに参画することになった。
-- 〇〇さん、進捗はどうですか?
進捗を聞かれてもいつでも答えられる。
-- 〇〇さん、作業終わったみたいだから次この機能開発してくれる?
開発タスクも順調にこなしてるし、よくわからないけどプロジェクトのマイルストンも順調に進捗してるらしい。

「あれ?でも、この機能って前にやった機能といっしょに開発したほうが早かったな。それにあのカンファレンスで聞いた〇〇って技術でもっといい感じにできたかもな。」
でもテックリードでもPMでもないし、機会が回ってきたときでいっか。

本当にそれでよかったのでしょうか?
このセッションでは、メンバー目線での情報がプロジェクトにとっていかに重要か、メンバーでもプロジェクトにもっと貢献するテクニックを話します。

6
レギュラートーク(15分)
U25(25歳以下) 初登壇

ずっとただの参加者だった自分が「PHPカンファレンス.*」に登壇にすることになるまで

dero1to デロ

みなさん、PHPカンファレンス登壇してますかー?
私はまだ登壇したことがありません!

これまで私はPHPカンファレンスに参加し、登壇者の皆さんのプレゼンテーションを楽しみながらも、自分自身が登壇することには一歩踏み出せませんでした。。
しかし、あるきっかけが私の心を動かし、登壇に向けたハードルを一つずつ乗り越えてきました。その過程で得た経験や気づき、そして成長の過程を皆さんにご紹介します!

登壇に興味があるけれども踏み出せない方、自分の学びを話してみたいけれど不安を感じている方、ぜひこのLTでお待ちしております!

4
LT(5分)
九州勢

様々な言語、ポジションで案件をかけもつ技術

9rokirishima くろきり

私は今、受託開発の会社に勤めていますが、受託開発だと複数案件に関わることはあるあるだと思います。
ただ、参画したタイミングや状況により様々なポジションや開発言語で案件をかけもつことがあります。
時にはマネージャーとして管理を行い、時にはメンバーとして開発を行う。イレギュラーな事態は毎日発生し、考えていた進捗まで中々届かない。。
このLTはそんな中で自身を管理しつつ各案件をなるべく燃やさずに進めている方法をお話します。

1