世界を動かす技術を、日本語で。

リアクト財団

概要

  • React が誕生してから10年以上、世界中で広く利用されている現状
  • React Foundation 設立による今後の運営体制の大きな変化
  • Linux Foundation の傘下でベンダーニュートラルな運営を実現
  • Meta による資金・技術サポートの継続
  • 業界全体・コミュニティ主導による新たな成長とコラボレーションへの期待

Reactの成長とコミュニティ

  • Meta が10年以上前に React をオープンソース化
  • 世界中で 5,000万以上のWebサイトや製品 に採用
  • Microsoft、Shopify、Bloomberg、Discord、Coinbase、NFLなど大手企業の活用実績
  • React Native によるWeb以外のプラットフォーム(モバイル、タブレット、デスクトップ、TV、ゲーム機、MRデバイス)への拡大
  • 教育者、企業、プロジェクトによる貢献がReact発展の原動力
  • コミュニティがReactの中心的存在

React Foundation設立とその意義

  • React Foundation への移行を発表
  • React、React Native、JSXなどの主要プロジェクトが対象
  • React Foundationのミッション: Reactコミュニティとそのメンバーの支援
  • Reactのインフラ維持、React Confの開催、エコシステム支援イニシアチブの実施
  • Linux Foundation 傘下での運営により中立性を担保

ガバナンス体制の明確化

  • React Foundationの 運営委員会 :Amazon、Callstack、Expo、Meta、Microsoft、Software Mansion、Vercelが参加
  • 今後さらに委員会メンバーの拡大を予定
  • ビジネスガバナンスと技術ガバナンスの 明確な分離
  • リリースや機能、技術方針は 新たな技術ガバナンス構造 で管理
    • メンテナーやコントリビューター主導の独立した体制
  • 技術ガバナンスの詳細は今後Reactブログで発表予定

MetaとReact Foundationの関係

  • Meta はReact Foundationと 5年間のパートナーシップ を締結
  • 総額 300万ドル超の資金提供 とエンジニアリング支援
  • 独立運営への円滑な移行と安定・革新性の維持を目指す
  • Metaは今後もReactを主要なUI開発ツールとして活用
  • React/React Native専任エンジニアチームの活動継続

今後の展望とコミュニティへの期待

  • React Foundationによる 新たなコラボレーション・成長機会 の創出
  • コミュニティ主導の新モデルでのイノベーション促進
  • 強化されたガバナンス、業界全体の参加、継続的な技術的卓越性
  • UI開発の次世代課題への対応力強化
  • コミュニティ全体の発展とReactの未来への期待

Hackerたちの意見

これって俺だけ?$600,000/年($3Mが5年の期間を想定してるとして)って、$1.8兆の時価総額を持つ会社がAI科学者に$100M〜$250Mの報酬パッケージを出してるのに、ちょっと弱い貢献に感じるんだけど。まあ、何も「義務」じゃないのは分かるけど、これってオープンソースの「共有地の悲劇」みたいな感じがする。何百万ものアプリが依存してるツールが、ほとんど支えられてないっていう。しかも、メガコーポレーションの子供が、ちゃんとした永続的な基金を作る代わりに、見栄を張るための薄っぺらい貢献をしてるっていうのがね。感謝すべきなのかな?

最近、Vercelが非ネイティブReactの開発で一番頑張ってるってことかな?コア開発者を雇ったんじゃなかったっけ?

彼らがすでに投入したものをどう評価するの?

専門のエンジニアサポートは、実際にはもっと価値があると思う。$3Mは「財団を設立する」ためだけに使われるんじゃないかな。これがFacebookがReactで新しいものを開発しなくなる兆候なのか、ちょっと気になる。

彼らはフルタイムのReact開発者チームも雇ってるし、それだけで十分だと思う。$600,000/年でガバナンスボードを運営して会議を組織するだけでも、かなり寛大だと思う。実際、$3Mは財団のための基金を形成して、今後の運営費を賄うために使われる可能性が高いと思う。

ここでの権利意識が理解できないな。Metaが人気のあるOSSライブラリをリリースして、10年以上のエンジニアリソースを投入したからって、非営利団体に所有権を譲るために$3M以上出すべきだって?もしかしたら俺だけかもしれないけど、彼らは十分すぎる貢献をしてると思う。彼らがすでに貢献したことに感謝してるし、今後の貢献にも期待してるよ。

ほとんどのオープンソースプロジェクトは、使っている企業から年間$0しか受け取ってないよ。

投稿によると、彼らは内部チームのためにもお金を払うつもりだそうで、Reactにコードを貢献し続けるみたい。だから、実質的には既にやっていることに加えて60万ドルを投資する感じかな。さらに、他の企業も参加してくれるといいな。前よりずっと健全な状況になってる気がする。

これを、これに基づいて構築された数十億ドル規模の企業の数で掛け算してみて。

これを、これで構築された数十億ドル規模の企業の数で掛け算してみて。

これがオープンソースプロジェクトの売り方の一つなのかな。VercelはReactのドキュメントに「VercelなしでReactを使う」っていう言及がないように本当に戦ったし、使うなら間違ってるっていうニュアンスを含む言葉を使ってる。これがVercelがReactを進めていく方向性を示してるよね。もうすぐVercel専用のソフトウェアになるだろうね。

Vercelが含まれているのはちょっと残念だな。でも、正直言って、歴史が教えてくれることがあるとすれば、彼らが完全にベンダーロックするような愚かな決定を下したら、コミュニティが維持するフォークがすぐに作られるだろうね。ValkeyやOpenTofu、MariaDB、NextCloudなんかと同じ話だ。

財団がそのバランスを取る手助けをしてくれるといいね。

Reactの今後がはっきりしてきて嬉しい。Reactは、急速に変化するJavaScriptの世界ではあまり評価されてないところがあって、数年ごとに「フレームワークXは死んだ」って誰かが叫ぶと、みんなが新しい流行に集中し始める。これが経済的にどう成り立つのかは分からないけど、俺はそんなアプローチは無理だな。10年間メンテナンスしてるClojure/ClojureScriptのアプリがReactを使ってるけど、Reactの全機能を使ってるわけじゃない。実際、もっと小さいライブラリを使えるかもしれない。でも、アプリの状態変更に基づいてUIを再描画するモデルがClojureにすごく合ってるから、Reactが存在してて、あまりコードを書き直さずにメンテナンスされてるのは本当に嬉しい。

Reactは、急速に進化するJavaScriptの世界の一部では過小評価されている。そこで人々は、数年ごとに「フレームワークXは死んだ」と叫ばれた後、すべてのコードを最初から書き直すことが期待されている。過去10年間で本当にそんなことがあったのかな?

面白いね、個人的にはReactは定期的にアップデートが必要なフレームワークの一つだと思ってる。クラスコンポーネントからフックベースのものに移行するのに、たくさんのチームが何時間もかけてるし…

Reactは全体的に複雑さと機能が増していく方向に進んでいる気がする。フロントエンドの標準になってしまったものにとっては残念だね。シンプルで信頼できるベースがあって、そこに拡張や追加の複雑さを重ねるか、オプションで含める形が理想だと思う。この発表からはその方向に希望が持てないな。むしろ、Vercelがもっとコントロールを強めている感じで、彼らがその動きを主導しているみたい。並列レンダリングやRSC、フックなどを無視して、シンプルなサイトのためにシンプルなコードを書けるようになるのは素晴らしいことだと思うけど、見たところ、主要な競合はかなり異なっていて、非トリビアルなアプリケーションを移行するのはほぼ全面的な書き直しになるだろうね。Preactや似たようなものは、ここで期待できることがあるのかな?

Preactは素晴らしいよ。Reactと100%同じではないけど、十分に近いし、使い勝手も良くて、私の使い方(SPA)にはぴったりだった。

Reactは一般的に複雑さと機能が増していく方向に進んでいる気がする。フロントエンドの標準になってしまったものにとっては、残念なことだね。それって、すべてのソフトウェア開発の努力がそうじゃない?「todo」アプリや検索エンジンなんかが常に「再創造」される理由じゃない?長生きすると敵になって、シンプルなアプリに置き換えられて、また同じサイクルを繰り返すってこと?

並列レンダリングやRSC、フックとかを無視して、シンプルなサイトのためにシンプルなコードを書けるようになるのは素晴らしいことだね。この発言が理解できない。複雑なことに関わらず、基本を使うことはできるよ。クラスコンポーネントだってまだ使えるし、フレームワークに依存しないコンポーネントを作ることもできる。

完全に同意する。現状をそのままにしておくべきだよ。機能をどんどん追加していったら、悪化するだけだね。

大きなアプリケーションの経験はないけど、小さい使い方から見ると、Preactは置き換え可能な感じ。試したReactのライブラリとも互換性があったし、ESモジュールとも相性抜群。だから、シンプルなものには試す価値があると思う。

ほとんどの企業はReactの力の大半を必要としてないよね。大多数のサイトが本当に必要とするスペースを埋めるための、低から中程度の複雑さのライブラリやフレームワークの余地はあると思う(例えば、あのパンフレットサイトは静的生成で十分で、Reactが提供するものは全く必要ないし、1分間に何十件もリクエストを処理するサイトは大幅に簡素化できる)。必要なのは、素晴らしいDXを持った低複雑度のツールだよ。これに取り組んでいる多くのプロジェクトの中で、Reactのように定着したものはまだないね。

ここでのコメントを見てちょっと安心した。CEOの政治的立場には興味ないけど、VercelのReactへの関与はRSCの開発が始まった頃からずっと気に障ってた。開発はほぼ半閉じた状態で進んでいて、Next.js(つまりVercel)にほぼ縛られていて、仕様は高レベルの説明と公開APIしかなかった。彼らがWIPだったからって関係ないよ。コミュニティが関与すべきだったのに、Vercelが善意の独裁者としてデザインをほぼ最初から最後まで導いていたのはおかしい。こんな大きなパラダイムシフトは特定の団体によって決められるべきじゃないと思うし、特にNextのチームは過剰設計や悪い決定をしがちだと思う。確か、NPMに公開されているけど、どの公開リポジトリにも載っていないパッケージを使わなきゃいけない時期があったよね(今もそうかも?)。RSCのアイデアは好きだけど、そこまでだな。自分だけじゃないと思ってたけど。

一年前にVueに移ったけど、生活がずっとシンプルで生産的になったよ。

一つのライブラリがこんなに大きくなるなんて驚きだね(実際にはあまり多くのことをしていないのに)。Reactは明らかに「新しいjQuery」で、いつか別のものが出てくるだろう。特にブートキャンプ出身の開発者たちは「Reactオンリー」な人が多い。怖い話だよ。

怖い話だね。なんで?jQueryが消えたとき、何も起こらなかったよ。みんな新しいフレームワークを学んだだけ。

怖くないよ。APIの面積はかなり小さいし、コンポーネントのスタイリングとか、そういうのに時間をかけてるだけで、React特有ってわけじゃないんだよね。Litみたいなウェブコンポーネント技術が未来の一部になるかもしれないし、JSXの代わりになるかも。そうなったら、ReactはDOMの差分処理やイベントのシャッフル、データの流し込みのためのミドルウェアツールになるだけだね。

Reactは明らかに「新しいjQuery」だし、いつか別の何かが出てくるよ。「別の何か」はもうここにあって、ずっと前から存在してる。VueやSvelteはどちらも素晴らしい代替手段だね。

jQueryがほぼすべてをやるための無数のエキゾチックなAPIを持っていたのに対して、Reactは正直なところ、少数のAPIを持つ純粋なJSだね:jsx(純粋なJSでのHTML)、useState/useEffect/useMemo(もっと必要になることはめったにない)、そして初期のハイドレーション関数。残りはユーティリティライブラリやバンドラー、そしてそれらがもたらす無限の頭痛や鬱を引き起こす素晴らしいものたち。これがないと、また別のビジネス要件を満たすのに10倍の時間がかかるからね。

同じような楽しい雰囲気の中で、FBがJestや他のライブラリのサポートを切ったことを思い出させておくべきだね。成功したプロジェクトを殺す歴史が長いから。さらに悪いことに、Vercelが関わってるし、その会社について良いことを何も覚えてない。こういうニュースには非常に慎重になるべきだし、次の数年間は古いバージョンのReactを使うことをお勧めするよ。

Vercelが関わってるけど、正直その会社の良いところは全然思い出せない。彼らは常に新しいものを出してるし、UXも完璧だし、スタートアップとしての生活を無限に楽にしてくれたよ。ただ、コストは高いけど、それでも喜んで払ってる。

Rich HarrisがSvelteに取り組んでいる間に報酬を得ることができるようになったんだ。ただ、未来がどうなるかは分からないけど。

Jestは最も人気のあるJSテストフレームワークだよ。「殺された」と言うのは全然正確じゃない。

カルテルで動くメガコーポレーションによるガバナンス。最近の記事を読んでみたけど、これがいいことだとは思えないな。[https://lithub.com/how-american-tech-cartels-use-apps-to-bre...] 自分の利益が決定プロセスの中心にあるゲートキーパーたち。

プライベートな「ファウンデーション」を使わなきゃいけなかったのはすごく心配だね。OpenJSファウンデーションみたいな、もっと民主的な組織を使わなかったのは残念。ユーザーの意見は期待できないし、コミュニティのニーズに反する変更も期待できない。状況が良くなるとも思えないよ。

もしJSを使ってアプリやウェブサイトを簡単に作りたいなら(しかも、実際に作ってる人に直接アクセスしたいなら)、React/Nextを離れた後に作ったものが面白いかもしれないよ。[1] これは、ReactのAPIの複雑さと、Next.jsでSaaSを作るストレスが合わさって、ストレスと時間の無駄が大きくなったから作ったんだ。質問があればDiscordに気軽に参加してね。[2] [1] https://cheatcode.co/joystick [2] http://discord.cheatcode.co

SaaSを作るかどうかでフレームワークを選ぶのがすごく嫌だな。特定のことを効率化するかもしれないけど、フレームワークの機能ややり方に縛られるのは悪い選択に感じる。

React 16は2017年にリリースされたけど、その年にトランスフォーマーベースのモデルが発表されたんだよね。懐かしさを感じるけど、世界は動いてる。5年後がどうなるか予測するのは難しいね。