こんにちは! 高千穂ムラたび/ラクダの佐伯です 😊

「理解負債」シリーズ、第3弾です。

①では「理解負債って何?」という話、 ②では「DECISION.mdで返済する方法」を書きました。

 

 

 

今回のテーマは、 もっと手前の話。

そもそもAIへの「指示の出し方」が悪いと、 どれだけレビューしても品質は上がらない。

という話です。


😅 同じAIなのに、なぜ品質が全然違うのか

私は今、酒税の記帳が簡単にできる、ツールを開発しています。

開発はClaude Codeを使っています。

で、開発を進めていく中で 不思議なことに気づきました。

同じAIに頼んでいるのに、 良いコードが返ってくる時と、 ひどいコードが返ってくる時がある。

最初は「AIの調子が悪いのかな」と思ってました笑

でも違った。

違いは、自分の指示の出し方でした。


🔴 ダメな指示の例:「ログイン機能を作って」

実際にやらかした例を出します。

開発初期、私はこんな指示を出していました。

「ログインする機能を作って」

AIは素直にコードを返してくれます。 動きます。ログインできます。

でも1ヶ月後、問題が起きました。

  • ログイン失敗した時のエラー処理がない
  • タイムアウトの設定がない
  • パスワードがコードに直書きされている
  • ログが何も残らない

「動くけど、本番では使えないコード」の完成です。

これ、AIが悪いんじゃないんです。

「ログイン機能を作って」としか言ってないから、 AIは「ログインできればOK」と解釈した。

当たり前ですよね。


🟢 良い指示の例:「5つの条件を満たすログイン機能を作って」

同じ機能を、指示を変えて頼み直しました。

 

「ログインする機能を作って。 ただし以下の条件を満たすこと。

① ログイン失敗時は3回までリトライする 

② タイムアウトは30秒に設定する 

③ パスワードは環境変数から取得する(コードに書かない)

 ④ ログイン成功・失敗をログファイルに記録する 

⑤ 2段階認証が求められた場合のハンドリングも含める」

返ってきたコードは、 最初の指示とは別物でした。

 

エラー処理がしっかり入っている。 パスワードが安全に管理されている。 ログが残る。

同じAI、同じ機能、でも品質が全然違う。

違いは「指示に条件を入れたかどうか」だけです。


💡 気づいたこと:AIは「言われてないことはやらない」

これ、当たり前のようで深い話なんです。

人間のエンジニアに「ログイン機能作って」と頼んだら、 経験のある人なら勝手にエラー処理を入れてくれます。

「パスワード直書きはダメだよね」と自分で判断してくれる。

でもAIは、言われてないことはやらない。

正確に言うと、やってくれる時もあるけど、 やらない時もある

この「やらない時」が怖い。

しかも「やらなかった」ことに気づくのは、 大体トラブルが起きた後 😱


📝 私が実践している「指示テンプレート」

この経験から、AIにコードを頼む時の テンプレートを作りました。

毎回これに沿って指示を出しています。

━━━━━━━━━━━━

■ 何を作るか?(機能の説明) → やりたいことを具体的に

■ なぜ作るか?(背景・目的) → これがあるとAIが「意図」を理解する

■ 満たすべき条件(最低5つ) → エラー処理、セキュリティ、ログなど

■ やってはいけないこと → パスワード直書き禁止、など明示

■ 参考にすべき既存コード → 「この書き方に合わせて」と伝える

━━━━━━━━━━━━

特に大事なのが「なぜ作るか」です。

「ログイン機能を作って」と言うだけだと、 AIは「ログインさえできればいい」と解釈する。

でも「本番環境で24時間自動運用するための ログイン機能を作って」と書くだけで、

AIは「じゃあ安定性が重要だな」と判断して、 リトライ処理やタイムアウトを自分から入れてくれる。

目的を伝えると、AIが「行間」を読んでくれるようになる。


📊 指示を変えたら、どれくらい変わったか

体感ではなく、実際の数字で比較します。

今回の開発で記録を取りました。

テンプレート導入前(雑な指示)

→ AIが返したコードをそのまま使える確率:約30% 

→ 残り70%は手直しが必要 

→ 敵対的レビューで見つかる問題:平均 5〜8件/回

 

テンプレート導入後(条件付き指示)

→ そのまま使える確率:約70% 

→ 手直しが必要なのは30% 

→ 敵対的レビューで見つかる問題:平均 1〜2件/回

 

問題の発生率が約4分の1に減りました。

開発のスピードが上がったのはもちろん、 「後から直す」作業が激減したのが大きい。

修正作業って、新しく作るより疲れるんですよね 😅


🔥 「指示の質 = コードの質」という法則

ここまでの話をまとめると、こういう図式です。

 

①雑な指示 → 動くけど危ないコード → 後で大量の修正

 

②丁寧な指示 → 最初から質の高いコード → 修正がほぼ不要

 

つまり、指示を書く5分を惜しむと、 修正で2時間かかる。

指示に5分かけると、 修正は10分で終わる。

「急がば回れ」は、AI開発でも真理でした。


✨ シリーズまとめ:理解負債を溜めない3つの習慣

ここまで3回にわたって書いてきました。 整理するとこうなります。

 

① 理解負債を知る(第1回) → AIが書いたコードを「理解してない」ことがリスクになる

② DECISION.mdで記録する(第2回) → 「なぜそうしたか」を残して、未来の自分を救う

③ 指示の質を上げる(今回) → そもそもAIに良いコードを書かせる

 

この3つをセットで回すと、 理解負債はほとんど溜まりません。

良い指示 → 良いコード → 判断を記録 → 理解が維持される

このサイクルです。


💪 一人開発でも「仕組み」で品質は上がる

大企業には開発チームがあって、 コードレビューの仕組みがあって、 品質管理の専門家がいます。

一人開発には、それがない。

でも、AIをうまく使えば 一人でもチームと同じ品質が出せる。

ただし「うまく使う」がポイント。

AIに雑に頼んで雑なコードをもらうのか、 丁寧に頼んで質の高いコードをもらうのか。

その差を生むのは、 たった5分の「指示の書き方」です。

ぜひ試してみてください 😊

 

こんにちは! 高千穂ムラたび/ラクダの佐伯です😊

前々回書いた「理解負債」の記事、たくさんの方に読んでいただきました✨

ありがとうございました。

 

 

 

 

ということで今回は続編!

 

前回は「理解負債って怖いよね」という話でしたが、 今回は「じゃあどうやって返済するの?」という実践編です💪

まだ読んでない方はぜひ前回の記事から読んでみてください😊

 

で、あれから約2週間。

私が教えているAくん(仮名)に、ある対策を実践してもらいました。

それが「DECISION.md」です。

DECISION.mdって何?🤔

簡単に言うと、「なぜそうしたか」を書き残すメモです。

コードそのものじゃなくて、判断の理由を記録する。

例えばこんな感じ👇

━━━━━━━━━━━━ 

■ 決定事項:暗号化方式にAES-256-GCMを採用

 ■ 日付:2026年2月 

■ なぜ?:個人情報を扱うため強力な暗号化が必要。AES-256-GCMは認証付き暗号化で改ざん検知もできる。

 ■ 他の選択肢:AES-CBCも候補だったが、認証機能がないため却下。

 ■ リスク:処理速度がやや遅くなるが、データ量が少ないので問題なし。

 ━━━━━━━━━━━━

これだけ。

でもこれがあるかないかで、3ヶ月後の状況がまったく変わるんです😳

 

Aくんの「やらかし」事件😱

実はこのDECISION.mdを導入する前に、Aくんにちょっとした事件がありました。

彼はAIを使ってデータ連携ツールを作っていたんですが、 1ヶ月後にエラーが出て修正しようとした時…

「あれ、なんでここでこの処理してるんだろう?」

自分で作ったツールなのに、その書き方をしたのかわからない💦

AIに聞いても「このコードの意図は文脈がないとわかりません」と返される。

結局、その部分をゼロから作り直すことになりました😭

作り直しにかかった時間、約8時間

もし判断の理由が残っていれば、30分で修正できたはずの内容です。

7時間30分の損失。

 

これが理解負債の「利子」です💸

DECISION.mdを始めてからの変化✨

Aくんにこの話をして、DECISION.mdを習慣にしてもらいました。

最初は「面倒くさい」と言ってました笑

正直、わかります。コードが動いた瞬間って嬉しくて、 すぐ次の機能を作りたくなるんですよね😅

でも「あの8時間を思い出して」と伝えたら、渋々始めてくれました笑

2週間経って、Aくんから連絡がありました。

「かっちーさん、DECISION.md、めちゃくちゃいいです」

何が変わったかというと👇

①バグ修正のスピードが上がった → 「なぜこう書いたか」がわかるから、修正箇所が一発で特定できる

②AIへの指示が的確になった → 判断理由を言語化する癖がつくと、AIへの指示も具体的になる

③「なんとなく不安」が減った → 自分のツールの構造を把握できてる安心感がある

特に②は意外な副産物でした💡

DECISION.mdを書く習慣がつくと、 AIに指示を出す時も「なぜこの処理が必要か」を自然と伝えるようになる。

すると、AIが返してくるコードの精度も上がるんです。

理解負債の返済が、開発の質を上げる。

いいサイクルが回り始めました✨

 

私自身もやっています💪

偉そうに書いてますが、 私自身もDECISION.mdを書く習慣を実践しています。

今開発しているRPP広告の自動化ツール「ラクアド」でも、 設計判断のたびにDECISION.mdを残しています。

例えば👇

「なぜ予算設定のタイムアウトを30分にしたか」 「なぜ除外操作を日次バッチにしたか」 「なぜSeleniumではなくAPIを優先したか」

こういう判断って、1ヶ月後には絶対忘れてるんですよね💦

特に私のようにEC運営もしながら開発している人間は、 毎日コードを書いているわけじゃない。

2週間ぶりにコードを開いて「え、これ何?」ってなるのが日常です笑😂

だからこそ、DECISION.mdが命綱になる🔥

始め方は超簡単👇

難しく考える必要はありません。

プロジェクトのフォルダに「DECISION.md」というファイルを1つ作って、 何か判断したら3行書くだけ。

━━━━━━━━━━━━ 

■ 何を決めた?

 ■ なぜそうした?

 ■ 他に何を検討した?

 ━━━━━━━━━━━━

これだけです。

5分もかかりません。

でもこの5分が、3ヶ月後の自分を8時間の地獄から救ってくれる✨

まとめ📝

理解負債の返済方法はシンプルです。

 

「なぜそうしたか」を書き残す。

コードをAIに書かせる時代だからこそ、 「判断の理由」だけは人間が記録する。

これが、AIと長く付き合い続けるための一番の近道だと思います😊

 

 

「このコード、本当に動くの?」と自問自答してますか?

こんにちは! 高千穂ムラたび/ラクダの佐伯です 😊

突然ですが、プログラミングしてる皆さん、こんな経験ありませんか?

「よし、コード完成!完璧だ!」

そう思って数日後...

「え、なんでここバグってるの...」

私、めちゃくちゃあります笑

😱 一人開発の恐怖:誰もチェックしてくれない

特に一人で開発していると、レビューしてくれる人がいないんですよね。

自分で書いて、自分でチェックして、自分でOK出す。

完全に主観100%

でも、人間って自分に甘いじゃないですか笑

「まあ、これくらい大丈夫でしょ」 「後で直せばいいか」

そんな感じで、バグが積み重なっていく...

✨ 前回「理解負債」の記事が好評だった!

以前「理解負債」について書いたブログ、結構反応が良かったんです。

 

 

その中で触れた「敵対的レビュー」について、もっと詳しく知りたいという声をいただきました 💡

今日はその具体的なやり方をお伝えします!

🔍「敵対的レビュー」って何?

敵対的レビューとは、簡単に言うと:

自分のコードを「敵」のように疑ってかかること

です 💪

「このコード、本当に動くのか?」 「どんなケースでバグるのか?」 「3ヶ月後の自分、これ理解できるのか?」

こういう視点で、自分のコードを徹底的に疑うんです。

😱 実際にあったバグ事例:想定外の入力値

例えば、私が最近開発した「ラクバナ」というツール。

楽天市場のバナーを自動管理するツールなんですが、開発中にこんなバグがありました。

フォルダ数がある一定数を超えると、エラーが出る。

原因は「まさかフォルダそんなに作らないでしょ」と思い込んでいたこと 😅

敵対的レビューで「最大何個まで処理できるか?」と質問させた時に気づきました。

この時、「想定外」を想定していなかった自分に気づいたんです。

🤖 AIに「敵対的レビュー」をさせる方法

ここからが本題です!

一人開発でも、AIを使えば「敵対的レビュー」ができるんです。

私が実際にやっている方法を紹介します。

ステップ1:ChatGPTに「バグ探し役」をお願いする

まず、書いたコードをChatGPTに渡して、こう聞きます:

「このコードをレビューしてください。特に以下の観点でバグがないかチェックしてください」

  • 想定外の入力値に対応しているか
  • エッジケース(極端なケース)を考慮しているか
  • エラーハンドリングは十分か
  • パフォーマンスに問題はないか
  • 3ヶ月後の自分が理解できるか

これだけで、かなり細かくチェックしてくれます。

ステップ2:Claudeに「改善案」を提案させる

次に、同じコードをClaudeに渡して:

「このコードの改善案を提案してください。特に可読性とメンテナンス性を重視してください」

ClaudeはChatGPTより「自然な文章」が得意なので、改善案の説明が分かりやすいんです ✨

ステップ3:「これ、本当に動くのか?」チェックリスト

AIのレビューを参考に、自分でもチェックリストを作りました 📝

  • 想定外の入力値でテストしたか?
  • 空文字、null、0で動くか?
  • 最大値・最小値で動くか?
  • エラーが出たとき、適切なメッセージが出るか?
  • 変数名・関数名は3ヶ月後の自分が理解できるか?
  • コメントは「Why(なぜ)」を書いているか?
  • マジックナンバー(意味不明な数字)を使っていないか?

これを毎回チェックするだけで、バグが激減しました 🔥

🎉 結果:開発時間が半分に、バグ修正時間も激減

敵対的レビューを導入した結果を正直にお伝えします。

開発時間は、以前はバグ修正に追われて新機能開発が遅延していたのが、今はバグが少ないので開発に集中できるようになりました。

バグ修正は、以前は1週間に5〜10件あったのが、今は1〜2件程度。

コードの質は、以前は3ヶ月後に見返すと「何これ?」状態だったのが、今は3ヶ月後でもすぐ理解できる。

正直、開発時間が半分になりました 🚀

📊 実際に見つかったバグ事例集

敵対的レビューで実際に見つかったバグをいくつか紹介します。

空文字チェック漏れ ユーザーが何も入力せずに送信すると、エラー。

ファイル名の日本語対応漏れ 日本語ファイル名をアップロードすると文字化け。

同時アクセス時の競合 2人が同時に操作すると、データが壊れる。

どれも「まさかそんなことしないでしょ」と思っていたケースです笑

💡 ChatGPT vs Claude:使い分けのコツ

ちなみに、私はChatGPTとClaudeを使い分けています。

ChatGPTはバグ探しが得意で、論理的なチェックが強く、エッジケースの指摘が的確です。

Claudeは改善案の提案が得意で、自然な文章で説明してくれて、コードの可読性向上のアドバイスが良い。

両方使うと、かなり精度が上がります 💪

🚀 自分のコードを疑う習慣が、開発を加速させる

今日のポイントは:

  • 自分のコードを「敵」のように疑う
  • AIに「敵対的レビュー」をさせる
  • チェックリストで毎回確認
  • ChatGPTとClaudeを使い分ける

敵対的レビュー、最初は面倒に感じるかもしれません。

でも、習慣にすると、バグが激減、開発時間が短縮、コードの質が向上。

良いことづくめです ✨

一人開発でも、AIをレビュアーにすれば品質は上がります 💪

ぜひ試してみてください 😊

また進捗報告させていただきますね 🔥


#プログラミング #バグ対策 #AI活用 #ChatGPT #Claude #敵対的レビュー #一人開発 #コードレビュー #開発効率化 #高千穂ムラたび

✨ 「なぜか動きました!」という危険なセリフ

深夜、プログラミングのアドバイスをしているAくんから連絡が来ました。

「かっちー、見てください。もう動きました!」

CursorというエディタにAI(Claude)を繋いで、やりたいことを日本語で伝えるだけ。数時間で、本人には書けなかったPHPのAPI連携コードが完成していました。

 

「これ、革命ですよ!」と興奮する彼。

 

気持ちはよく分かります。私も宮崎県高千穂の山奥で米粉菓子やあまざけを作りながら、AIの力を借りて自動化ツールを開発してきましたから。

ただ、彼のメッセージを見て、私は少し心配になりました。

 

「動いた」ことと「理解した」ことは、まったく違うからです。


💡 技術負債とは別物——「理解負債」という新しい問題

エンジニアの世界には「技術負債」という言葉があります。雑に書いたコードが、あとで修正コストとして跳ね返ってくる現象です。

でもAI時代には、もうひとつ別の問題が出てきました。

私はこれを「理解負債」と呼んでいます。

 

コードの品質ではなく、作った本人の「理解度」が借金になる。

 

AIが生成したプログラムは、ちゃんと動く。エラーも出ない。

 

でも——なぜそう書いたのか、本人が説明できない。

技術負債はコードを書き直せば解消できます。でも理解負債は、自分の頭の中の問題。だから厄介なんです。


😰 数週間後に届いたSOS

案の定というか、しばらくしてAくんから連絡がありました。

「エラーが出たんですけど、どこを直せばいいか分からなくて……」

 

在庫データを連携する小さなツール。コードを見せてもらいながら質問しました。

「この分岐、なんでこうなってるの?」 「……AIがそう書いてくれたので」

「このAPIを最初に呼んでる理由は?」 「……動いたから、そのままにしてました」

 

責めるつもりはありません。AIコーディングを始めた人なら、誰もが経験する壁だと思います。

問題は、「動く」ことに安心して理解を先送りにした結果、自分のコードなのに自分で修正できなくなっていたこと。

理解負債の怖さは、返そうと思ったときには利息が膨れ上がっているところです。


🔧 負債を溜めない3つの習慣

この経験から、私が意識している3つのことをお伝えします。

【1】コードの「解説」をAIにさせる

動いた瞬間に満足しない。

まず**「このコードを初心者向けに説明して」**とAIに頼む。その説明を読んで、自分の言葉でコメントを書く

このひと手間が、未来の自分を助けます。

【2】「なぜこの設計か」を記録する

私はDECISION.mdというファイルを使っています。

  • この設計を選んだ理由
  • 検討した他の方法
  • 却下した理由

プログラムは「何をするか」しか書いてありません。「なぜそうしたか」を残すのは人間の役目です。

【3】AIを「外注先」ではなく「壁打ち相手」にする

いちばん大切なのはこれかもしれません。

私の考えは「AIは作業、人間は判断」。

でも理解負債が溜まると、つい判断までAIに任せたくなる。

そうではなく、AIに反論させる。別案を出させる。

「セキュリティ的に大丈夫?」「もっとシンプルにならない?」

対話を通じて理解が深まる。人間同士のレビューと同じです。


🌱 AIと長く付き合うために

最近、Aくんからこんな報告がありました。

「コードを書いたあと、必ずClaudeに説明させるようにしてます。理解してから進むと、エラーが出ても自分で直せるようになりました」

嬉しい変化でした。

 

高千穂の棚田を見ていると思うことがあります。この土地の農業は、何百年もかけて知恵を積み重ねてきた。土のこと、水のこと、季節のこと——先人の理解が、今の風景を作っている。

AIを使った開発も同じだと思うんです。

 

スピードは間違いなく武器。でも理解を手放した瞬間、それは資産ではなく負債になる。

私が大切にしている言葉があります。

「凡事徹底」——当たり前のことを、とことんやり抜く。

1行1行のコードを理解する地道な積み重ねが、AIとの良い関係を長く続ける秘訣だと思っています。


次の記事はこちら

 

 

こんにちは!高千穂ムラたび/ラクダの佐伯です😊

今日はちょっと真剣な話をさせてください。

実は年末年始、人生で初めての恐怖体験をしました。


😰 それは突然やってきた

いま振り返ると、年末あたりから仕事が立て込んでいて、なんとなく疲れが取れにくい感じはあったんですよね。

でも、体調不良ってほどじゃない。

「なんか体が重いかな?」くらい。

だから完全に油断してました。


💨 息ができない…!

その瞬間は、本当に突然やってきました。

車の助手席に乗っていたとき。

急に息が苦しくなって、呼吸ができていないような感覚に襲われたんです。

え、なに? 何が起きてる?

頭が真っ白になりました。

ただ、少し時間が経つと普通に戻る。 呼吸もできる。

「あれ、気のせいだったのかな…」

そう思った矢先——

また同じ症状が襲ってくる。


😱 まさかの真実が判明

最初は1日に2〜3回だった発作。

それがどんどん増えていって、ピーク時には1日100回以上になる日も…。

さすがにこれはヤバい。

ネットやAIで必死に調べました。

そして行き着いたのが「呼吸恐怖症」という言葉。


📖 呼吸恐怖症とは

呼吸恐怖症とは、呼吸することへの過剰な意識や不安から、息苦しさやパニック症状を引き起こす状態のこと。

ストレスや疲労の蓄積が引き金になることが多く、自律神経の乱れと深く関係していると言われています。

厄介なのは、症状が治まるまで数週間〜数ヶ月かかるケースもあるということ。


🙄 まさか自分が…

正直ね、こういうのって「自分には関係ない」と思ってました。

だって前触れなんて、ほとんどなかったんですよ。

でも、なるときはなる。

体は正直です。


✨ 今は落ち着いてきました

症状を自覚したのは12月28日。

今はだいぶ落ち着いてきて、発作もほとんど出なくなりました。

ホッとしてます、本当に。


🛡️ 予防のために大切なこと

調べてみると、呼吸恐怖症の予防には以下が効果的だそうです。

十分な睡眠を確保する 

適度な運動で自律神経を整える 

深呼吸やストレッチを習慣にする 

カフェインやアルコールを控えめに 

「まぁいっか」の精神を持つ

特に忙しい時期こそ、意識的に休むことが大事ですね。


💬 最後に

体調管理って、本当に大事。

改めてそう思いました。

30代、40代、50代…働き盛りのあなたへ。

無理してませんか? 体からのサインを見逃してませんか?

この記事が、少しでも誰かの気づきになれば嬉しいです。

自分の体、大切にしないといけないですね。


最後まで読んでくれてありがとうございます😊