
【この記事はこんな方に向けて書いています】
- Reactが大好きで、その良さを周りにもっと伝えたいと思っているエンジニア
- 職場で技術選定の議論をする際に、つい熱くなってしまう方
- 「React信者」という言葉に、少しドキッとしてしまう、すべてのReact使い
- 技術コミュニティでの、より良いコミュニケーションのあり方を模索している方
コンポーネント指向の美しい設計、宣言的なUI、そして巨大なエコシステム…。React、最高ですよね!一度この世界を知ってしまうと、他のフレームワークがもどかしく感じてしまう、その気持ち、痛いほど分かります。
しかし、そのReactへの深い愛情が、時として“暴走”し、周りのエンジニアから「うわ、React信者だ…」と、ドン引きされているとしたら…?善意で言ったつもりのアドバイスが、相手を傷つけ、チームの和を乱しているとしたら、それはとても悲しいことです。
この記事では、Reactを愛するがゆえに、私たちが無意識にやってしまいがちな「嫌われる言動」を4つのパターンに分類し、なぜそれが相手に不快感を与えてしまうのか、その心理的背景を解説します。これはReactの悪口ではありません。あなたのReact愛を、周りから尊敬される“本物の力”に変えるための、愛ある処方箋です。
言動1:「まだ〇〇使ってるの?」マウント
これが、最も代表的で、最も嫌われる言動です。「え、このサイトまだjQueryで動いてるんですか?」「Vueって、結局Reactができない人が使うやつでしょ?」といった、他の技術やそれを使っている人を見下すような発言。
なぜこれが嫌われるのか?それは、相手の技術選定の背景にある、様々な事情を完全に無視した、ただの知識ひけらかしだからです。そのプロジェクトには、改修にかけられる予算や時間に限りがあったのかもしれない。チームメンバーのスキルセットを考慮した、現実的な選択だったのかもしれない。そうした文脈への想像力を欠いた発言は、相手がこれまで積み上げてきた努力や成果を、一方的に否定する、リスペクトのない暴力でしかありません。
Stack Overflowの調査でも、Reactは世界で最も人気のあるWebライブラリの一つですが、だからといって他の技術が不要になるわけではありません。それぞれの技術には、それぞれの得意な領域と歴史的経緯があるのです。
言動2:「とりあえず全部Reactで」思考停止
静的なランディングページ、ちょっとした社内ツール、ブログ…。どんな要件に対しても、「それ、Next.jsで作りましょう!」と提案してしまう。「ハンマーを持つ人には、すべてが釘に見える」ということわざ通りの状態です。
なぜこれが嫌われるのか?それは、「課題に対して最適なツールを選ぶ」という、エンジニアとして最も重要な思考を放棄しているからです。Reactは素晴らしいツールですが、万能の銀の弾丸ではありません。ページの表示速度が最優先されるLPなら、素のHTMLやAstroの方が適しているかもしれない。管理画面なら、VueやSvelteの方が学習コストが低く、開発が速いかもしれない。
自分の得意な技術をゴリ押しする姿勢は、周りから見れば「ただ楽をしたいだけ」「新しいことを学ぶ気がない」と映ってしまいます。課題の本質を見極め、常に最適な選択肢を模索する姿勢こそが、エンジニアの信頼を勝ち取るのです。
言動3:専門用語の乱舞と「当たり前」の強要
「このpropsのバケツリレーはアンチパターンだから、Context APIかZustandを使いましょう」「そこはuseCallbackでメモ化して、再レンダリングを最適化しないとパフォーマンスに影響が…」
Reactを触ったことがない人や、初学者がいる場で、こうした専門用語を何の注釈もなく使っていませんか?そして、「え、知らないんですか?」という空気を醸し出していませんか?
なぜこれが嫌われるのか?それは、コミュニケーションの目的が「相手に情報を正確に伝えること」ではなく、「自分の知識レベルを誇示すること」にすり替わっているからです。難しい言葉を使えば、相手は萎縮し、質問しにくい雰囲気を作ってしまいます。結果として、チーム内の知識レベルの格差は広がる一方です。本当に優秀なエンジニアは、難しい概念を、誰にでも分かる平易な言葉で説明できる人です。
言動4:過剰なまでの「設計思想」へのこだわり
ファイルの命名規則、ディレクトリ構成、コンポーネントの分割粒度…。もちろん、これらはコードの保守性を高める上で重要です。しかし、ビジネスの優先順位を無視してまで、自分の「美学」や「理想の設計」に固執していませんか?
「このコンポーネントは、もっと小さく分割すべきです!」 「その命名規則は、うちのチームのルールと違います!」
なぜこれが嫌われるのか?それは、ビジネスのスピードよりも、自分のこだわりを優先しているように見えるからです。完璧なコードを目指すあまり、リリースが遅れてしまっては本末転倒。コードは、あくまでビジネス価値を顧客に届けるための「手段」です。時には、理想的ではなくても、スピードを優先して「まず出す」という判断が求められることもあります。そのバランス感覚を失った時、あなたはチームにとって「扱いにくい人」になってしまいます。
Reactは素晴らしいツールです。その素晴らしさを本当に伝えたいなら、まずは相手の話を聞き、相手の技術に敬意を払うことから始めましょう。技術の議論は、マウントの取り合いではなく、より良いものを作るための、敬意に満ちた対話であるべきなのですから。
コメント