Vue Fes 2023参戦記
はじめに
Vue Fes 2023にスピーカー参加しました。当日の様子や各セッションについて振り返りたいと思います。
当日の様子
キーノートではVue/Viteの創始者Evan Youの登壇がありました。
4トラック並行で多くのセッションが展開され、とても豪華な内容となっていました。
スポンサーブースでは抽選に挑戦できるスタンプラリーが展開されていたりと、常時多くの参加者で賑わっていました。
コンプリート!#vuefes pic.twitter.com/xZu6AMBZIk
— 0yu (@yud0uhu) 2023年10月28日
アルコールパッチテストの結果は「ほどほどに飲める」でした#vuefes https://t.co/qS6cApEc7K pic.twitter.com/zYc0lYzEUm
— 0yu (@yud0uhu) 2023年10月28日
アルコールパッチテストの結果は「ほどほどに飲める」だそうです。 体質的にすぐに顔に出る一方で、ゆっくり飲むと持続するタイプなので、お酒が飲める免罪符をいただいた気分です(やったね)
スポンサーブース内のコミュニティースペースでは、コーヒーやお菓子が無料で提供されていたり、VueやViteのタトゥーを貼る体験もできました。
1Fコミュニティルームのタトゥースペースでかわいいタトゥーが貼れちゃいます‼️
— Vue Fes Japan 2023 (@vuefes) 2023年10月28日
おそろいのタトゥーで盛り上がろう😆#vuefes pic.twitter.com/gwmCfuqiRP
わいわい!頑張ります💪💪#vuefes https://t.co/ZBoLnHh2ei
— 0yu (@yud0uhu) 2023年10月28日
ギフティさんのブースでは、参加者同士のギフト交換が行えました。 アマギフ、ミスド、吉野家などから送りたいギフトを選び、メッセージカードと一緒に封筒に入れてブースに置いておくと、別の参加者の方が自分のギフトと交換に受け取ってくださる、というような仕組みでした。 他の参加者のギフトは開けてみるまで中身は見られないので、わくわく感が楽しかったです。
ギフト交換で吉野家いただきました!🐂
— 0yu (@yud0uhu) 2023年10月28日
ありがとうございます〜#vuefes pic.twitter.com/6XEV33y8tX
登壇について
「Vue3/Electronで自作したマークダウンエディタをVue3/Tauriにリプレイスした話」 という内容のLTをしました。
スライド資料はこちらです。
このような大きな技術カンファレンスでは二度目の登壇でしたが、前回の登壇に比べると、いくらか落ち着いて時間配分を意識しながら話せたかなと思います。 LT後や懇親会で感想を言いにきてくださった方もいて、とても嬉しかったです。 カンファレンス運営スタッフの皆さんには、このような貴重な機会をいただけたことに感謝の限りです。
セッションについて
4トラック並行+自身の登壇準備の時間などもあり、すべては聴講できなかったのですが、いくつかご紹介したいと思います。
有志の方が公開済みのスライド資料を下記にまとめてくださっていました。
スポンサーセッション
走りながらエンジンを交換する 〜 大規模プロダクトを成長させつつVue 3にするには
Vue2から段階的にVue3にアップデートするために行なわれた取り組みについてのお話でした。
- 他チームと並行してアップデートを行う専門のプラットフォームチームを設立
- Vue2→Vue2.7にバージョン刻みでアップデートを実施
- PRの差分を小さくするために変更を極小化
などの工夫を行って、スピーディーなライブラリアップデートを行ったとのことでした。
沼化しがちなメジャーバージョンのアップデート作業に対して、差分を最小化するための工夫がとても素敵だなと感じました。
社内UIコンポーネントライブラリがエンジニアチームにもたらした本当の価値
本日のユニークビジョンのスポンサーセッションをご覧の方、アンケートに回答していただけると嬉しいです!
— 山本一将|焚き火を愛するエンジニア (@kyamamoto9120) 2023年10月28日
今日の資料は公開せずにアンケートの特典とすることになっておりますので、資料見返したい方はぜひ😃https://t.co/5eN0cpEJmO#vuefes pic.twitter.com/fh2CvyH8V4
ユニークビジョンさんが開発・提供を行っているSNSマーケティングツール「Beluga シリーズ」に対して、チーム横断で社内共通コンポーネントライブラリ「Beluga UI」を導入したというお話でした。 ユニークビジョンさんのスポンサーブースでは、「Belugaチェックイン」を活用した来場者限定キャンペーンも開催されていました。
わいわい#vuefes 来場者限定✨@uv_technology のチェックインキャンペーンに参加しました🙌 pic.twitter.com/cwNsYj3nyD
— 0yu (@yud0uhu) 2023年10月28日
- スタイルガイドに従って実装を行った →メンバーがリファレンスとしても参照できるようになった
- Storybookによるドキュメンテーション化や、ビジュアルリグレッションテストでchromaticを導入 →コードレビューのプロセスでStorybookの差分を見れるようになった などで、開発生産性が大きく向上したというお話で、特にビジュアルリグレッションテスト導入によるレビュープロセス効率化のお話は個人的にも関心があったため、非常に勉強になりました。
LT
Vueを使ってGrid Systemを実装した話
t0yohei / トヨヘイさん
Vueを使ったGrid Systemのスマートなライブコーディングが素敵でした。 Grid Systemは複雑なレイアウトを効率よく実装できる一方で、事前の設計で検討が必要な部分も多いです。 テックブログではそもそもGrid Systemとは?という部分から検討事項まで詳細にまとめてくださっており、とても勉強になりました。Vueを使ってGrid Systemを実装した話の発表資料です。https://t.co/wTNAaa9F0b
— とよへい (@t0yohei) 2023年10月28日
↑の補足ブログです。https://t.co/CtmgNwdOCa#vuefes
WebGISとVue.jsの親和性について
楢山 哲弘さん
GIS(地理情報システム)における可視化 Web アプリケーション構築のお話でした。 僕も以前VueとLeafletで地理情報を扱うアプリの開発に挑戦したことがあったため、Vue RouterでURLのクエリパラメータに緯度経度を載せるTipsや、watch式で地図のスタイルを切り替える手法など、非常に知見のあるお話でした。#vuefes Japan 2023でのLTスライドはこちらです
— Norihiro Narayama (@northprint) 2023年10月28日
「WebGISとVue.jsの親和性について」という題で、Tipsを2個ほど紹介しましたhttps://t.co/Tk1fJt871V
Nuxt3のモジュール開発は意外と簡単? Module Author Guideをのぞいてみよう
きらぷか / kira-pukaさん
使用されていたUIライブラリがNuxt3に非対応だったため、移行のためにUIライブラリを自作されたそうです。 モジュール開発の際にどのようにMoudule Author Guideを紐解かれていったのか、などとても勉強になり、自分も一度小さくモジュール開発をしてみたいなと思いました。本日の資料です!ありがとうございました(*´ω`*)!!#vuefeshttps://t.co/kRL1wH8MiU
— きらぷか@スプシAPI化&積読のサービス運営中🔥 (@kira_puka) 2023年10月28日
Moudule Author Guideの中身について、こちらのブログでも紹介されているため、気になる方はぜひ。
スピーカーセッション
Nuxt 3でJamstackテンプレートを作るときの考え方
まぁし(知念)さん
VueFesセッション聞いてくれてありがとうございました!スライド共有します!#vuefes #vuefes_m3
— まぁし@TAM | Karachoco Code (@chocodogmagic) 2023年10月28日
設計を語りたい人・相談したい人、フロントエンド好きな人はフォローしてください!
テンプレート完成版もお楽しみに!
Nuxt 3でJamstackテンプレートを作るときの考え方https://t.co/vqt38Cq6ad
- Webサイト制作には銀の弾丸はないが、【WebサイトをJamstack開発するためのテンプレート】という条件に絞ることはできる
- 慣例を参考にして独自ルールを作らず、あえて最適化しないこともある(運用の中で最適化していくことはある)
- 流行や変化の背景を見つつ、運用に耐えられることを意識する
など、技術選定など多くの場面で汎用的に適用できる考え方だなぁと思い、勉強になりました。
Vue Language Serverから生まれたVolar.jsと、それが秘める可能性
mizdra / ミズドラさん
Vue Fes Japan 2023 で発表した Volar.js の話の資料を公開しました! 聞き逃した方、是非ご覧くださいー!https://t.co/NTNtxjG2Ey#vuefes
— mizdra (@mizdra) 2023年10月28日
兼ねてから興味のあったLSPのお話が聞けて良かったです。 .vueは3言語ぶんの言語機能を提供する必要があるため、特殊なLS実装が行われているようです。 Vola.jsのコアチームにはAstroのコアメンバーの方がいらっしゃるようなのですが、AstroのLanguage serverもVolarだったのですね。
SOLID原則に基づくSFC実装
53able / ゴーさん
SOLID原則に基づくSFC実装のスライドです!https://t.co/2L5RjOeiZT#vuefes
— 53 |_ |_ 🏃♂️|\/| (@53able) 2023年10月28日
SOLID原則のフロントエンドへの適用は難しさを感じていたため、provide/injectを使ったDIPの実装など、具体的に多くのVueでの実装例を示してくださっていたのがとてもありがたかったです。
Composition API時代のPub/Subパターンでの状態管理
fuqda / フクダさん
Compotision APIにおける状態管理についてのお話でした。 Composition API+piniaどうなのかな?と気になっていたので、「代替実装可能なため不要」という結論でなるほど、と思いました。
Exploring the Power of Error Handling in Vue JS
Hieu / グエンゴックヒエウさん
- Componentや画面ごとにエラー処理をしたいときはerror Capturedを使う
- エラーを一元処理したい、すべての画面のどんなエラーも処理したいときはerrorHandlerを使う など、errorハンドリングの使い分けについてのお話で、非常に勉強になりました。
フルスクラッチECの基盤であるNuxt 2を3に移行し、開発の効率性とパフォーマンスを高める
湧川 仁貴さん
先ほどのLTで話した、EC of Nuxt3の資料です!
— wakkn (@_wakkn) 2023年10月28日
お聞きくださりありがとうございました!!!
「フルスクラッチECの基盤であるNuxt 2を3に移行し、開発の効率性とパフォーマンスを高める」https://t.co/W9ZhIZog4A#vuefes
nuxt3化のパフォーマンス改善によりカート投入率や購入率が顕著に向上した結果など、効果測定までしっかりと示されていたのが印象的で、ぜひ参考にしたいお話でした。
Getting your head around your
Harlan Wiltonさん
パフォーマンスとSEO対策という観点で、Vue SSR最適化のために重要なSEOタグについてなどがライブコーディングを交え紹介されていました。 クラウドサイントラックでの聴講だったのですが、各席に用意されたトランシーバーで同時通訳でセッションを聴講することができ、とても体験が良かったです。headタグのお話#vuefes pic.twitter.com/6bgqr5oB8O
— 0yu (@yud0uhu) 2023年10月28日
eslint-plugin-vueの現状と今後
太田 洋介 / ota-meshiさん eslint-plugin-vueが大きな破壊的変更を避けながらどのように発展してきたか、というお話でした。 普段お世話になっているツールのメンテナーの方のお話が聞けるのはとても貴重で、いつもありがとうございます、という気持ちになります。 また、eslint-plugin-vueはv10でnuxtサポート計画中とのことでした。 ESLintの完全な書き直し計画についてのお話もあり、今後の動向が楽しみです。
懇親会
懇親会でも多くの方と交流することができました。 トークテーマごとにテーブルがわかれていたのが面白いな、と思いました。 (ポストの写真はTypeScriptですが、フリートークのテーブルもありました)
テーブルごとにトークテーマが分かれてる#vuefes pic.twitter.com/DKw4IDQD2T
— 0yu (@yud0uhu) 2023年10月28日
アフターパーティも色んなお話ができて楽しかったです!
— 0yu (@yud0uhu) 2023年10月28日
運営の皆さんありがとうございました&お疲れ様でした👏#vuefes pic.twitter.com/gW9RhYPVzA
改めてありがとうございました!