5/7(金) 開催の #web24 にて、26時50分より開催される Stack トラックのご紹介

Web24 という、Web についてぶっ通しで 24 時間語るという、今の時代、そして GW という時期でしかできないイベントに、 Front-End Stack のセッションオーナーに任命されました。

この記事では、せっかくなので簡単にトラックの設立意図について紹介します。

私について

@potato4d のハンドルネームで Web 上にてコンテンツを発信している、LINE株式会社のエンジニアリングマネージャーです。領域としては主にフロントエンドを中心としており、副業では技術的負債の解消や、イベントの企画・運営などを行っています。

これまで Front-End Study を始めとした、様々なフロントエンドを中心とながらもある程度広い領域にて、Web 系のイベントを運営していることもあり、包含的な要素を含む #web24_stack のオーナーとなりました。

『Stack』というについて

さて、本題ですが、 Web24 では、Accessibility、Design System、Adsなどがテーマとして設定されています。

ほとんどテーマが、パッとその名を見ただけで、どのようなテーマであるか、どういった議論がベースかはある程度想像がつくのではないでしょうか?

しかし、その中で #stack だけは異質です。それがなにを指すのか。どのような会話が行われるのかが、ひどくコンテキストに依存するものであることは違いありません。

そのため、ここで簡単に Stack の呼称が設定された意図と、想定している話題を明確にします。

Stack とは、より広義な『アーキテクチャ』である

Stack は、より正確にその要素を表すと、『アーキテクチャ』となります。しかし、フロントエンド領域においてこの『アーキテクチャ』という言葉は、汚染されきってしまっているように感じます。

恐らくアーキテクチャと聞くと、未だに多くの場合において、(Reduxのような)フロントエンドにおけるインメモリでのデータストアの保持方法の話をイメージするのではないでしょうか。

あるいは DDD について話すこと自体が目的になってしまい、アーキテクチャの話というよりは DDD の話になってしまう。そんなことをイメージする場合も多いかも知れません。

しかし、今回については、その領域を取り払い、コードベースを実現するための手法だけでなく、より広義な プロダクトからみたコンポーネント全て について言及することを目的としています。

JavaScript はもうフロントエンドだけのものではありませんし、私達は日々 TypeScript を活用して、フロントエンド/バックエンドを記述しているはずです。

高速にコンテンツを提供するために、 CDN についての知識を深め、クラウドネイティブや Edge 領域に思いを馳せている時間も少なくないでしょう。

私達は、もっと広い意味での技術スタック・アーキテクチャについて話す必要があるはずです。

フロントエンドをより深く知るためには、フロントエンド以外の知識が重要なのが今生きるこの世界の現実です。

目指すゴールはより高い解像度

しかしながら、こう聞いて「とはいえそれってケース・バイ・ケースじゃないか」という意見が上がることは当然です。だって、ケース・バイ・ケースなのですから。

ただし、ケース・バイ・ケースという言葉は便利な思考放棄のために与えられた甘言でしかありません。場合によるからと言って都度そのたびに判断しては、その判断の精度が高まる頃には、技術の進化に取り残されています。

私達がやるべきことは、どのケースであればどのような手段が有効か。課題に対してそれぞれの回答を議論し、その膨大なケースをインプットし、アウトプットすることで、より多くの課題に対して、適切な判断をくだすことができるようになることです。

このトラックでは、結論ありきの話ではなく、それぞれが持つ理想像をキャリブレーションしていくことで、私を含むメンバーはもちろん、視聴者のかたも含めた全ての関係者が、明日以降の意思決定の根拠がより詳細化され、さらに優れた意思決定ができるようになることを目的としています。

はなすこと・はなさないこと

そうはいっても Web24 という場であり、他のトラックもある中のひとつのトラックであることは事実。

そのため、今回話す/話さない領域について、ある程度私の方であたりを付けています。ざっくり以下となります。

  • 話すこと
    • アプリケーションの採用技術スタック
      • 言語
      • 私達の責任範囲
      • いま僕たちが自由に意思決定できるならどのような技術を使うのか
    • アプリケーションの種別や状況に応じた意思決定
      • 寿命の長さや短さ
      • オーバーエンジニアリングと思考放棄と YAGNI の塩梅
    • 協業
      • バックエンドの技術との付き合い方(SPA/API と webpacker のようなものの対比)
      • デザインシステムのためのコンポーネントライブラリを作るにあたって、他のロールとの都合
  • 話さないこと
    • デザインそのもの
      • Sketch を使っている現場/Figmaを使っている現場みたいな話
    • アプリケーションコードベースの実現における設計論
      • 状態管理ライブラリ
      • DDD

事前に議題を用意しないレギュレーションのため、必ずしもこういう話をするわけではないですが、自分のことを『TypeScript を扱うソフトウェアエンジニア』と定義しているかたであれば、きっと刺さる話を提供できるはずです。

5/7 26:50 より!

というわけで、もし Front-End Stack に興味を持ってくださった方は、ぜひ以下の URL から参加登録お願いいたします。

一応参加登録なしでも YouTube Live で視聴ができますが、運営が円滑になるという主催者側の嬉しさ・当日通知が飛ぶという参加者側の嬉しさ両方が存在するので、ぜひ。

https://connpass.com/event/211877/