2 ポイント 投稿者 GN⁺ 2025-03-21 | 1件のコメント | WhatsAppで共有
  • 多くのフロントエンドチームは、フロントエンドを全面的に書き直せば 成功できると確信している
    • しかし、フロントエンドフレームワークの選定は、長期的なプロダクト開発において最も重要ではない技術的意思決定である
    • フレームワーク選びに時間を浪費するのは非効率である
  • フレームワークは5年以内に時代遅れになる可能性が高い
    • フロントエンドコミュニティは変化が速いため、フレームワークは頻繁に更新されたり、新しいバージョンに置き換えられたりする

賢いプロダクトチームのアプローチ

  • 賢いプロダクトチームは、フレームワークを変える代わりに現在のフレームワークへの深い理解を追求する
  • フレームワーク変更は落とし穴である
  • 現在使っているツールを深く理解し、作業の妨げにならないようにすることが重要である

求職中のエンジニアへの助言

  • 特定のフレームワークに強い好みがあるなら、それを基準に仕事を探すこと
  • 既存チームに入ってからフレームワーク変更を説得しようとしないこと
    • それはチームに大きなコストと混乱をもたらす

フロントエンド技術コストを減らす方法

  • 基本的なWeb技術に集中すべきである
  • 複雑な抽象化レイヤーを減らし、Webプラットフォームの基本機能を学び直すべきである
  • それにより、長期的により良い価値を提供できる
    • 中核となるWeb技術に近い状態を保てば、新しいエンジニアを容易に採用できる
    • 大規模なコードリファクタリングなしでも生産性を維持できる

エンジニアの長期的なキャリア管理戦略

  • 中核となるWeb技術を深く理解すれば、長期的なキャリア価値が高まる
  • React以前にも存在し、React以後も生き残ることができる
  • 最新の人気技術を学ぶことに集中するより、基本技術を身につけるほうが有利である
  • 技術変化によって解雇される可能性は常に存在する
    • 特定技術に依存するより、基礎力を強化するほうが安定的である

現場で率直に言いにくい理由

  • 管理職の立場にあると、このような率直な発言は難しい
  • 動機を疑われたり、チームの反発を招いたりする可能性がある
  • 20年以上の経験から得た教訓であり、現実的な助言である

フロントエンド生態系の問題点

  • 現在のフロントエンド生態系は複雑である
  • 新人開発者が必要な技術を学ぶのが難しい
    • 複雑なツールのせいで挫折している
    • 基本的な開発者採用さえ難しくなっている
  • 現在の技術生態系で学ぶ技術は抽象化が過剰である
    • 技術が変化した際に大きな不利として作用し得る

Webの停滞とツールの問題点

  • Webの停滞はツールの複雑さが原因である
  • 開発者は創造的で優れたものを作りたいと思っているが、ツールがそれを妨げている
  • 基本的なWeb技術の学習が非効率だという認識が問題である

個人的な立場

  • 筆者は長年にわたりWeb開発に情熱を注いできた
  • Webは今なお強力で独自性のあるプラットフォームである
  • Webプラットフォームの基本ツールは非常に優れている
  • しかし、現在のフレームワーク層はWebプラットフォームの本質に逆行している

1件のコメント

 
GN⁺ 2025-03-21
Hacker Newsの意見
  • 最近、FEコードのビルドシステムを yarn から pnpm に置き換える作業をしている

    • バックエンドエンジニアだが、JS の作業もかなりやってきた
    • FE の作業でいちばんもどかしいのは、ほとんどすべてが廃止されていくことだ
    • たとえば、2022年に apollo CLI を使っていたが、今では廃止されており graphql-client を学ばなければならない
    • 依存関係をパッチアップグレードしようとすると、型シグネチャに依存していないことを祈るしかない
    • 結局ビルドは通るが、何百もの廃止警告が出る
    • FE 開発は、変化と廃止をあまりにも簡単に受け入れすぎているように思う
    • Rust プロジェクトでは 4 年間で小さな変化が数回あっただけだった
    • JS では 6 か月ごとに何かを書き直している気がする
  • FE で 20 年近く働いてきて、いくつものパラダイムシフトを経験してきた

    • コアな Web 技術を知ることは、より多才なエンジニアになるのに役立つと思う
    • しかし、それが就職市場でより魅力的になるかは疑問だ
    • 市場価値を最大化するには、React に非常に習熟している必要がある
  • フロントエンド開発者ではないが、React を 10 年間使ってきた

    • Svelte への移行はあるが、React は依然として強い
    • フロントエンド開発の変化は速いが、そこまでひどくはない
  • フロントエンドフレームワークを使わないことが、トレッドミルから降りる方法だ

    • サーバーサイドレンダリングを行い、必要な場合にだけ JavaScript を使う
  • LLM がより目立つようになるにつれて、新しい技術への関心は薄れていくだろう

    • Bevy や Svelte での経験を通じて、新しいツールより既存のツールを好むようになるだろう
  • Vanilla JS と CSS の進化により、サーバーでテンプレート HTML を使い、必要な箇所で JS を使うほうがより理にかなっている

    • React のようなフレームワークは依然として強力だが、サーバーでの UI 状態管理のほうが簡単だ
  • フロントエンドの問題ではなく、大きなエコシステム全体の問題だ

    • Java でも似たような状況を経験した
    • バックエンドでは、新しい言語への移行のほうがより大きな問題になる
  • Web 開発の初期に Svelte や React の話は聞いたが、MDN を読んで他は無視するのがよい

  • React を 10 年以上使ってきたが、フレームワークが 5 年以内に時代遅れになるという主張には同意しない

  • 20 年以上 Web 開発をしてきて、CHAMP スタックに満足している

    • CHAMP は CSS、HTML、Apache、MySQL、PHP を意味する
    • フレームワークを使わず、既存技術を守ってきたことに満足している