Web制作やWeb開発では、ReactにするかNext.jsにするか、WordPressかヘッドレスか、jQueryを使うか使わないかといった「どの技術を使うか」という話になりがちです。
ただ、実務を続けてきて感じるのは、それ以上に何をやらないかを先に決めることが重要だということです。
技術は「できる」だけでは足りない
今どきの技術は調べればだいたい実装でき、時間をかければ何でも作れます。しかし、以下の3つはそれぞれ別の問題です。
- 実装できる
- 運用できる
- 数年後も無理なく触れる
仕事として作る以上、継続して使い続けられるかどうかは無視できません。
つい「せっかくだから」と足してしまう
設計していると、次のような気持ちになることがあります。
- せっかくだから入れておこう
- 将来使うかもしれない
- できるならやっておきたい
ただ、あとから振り返ると、トラブルの原因はだいたいこの「せっかくだから」にあります。
- 更新が面倒になった
- 誰も触れなくなった
- 手を入れるのが怖くなった
技術そのものが悪いというより、機能を積み上げすぎた結果としてこうした問題が起きることが多くあります。
他社制作のサイトを見て思うこと
他の制作会社が作ったサイトを引き継いだり、中身を見たりする機会もあります。例えば、以下のようなケースです。
- WordPressの記事をすべてJSからAPIで取得し、非同期で表示しているサイト
→ 表示速度は速いものの、修正や運用のハードルが高くなる - WordPressの関数をあまり使わず、多くの処理を独自実装しているサイト
→ コード量が増え、可読性が下がる
どちらも技術的に間違っているわけではありません。ただ、あとから触る人のことを考えると負担が大きいと感じる場面はあります。
正直、昔の自分も同じことをしていた
自分自身も、昔は似たようなことをしてきました。
- 将来の拡張を考えすぎて作り込みすぎた
- 標準機能を信用せずに全部自前で書いた
- 「できるから」という理由だけで実装した
- 単純に技術力が足りなかった
今見返すと、品質が良いとは言えないコードもあります。当時はそのときなりに真剣で、ベストだと思って書いていました。
jQuery不要論についてのスタンス
少し前に「jQueryはもう不要」という話題が出たことがありました。確かに今のブラウザ環境であれば、Vanilla JSだけで困らないケースは多くあります。
ただ、それと「jQueryを使うのは良くない」「もう使うべきではない」という話は別だと感じています。既存コードがjQuery前提だったり、短期案件でスピードを優先したかったりする場合など、状況によっては使う判断も十分にあり得ます。
私自身はここ数年Vanilla JSで書くことが多く、結果としてjQueryを使っていない状態です。「使わないと決めている」というより、今の条件ではあえて使う理由がないという感覚に近いです。
「やらない」は消極的な判断ではない
「やらない」と言うと少し後ろ向きに聞こえるかもしれませんが、実際には以下のような前向きな判断です。
- 不要なものを減らす
- リスクを下げる
- 運用をシンプルにする
むしろ「とりあえず入れておく」ほうが、判断を後回しにしているケースも少なくありません。
技術選定は未来の自分への相談
技術を選ぶとき、最近は次の3点をよく考えます。
- 半年後にこれを触るのは誰か
- 説明なしで理解できるか
- 問題が起きたときに戻せるか
これらに自信が持てない場合は、今回はやらないという判断をします。
まとめ
技術選定は、新しいものを足していく作業ではありません。
- 今回は不要なものを外す
- 続けられないものを避ける
- シンプルな形を選ぶ
その結果として、長く使える構成になることが多くあります。だからこそ、技術選定ではまず「やらないこと」を決めるようにしています。