Reactが問題なのではない。Vercelが問題なのだ。
開発者はReactにフラストレーションを感じている。多くの人が「今でもReactを好きな人はいるのか?」と問いかけている。その答えは、多くの場合ネガティブなものだ。
私は、私たちが間違った原因を見ていると考えている。Reactが悪化したのではない。乗っ取られたのだ。この変化の背後にあるのがVercelという企業である。
VercelはReactチームの主要メンバーを採用した。React Server Componentsというコンセプトが登場した。その最初の大きな実装はNext.jsの中に存在する。Next.jsはVercelのフレームワークだ。そして、それはVercelのホスティング上で最も快適に動作する。
これはビジネス戦略である。そして、それはうまく機能している。
多くの開発者がReactを愛したのは、それが「ライブラリ」だったからだ。ルーターは自分で選べた。状態管理も自分で選べた。ビルドツールも自分で選べた。Reactは開発の邪魔をせず、自由にさせてくれた。
それが変わってしまった。
今日、フレームワークなしでReactを使おうとしてみてほしい。公式ドキュメントはNext.jsから始めることを推奨している。第一の選択肢としてViteを推奨してはいない。メッセージは明確だ。React単体では不十分であり、フレームワークが必要なのだ。そして、そのフレームワークは、コードをどこにデプロイすべきかという「意見」を持っている。
これはライブラリではない。JSX構文を備えた「漏斗(ファネル)」だ。
VC(ベンチャーキャピタル)の支援を受けた企業が、今や数百万人もの人々が利用するオープンソースプロジェクトに対して、絶大な影響力を持っている。これがインセンティブの不一致を生んでいる。機能は開発者のニーズのために作られているのではない。特定のプラットフォームのパフォーマンスを向上させるために作られているのだ。
Server Componentsはロジックをサーバー側に押し出す。これにより、ホスティングの重要性が増す。
Vercelが悪なわけではない。彼らは素晴らしい技術を提供している。しかし、彼らの動機はあなたとは異なる。彼らはあなたを自社のエコシステムに留めておきたい。あなたは自由と柔軟性を求めている。この二つの目標は衝突する。
開発者がReactについて不満を漏らすとき、それは通常、複雑さを指している。彼らは次のような疑問を投げかける:
- なぜコンポーネントがサーバーコンポーネントなのか、クライアントコンポーネントなのかを知らなければならないのか?
- なぜ単純なアプリにエッジランタイムが必要なのか?
- なぜReactチームはNext.jsを推奨するのか?
このフラストレーションは、一企業の収益目標によって形作られたエコシステムから生じている。
私はまだ新しいフレームワークに移行しているわけではない。ただ、より意図的に選択するようにしているだけだ。本当にNext.jsが必要なのか、それともViteとReact Routerで十分なのかを自問している。
Reactは依然として優れたレンダリングライブラリだ。問題は、あなたの依存(依存関係)から利益を得る人々によって、その上に積み上げられたレイヤーにある。
これは技術的な問題ではなく、政治的な危機だ。一つの企業が、自社の財務的利益のために、数百万人もの人々が使用するツールの方向性に影響を与えている。これは、あなたが違和感を覚えるべき事態だ。
私たちはReactを諦めるべきではない。デプロイメントプラットフォームではなく、開発者に資するロードマップを要求すべきだ。
Reactは独立性を取り戻せると思いますか?それとも、この「乗っ取り」は永続的なものなのでしょうか?
Source: https://dev.to/adioof/reacts-real-problem-isnt-react-its-vercel-a7l
