キャッチコピー: 「コードは書けない。でも、開発はできる。」「昨日の失敗を、明日の誰かの近道に。」「AIに任せる。でも、AI任せにはしない。」
👉 シリーズ特設一覧はこちら
私には、開発において一番頼りにしている得意技があります。
それは、「質問攻め」です(笑)。
MacCare(Mac清掃・最適化アプリ)の開発でも、AIとの間にこんな生々しいやり取りがありました。
1. 実体験:タスクマネージャーのトラウマ
開発の途中で、AIが「タスク終了機能(動いているアプリやプロセスを強制終了する機能)」を提案してきました。
- AI: 「タスクマネージャーのタスクキルのことですね?とても便利なので実装しましょう!」
これを聞いた瞬間、私の背筋に冷たい汗が流れました。
私は以前、Windowsのタスクマネージャーで「重いから」とプロセスを次々ブチブチ終了させて、パソコンが動かなくなって大変なことになった苦い経験があったからです。
だから、AIが良かれと思って提案してきた便利なタスク終了機能に対して、強い不安を覚えました。
「便利そうやけど、勝手に消したらあかんやつまで消してまうんとちゃうか……?」
そこで私は、AIに率直にぶつけました。
2. 実際の指示文:「脆弱になるのなら不必要です」
私がAIに返したメッセージがこちらです。
【実際の指示文】
タスクマネージャーでブチブチ切っていたら大変なことになったが、その機能があればいいですね。
ただし、機能を増やすことで脆弱になるのなら不必要です。
この「機能を増やすことで脆弱になるのなら不必要です」という一文が、極めて重要でした。
私は、プログラムの安全性を専門的にコードレベルで評価できるわけではありません。
しかし、「業務で使うパソコンが壊れるような危険な機能はいらない」という引き算の判断は、現場の人間だからこそできます。
便利だから何でも付ける。機能が多いほど優れたアプリになる。
そういう考え方は、職場のMacで使う実務アプリには絶対に通用しません。
- 仕事中の大切なデータが消えたら困る。
- 社員のMacが起動しなくなったら業務が止まる。
だから、AIに安全対策を徹底的に考えさせました。
その結果、MacCareには「OSの保護対象プロセスの終了遮断」「安全なゴミ箱への移動」「危険なシステムファイルの除外ルール」などが何重にも設計されたのです。
3. 初心者向け解説:質問には「目的」がある
今回、私がしていたのは単なる世間話や質問ではありませんでした。
- 「それは何?」 → 意味を理解する
- 「危険では?」 → リスクを調べる
- 「ほかに方法は?」 → 選択肢を増やす
- 「本当に必要?」 → 不要な機能を減らす
- そして最後に、採用するかどうかを人間が決める。
AIへの質問は、「人間が自分の意思と方針を明確にするための作業」そのものだったのです。
タスク終了について質問していた私は、ふと別の疑問が湧いて聞いてみました。
「iPhoneをMacにつなげてクリーンアップすることもできますか?」
するとAIから、「iPhone本体のアプリデータを直接消すのは危険ですが、Mac側にたまっている古いiPhone・iPadのバックアップなら安全に整理できます!」という素晴らしい提案が返ってきました。
素朴な質問から、現場で本当に役立つ機能が生まれた瞬間でした。
4. 成功・失敗・未確認
| 項目 | 判定 | 現場での事実 |
|---|---|---|
| 今回の正解 | ✅ 成功 | 機能を追加するとき、便利さと危険性をセットで質問し、「危険なら付けない」とブレーキをかけたこと。 |
| 今回の失敗 | ❌ 失敗 | 過去にどのプロセスを終了させてよいのか理解せず操作し、OSをクラッシュさせたこと(トラウマの教訓)。 |
| 未確認のこと | ⚠️ 未確認 | 保護機能を入れたからといって、将来のOSアップデート等で想定外の挙動が起きるリスクがゼロになったわけではない。 |
5. 次に使える指示文(もう一度使う指示文)
新機能の誘惑に負けず、安全性を最優先させるためのプロンプトです。
この機能を追加するメリット、既存機能への影響、データ消失の可能性、権限上の危険性を調べてください。
危険や複雑さが増えるなら、追加しない(見送る)選択肢も提案してください。
6. 未来の自分への申し送り
- 今回分かったこと: 初心者の最大の武器は「質問」。分からないことはリスクの兆候であり、徹底的に問い詰めるべき。
- 失敗したこと: 「便利そうだから」と安易に機能を追加しかけたこと。
- これから改善すること: 「引き算の開発(不要な機能を削ぎ落とす勇気)」を常に忘れないこと。
- 次回(第004話)の予告: 『魔法の言葉は「完成した証拠を出せ!」だった(笑)』――AIの口先報告を完全に封じる、客観的テストと自動停止ルールの真髄。
- ← 第002話: AIの「できます!」に何度も騙された(笑)
- 第003話: 必殺・質問攻め!プログラミング初心者の私がAIに勝手な開発をさせなくなった方法(現在の記事)
- 第004話: 魔法の言葉は「完成した証拠を出せ!」だった(笑) →
- 📚 シリーズ特設一覧へ戻る