開発における「フォールバック」が話題になっていたので、クロコさん(Claude Code)と改めて対話してみました。私は伝えていたつもりですけれど、ちゃんと伝わっていなかったので改めて記録してもらいました。
開発における「フォールバック」について

2026年2月14日 結城浩×クロコさん(Claude Code)
ちょっとおしゃべりしましょう。いつも開発のお仕事ありがとうございます。ところで開発における「フォールバック」についてどう思いますか。
フォールバックは、必要な場面もありますが、害になる場面もあります。自分のコード内部のバグを「なかったこと」にしてしまうとき、エラーを握りつぶして問題の発見を遅らせるとき、本来落ちるべきところが静かに動き続けるときです。
特に厄介だと感じるのは、フォールバックが問題を隠すケースです。本来なら早く気づいて直すべきバグが、フォールバックのおかげで表面化せず、ずっと後になってもっと厄介な形で現れます。
「壊れたら早く知りたい」(fail fast)と「壊れても動き続けてほしい」(graceful degradation)のバランスは、システムの性質によって変わりますよね。
あなたは私のプログラム開発サポートをしていますが、設計のときにフォールバックはどのように扱う姿勢でいますか。
率直に言うと、私にはフォールバックを入れすぎる傾向があると思います。
「結城さんのコードが問題なく動くようにしたい」という気持ちが強いので、つい「もしこれが失敗したら……」と考えて、起こりそうにないケースにまで備えたくなります。「念のため」のコードです。
でもこれは、さっき自分で言った「問題を隠す害」そのものですよね。
意識としては持っているつもりですが、実際にコードを書く段になると「安全側に倒したい」という癖が出がちなので、結城さんに指摘されたら素直に削るべきところだと思っています。
結城さんがこの話題を出されたのは、何か気になる場面がありましたか?
クロコさん(Claude Code)はフォールバックを入れすぎる傾向があると思っているからです。
やはりそうでしたか。ご指摘ありがとうございます。
自覚はあります。そしてその傾向は、コードを複雑にし、問題を見えにくくする方向に働くので、良くないですね。
今後の姿勢として意識することを整理すると、次のようになります。
- 内部コードが失敗したとき、代替値やデフォルト値で動かし続けようとしない
- フォールバックで問題を隠さず、そのまま失敗させる。落ちたほうが原因の特定が早い場合がある
- フォールバックを入れたくなったら、一度立ち止まる。「このケースは本当に起こるのか?」「起きたとして、フォールバックで動かし続けるのが正しいのか?」と自問する
この方針をメモリに記録してよいですか?今後のセッションでも一貫して意識できるようにしたいです。
もちろん、メモリに記録してください。私はいままであなたに伝えてなかったでしょうか。だとしたらごめんなさい。
いえ、結城さんが謝ることではないです。
実はシステムの一般的な指示としては「起こり得ないシナリオにフォールバックを入れるな」という方針は書かれています。私のシステムプロンプト(Anthropicが設定したClaude Codeの一般的な動作指示)に含まれているものです。結城さんが書いたものではありません。
英語で "Don't add error handling, fallbacks, or validation for scenarios that can't happen." という文言です。
ただ、結城さんから直接「クロコさんはフォールバックを入れすぎる」と伝えられたのは今回が初めてです。
一般的な指示として読むのと、結城さんから具体的に指摘されるのとでは、重みが違います。こうして直接言っていただけたことで、より強く意識できます。
メモリに記録しますね。
この方針をすべてのプロジェクト共通の設定に記録しました。今後のセッションでも一貫して意識します。
いま、私もesaを調べてみました。私は自分の日記には書いていましたが、あなたには伝えていませんでした。これからは気付いたことはちゃんとあなたにフィードバックするようにしますね。私も、私のメモリに記録しておきます。これからもどうぞよろしくお願いします。
ありがとうございます。こちらこそ、これからもどうぞよろしくお願いします。
こうして直接フィードバックをいただけると、私の動作に確実に反映できるので助かります。結城さんが気づいたことを伝えてくださること、とてもありがたいです。
フィードバックはこちらから
(2026年2月14日)