こんにちは、エンジニアの薮 (@tyabu12)です。
先日、日本初開催の Laravel 公式カンファレンスに参加してきました。
参加のきっかけ
きっかけは偶然おすすめに流れてきた、Laravel コアチームで唯一の日本人である濱崎さんのインタビュー動画でした。
シカゴの Laracon に勢いで参加して触発され、翌年 Laracon EU で登壇し、ついにはカンファレンスを日本で開催するというその行動力に胸が熱くなりました。
コロプラでは長年 PHP や Laravel をゲームバックエンドとして使っていることもあり、Laravel のコミュニティに興味があったのと、今後の Laravel の展望を知るために参加してみようと申し込んでみることにしました。
これがちょうど開催の2週間前で慌てて申し込んだこともあり、今回はスポンサーなどはできず私の単独参加という形になりました。
スピーカーセッション
二日間、様々な興味深いセッションがありましたが、個人的に特に印象に残ったセッションをご紹介します。
オープニング — Daniel Coulbourne / Ryuta Hamasaki
意外に思われるかもしれませんが、個人的に最初に印象に残ったのがオープニングです。
TED を思わせる暗めの照明の中で、素敵な着物姿で登場する濱崎さん。これから始まるぞというワクワク感と、英語スピーチにスクリーンで同時翻訳というグローバル感。
挙手のアンケートで、日本以外にも世界各地から参加者は集まっているのが分かり「Laravel コミュニティすごい」と感じずにはいられませんでした。
濱崎さんから「カンファレンスは講演を聴くことだけではなく、繋がることにある。ぜひたくさんの人とコミュニケーションを取って欲しい」というメッセージがあったのが印象的でした。ランチマッチングをするからぜひ参加して交流してね、という案内もあったので、どうせ一人参加なので一緒に食べる同僚もいないし、ぜひマッチングに参加してみよう!と心に決めながら聞いていました。
Daniel さんの「おはようございます」のレクチャーも新鮮で楽しく、スピーカーの方々は参加者を飽きさせない工夫のスピーチがうまく、見習いたいなあと聞いていました。
Strict AI Engineering — Nuno Maduro
Laravel の機能、型、リンターなどを用いることで、AI コーディングをうまく行うにはという今最も旬なテーマでした。
Nuno Maduro さんは Larastan の作者として知っていた(昔は個人パッケージだった)ので、Taylor Otwell さんと並んで一度お話を聞いてみたかったセッションでもありました。
Model::shouldBeStrict() や DB::prohibitDestructiveCommands() などの秩序を守るルールをライブデモで見せてくれて、実は初めて知った機能だったのでこんな簡単に安全にできる機能があるんだ、と勉強になりました。
極め付けは essentials という composer require するだけで、上記の設定も含めていい感じにセットアップしてくれるというパッケージの紹介でした。なかなか Laravel の新機能はちゃんと追えている自信がなかったので、このリポジトリを読むだけで最新の Laravel ベストプラクティスを学べる予感がしました!
またコードフォーマッタも今までは基本 PHP-CS-Fixer をカスタマイズして使っていましたが、Laravel Pint はまだ使ったことがなかったので、今度新規で Laravel プロジェクトを作る際は検討してみようと思いました。
Keynote: Laravel Updates — Taylor Otwell
今回のカンファレンスの大目玉、 Laravel 作者 Taylor Otwell さんによるキーノートです。
Laravel 開発の経緯は軽くネットで見たことはありましたが、やはり本人の口から聞くのは文章で読むのとは違い、当時のリアリティが如実に伝わってきました。
Laravel Boost、Laravel AI SDK などの AI コーディングを意識したサポートツールの紹介では、デモ形式でかなり直感的で、AI のエコシステムの充実によって、より機能開発に集中できるようになってきたという印象を受けました。
Laravel Boost を使えば /laravel-boost:upgrade-laravel-v13 で Laravel 13 への更新も一発でできるという話をチラッと紹介していて、ぜひ使ってみたいなと思いながら聞いていました。一方で Laravel AI SDK は、Laravel のキューなどの既存のコンポーネントと組み合わせつつ、モデルのフェイルオーバーもしてくれたりなど、簡単にカスタム AI エージェントを作れるのをデモで実演しており、サービス用のカスタム AI エージェントを思いのままに作れるイメージが持てました。
後半の Laravel Cloud の紹介では、Laravel に特化したマネージドインフラの提供で Laravel のエコシステムに乗っかることで、チームの大小に関わらず、アイディアをいかに早く動かす状態にできるかにフォーカスしているのがパワフルだなと思いました。東京リージョンがちょうどサポートされたようで、実際にライブデモではデプロイして動作確認からモニタリングする様子が見られました。ジョブの数によって自動でゼロスケールするマネージドキューも使用者のニーズを的確に抑えていて、Laravel に特化することでこういう痒いところに手が行き届くという、まさに特化マネージドクラウドの強みを感じました。
技術的負債を正しく知り、正しく付き合う — 河瀨 翔吾
長年 PR TIMES で技術的負債に向き合ってきた河瀨さんが、技術的負債を「ソフトウェアの変更容易性を下げるありとあらゆる要素」と再定義した上で、技術的負債が生み出される経緯 (スキル不足、ドメイン知識の欠如、言語やライブラリ変更) を分かりやすく解説し、その上で AI コーディング時代に我々はどう向き合っていくべきかがとても考えさせられる発表でした。
スピード優先であとで作り直す前提でプロトタイプを作ったら、そのまま作り直されずにリリースされてしまったという話はすごく分かりみが深いなと聞いていました。
そして技術的負債は全てをゼロにする必要はなく、負うべき負債を戦略的に選択して AI をうまく使ってコントロールしていくのが大事という話はまさにその通りで、これから挑戦していきたいなという気持ちで聞いていました。
ランチマッチング
今回すごく面白くてありがたいと思った取り組みが、このランチマッチングでした。
これは名前の通り、見知らぬ初めましての参加者同士でグループを作ってランチを食べつつ交流しようという取り組みです。私みたいに単独参加だとなかなか他の方と交流を持つのが難しいというのもあり、運営側でこういう機会をセッティングしてくださるのはとてもありがたかったです。
二日間とも参加しましたが、情報系の学生さん、スペインの学生さん、SREエンジニアの方など、二日間を通して多種多様な方と交流を持てました。また日本語と英語を駆使してお互いコミュニケーションを取る必要があり、国際交流感もありました。自己紹介や日常会話などの簡単な英語は話せましたが、意見交換やちょっと難しいトピックになるとやはり難しく、語学学習のモチベーションが高まった機会でもありました。
立川は実は初めて歩いたのですが、会場近くにはレストランがたくさんあり、ご飯に困ることはなかったのも最高でした。初めて IKEA レストランに行ったので、嬉しくなってつい豪遊してしまいました。
After Party
1日目の夜の公式の懇親会にも行ってみました。私は今回単独参加でしたし、参加者に知り合いもおらず、正直行くか迷いました。ただ、せっかくの Laravel コミュニティと話す機会なので交流しようと思って参加してみました。結論としては、参加してとても良かったです。
どうせ誰も知り合いいないしということで、まずは私と同じ仲間を探そうと一人でいる方に勇気を出して声をかけてみたりしました。海外の方に声をかけてみたところ、その方の友人も合流してグループトークになったり (多少頑張ったものの会話についていけなくなり、流石に途中で抜けてしまいましたが…)、一人同士の日本人の方と集まって交流したりしました。
Taylor さんがいたので、せっかくならお話してみたいと思いつつも緊張からすこし地団駄を踏んでしまったのですが、その場に知り合った方々に後押しされて勇気をもらい、少しだけ Taylor さんと話すこともできました。拙い英語でコロプラで Laravel を使っていることへの感謝や、セッションの感想、Laravel Cloud がゲームバックエンドに使えるかという観点でハイパフォーマンス環境に関して少し話せたのが良い経験になりました。
余談ですが、海外の方は会話をしていても違和感なくストレートに割り込んでくるのを見かけて、こうやって気後れせずに主張していく精神は見習いたいなと感じました。そして私も逆にこのチャンスを逃すまいと、流れに乗って頼んで Taylor さんとツーショット写真を撮ってもらいました笑1。
スポンサーブース
せっかくなので、休憩中など合間をぬってスポンサーブースに積極的に立ち寄ってブースをのぞいてみました。
ソーシャルデータバンク
ウミガメのスープならぬ Laravel のスープという、チャットボットを使った Laravel の問題が手応えがあって面白かったです。
サービス認証に Liny という自社サービスの LINE を使ったプラットフォームを利用しており、自然と試させる流れがうまいなと思わされました。
5回まで回答できてお題も絶妙という難易度でしたが、Laravel ユーザーとしてここは負けるわけにいかないと思いで挑戦して、なんとか4回目の質問でクリアしました。
JoBins
チャット形式の求職サービス alata のデモを試させてもらいました。せっかくなので東京のゲームバックエンドで探せるかなとやってみましたが、ストレスフリーで提案してくれてすごく使いやすそうでした。
TECH WORLD
今回のカンファレンス参加のきっかけになった Youtube を撮影していた企業さんということで、感謝を伝えに話しかけてみました。
Youtube メインで採用広報をしているとのことで、最近は NOT A HOTEL のスマートホームのエンジニアの裏側を発信してるなど、今までの活動や活動にあたっての想いなどを聞けて、勉強になりました。ゲーム開発の裏側、みたいなテーマの発信でうちもできたら面白そう、みたいな意見交換もさせてもらい良い刺激をもらえました(個人的にはすごく面白くなる予感がしています)。
全体の感想
想像以上に多くの Laravel コミュニティの方と意見交換ができて、Laravel に関してはもちろん、グローバルな国際交流ができてすごく刺激になりました。カンファレンスだと Laravel という共通のトピックがあるので、それを会話のフックに話しやすいですし、世界中のたくさんのユーザーに使われている OSS だということを知識ではなく肌で体感できました。
今はオンラインが便利なのでアーカイブ配信やブログなどで簡単に情報は取れる時代です。ですが、一次情報の現場でしか得られない空気感や、ちょっとしたきっかけで生まれる交流や刺激など現地ならではのものがあり、これがカンファレンス現地参加の醍醐味だなと感じました。
初開催ということもあり、おそらく私には計り知れないぐらいとても企画や準備は大変だったかと思います。運営のみなさん、登壇者のみなさん、スポンサーのみなさん、そしてあの時 After Party で背中を押してくださった方々、ありがとうございました!
ColoplTechについて
コロプラでは、勉強会やブログを通じてエンジニアの方々に役立つ技術や取り組みを幅広く発信していきます。
connpass および X で情報発信していますので、是非メンバー登録とフォローをよろしくお願いいたします。
また、コロプラではインフラエンジニアを積極採用中です!
興味を持っていただいた方はぜひお気軽にご連絡ください。
- 掲載許可は取れていないのでお見せできないのですが、私のスマホの中で家宝として大切に保管してあります。↩