2025年11月8日に開催された PHPカンファレンス福岡2025 に参加しました。
その中で印象に残ったセッションが、
「開発者が知っておきたい 複雑さの正体」 というお話です。
タイトルだけを見ると少し難しそうですが、内容はとても身近で、
「それ、仕事あるあるだな」と感じる話がたくさんありました。
今回は、その内容をできるだけ分かりやすくご紹介します。
「複雑さ」とは何か?
セッションで紹介されていた「複雑さ」の考え方は、とてもシンプルでした。
人が理解しづらく、変更しづらいものは
すべて「複雑」
つまり、
- 読むのがつらい
- 触るのが怖い
- 何をしているのか一瞬で分からない
こう感じた時点で、それはもう「複雑」だというわけです。
難しい専門用語や数字の話もありましたが、
本質は「分かりにくいかどうか」だけ、というのが印象的でした。
複雑なコードはなぜ生まれるのか
「複雑なのは、作った人のスキルが足りないからでは?」
そう思ってしまいがちですが、このセッションでは違う視点が紹介されていました。
実は、複雑さはコードを書く前から少しずつ入り込んできます。
要件が増えると、自然とややこしくなる
例えばこんな場面、想像しやすいと思います。
- 事業が成長して、新しい機能をどんどん追加する
- 特定のお客さんだけ、特別な対応が必要になる
- 法律やルールが変わる(消費税や個人情報の扱いなど)
どれも「やらないわけにはいかない」ものですよね。
こうした条件が重なっていくと、
「この場合はこう」「あの場合は別の処理」と、仕組みがどんどん複雑になっていきます。
これは決して誰かが悪いわけではなく、
現実のビジネスがそのまま反映されている結果だという話が印象に残りました。
設計の段階でも複雑さは生まれる
次に紹介されていたのが、「設計」の話です。
- 何を作るかが曖昧なまま、見た目だけ立派な仕組みを先に決めてしまう
- 流行っているやり方を、とりあえず取り入れてみる
- チーム内で十分に話し合う時間が取れない
こうしたことが重なると、
「なんだか難しそうな構造」だけが残ってしまいます。
シンプルでよかったはずなのに、
気づいたら扱いづらい仕組みになっている、というのはよくある話だなと感じました。
実装での「ちょっとした積み重ね」
もちろん、日々の作業の中でも複雑さは増えていきます。
- とりあえず条件をひとつ追加
- 忙しいから後で整理しよう
- 名前は仮で付けたまま放置
こうした「小さな判断」が積み重なると、
後から見る人(未来の自分も含めて)にとって分かりにくいものになります。
特別に悪いことをしているわけではない、
よくある日常の延長線だという点が共感できました。
印象に残ったメッセージ
このセッションで一番心に残ったのは、次の考え方です。
- 技術だけでは解決できない問題もある
- 最初から完璧を目指さなくていい
- 少しずつ良くしていけばいい
複雑さを「なくす」ことよりも、
気づいて、向き合って、改善していく姿勢が大事なのだと感じました。
まとめ
今回のセッションを通して、
- 「分かりにくい」と感じること自体が大事なサイン
- 複雑さは、仕事や環境の変化と一緒に生まれるもの
- 誰かを責めるより、背景を知ることが解決への近道
そんな学びがありました。
日々の仕事の中で「これ、ちょっと分かりにくいな」と思ったら、
それは改善のいい機会なのかもしれません。
今回はここまでです。
最後まで読んでいただき、ありがとうございました!
