AIはコードを書くが、問題は言葉でしか始まらない
Hatched by 石川篤
Jun 12, 2026
1 min read
2 views
74%
最初の勝負は、実装ではなく言語化で決まる
AIは驚くほど速くコードを書きます。だが、その速度に見とれていると、もっと重要な事実を見落とします。何を作るべきかを決めるのは、いつの時代も人間です。しかも、その「何を」は、頭の中にぼんやりあるだけでは足りません。言葉になっていないアイデアは、AIにとっても、チームにとっても、ただのノイズです。
ここに、現代のエンジニアリングの核心があります。優れたエンジニアの価値は、単に手を動かす速さではなく、考えを明確な言葉に変換する力にある。これは設計書を書く能力だけの話ではありません。問題を定義し、条件を切り分け、環境を想定し、失敗の形を先回りして説明する力です。AIはその表現を増幅できますが、最初の輪郭は自分で引かなければなりません。
AI時代の競争力は、速く書く力ではなく、曖昧な違和感を実行可能な問いに変える力にある。
この視点は、技術ブログの価値にもつながります。ブログとは単なる知識の公開ではなく、思考を外部化し、他者に伝わる形へ整える訓練です。そして興味深いのは、この訓練が、そのままAIとの協働能力を鍛えることです。書ける人は、考えられる人です。考えられる人は、AIに任せるべき部分と、自分が決めるべき部分を切り分けられます。
便利な自動化が、かえって「問いの貧困」を暴く
ここで多くの人が陥る誤解があります。AIがコードを書けるなら、私たちはもはや設計や理解に時間をかけなくてもいいのではないか、という誤解です。実際には逆です。自動化が進むほど、問いの質が成果を左右します。
たとえば、ある人が「ログイン機能を作って」とAIに頼むとします。AIはそれらしい実装を返せます。しかし本当に重要なのは、そのログイン機能が何を守るのか、どの攻撃を想定するのか、失敗時に何を許容しないのかです。認証なのか、認可なのか、セッション管理なのか、レート制限なのか。要件が曖昧なままでは、出来上がるコードはもっともらしいが脆い。
これは、セキュリティ分野に限りません。監視ダッシュボード、検索機能、推薦ロジック、課金フロー、全部同じです。AIは与えられた条件を局所的に最適化しますが、そもそも何を最適化すべきかは決められません。だからこそ、エンジニアに求められるのは、「実装の案内人」よりも「問題の翻訳者」です。
このとき、技術ブログを書く習慣は強力です。自分の中だけにある曖昧な理解は、文章にしようとした瞬間に弱点を露呈します。何が前提で、何が未確定で、どこが推測なのか。書くという行為は、知識を増やすより先に、思考の穴を見つける装置として機能します。
具体的には、次のような違いがあります。
- 「このツールは便利だった」ではなく、「どの条件下で再現性が高いのか」
- 「脆弱性を見つけた」ではなく、「どの前提が破られたときに成立しなくなるのか」
- 「AIで速くなった」ではなく、「どの判断を人間が握るべきか」
この粒度で言語化できる人は、AIに指示を出すときも、単なる雑な依頼ではなく、検証可能な依頼を出せます。つまり、言語化の精度が、そのまま協働の精度になるのです。
技術ブログは公開のためではなく、認識の圧縮のためにある
多くの人は技術ブログを「自分の成果を見せる場所」だと考えます。もちろんそれもあります。しかし本質はそこではありません。技術ブログの最大の価値は、頭の中の散らかった認識を、再利用可能な形に圧縮することです。
たとえば、ある脆弱性検証の流れを考えてみましょう。対象環境を調べ、挙動を観察し、どの条件で異常が起きるかを確認し、再現手順を整理する。ここで重要なのは、単に手順をなぞることではなく、何が本質で何が偶然かを見極めることです。成功したコマンドの羅列だけでは、別環境では役に立ちません。だが、前提条件、期待する応答、失敗時の分岐まで言葉にできれば、別の人も、別の日の自分も、その知識を使えます。
これは、あらゆる技術テーマに通じます。CIの不安定さ、パフォーマンス劣化、権限設計の迷い、データ品質の問題。表面的な「やり方」はすぐ陳腐化しますが、なぜその方法が成立したのかという説明は長く残ります。ブログの価値は、再現手順を保存すること以上に、判断の軸を保存することにあります。
さらに重要なのは、公開した瞬間に得られる反応です。誰かに読まれると、自分の説明の不足が見える。読者は、本人が当然だと思って省いた前提につまずきます。この摩擦は恥ではなく、むしろ品質向上のためのフィードバックです。説明が通るかどうかは、頭の良さではなく、他者の認知コストを下げられるかで測られます。
ここでひとつの見方を提案したい。技術ブログは「文章の練習」ではなく、推論のデバッグです。コードのデバッグがバグを探す作業なら、ブログのデバッグは、自分の理解の曖昧さを探す作業です。書けば書くほど、何が分かっていないかが見える。分かっていないことが見えるほど、AIにも人間にも伝わる言葉になる。
エンジニアの新しい武器は、正解を出すことではなく、問題を可視化すること
AI時代において、エンジニアの役割はしばしば誤解されます。人々は「AIが作るなら、人間は不要になるのでは」と考えがちです。しかし現実には、曖昧な状況に意味を与える役割が、むしろ強く求められています。
なぜなら、現場の問題は、教科書のようには現れないからです。アラートは鳴るが原因は一つではない。再現しない不具合が起こる。仕様書にはない例外が出る。ユーザーは想定外の使い方をする。こうした環境では、技術力とは、最適解を素早く出す能力だけではなく、問題の境界を定義する能力です。
たとえば、あるシステムで「遅い」という報告が上がったとします。ここで雑にAIへ聞くと、一般論の最適化案が返ってきます。しかし本当に必要なのは、遅いのがどの条件かを切り分けることです。初回アクセスなのか、特定のデータサイズなのか、特定地域なのか、認証後なのか、特定のクエリなのか。問題を細かく分解できる人は、AIに正しい補助輪を与えられます。
この能力は、攻撃的なセキュリティ検証でも、日常の開発でも同じです。脆弱性を見つける人は、単にツールを動かしているのではありません。どの入力がどの期待を壊すのか、どの境界が守られていないのかを言語化しています。つまり、探索の本質は「実行」ではなく「解釈」です。ツールは発見を補助するだけで、発見の意味づけは人間が担う。
強いエンジニアは、答えを知っている人ではない。問題を、他人が扱える形にまで整えられる人だ。
この観点から見ると、AIは脅威ではなく増幅器です。ただし、増幅されるのは能力だけではありません。曖昧さも、雑さも、認識不足も、そのまま拡大されます。だからこそ、AI時代の学習は「新しいツールを覚えること」ではなく、自分の思考を観測可能にすることへ向かわなければなりません。
言語化を鍛えるための実践フレームワーク
では、どうすれば「考えを言葉にする力」を育てられるのでしょうか。ポイントは、抽象的に書くことではありません。むしろ、具体的な制約を伴う文章を書くことです。以下のフレームワークは、技術ブログにも、AIへの指示にも、そのまま使えます。
1. 問題を3層に分ける
最初に、対象を次の3層で書き分けます。
- 事実: 何が起きたのか
- 解釈: それをどう理解したのか
- 仮説: 何が原因だと考えているのか
この区別ができると、議論が急に明瞭になります。たとえば「APIが不安定だ」は事実ではなく感想です。「特定のエンドポイントで、5分に1回タイムアウトが発生する」が事実です。そこに「DB接続枯渇が原因かもしれない」という仮説を置けば、検証可能になります。
2. 前提条件を明記する
再現性は前提条件で決まります。環境、権限、入力値、バージョン、タイミング。ここを省くと、文章は一気に再利用不能になります。ブログを書くときも、AIに頼むときも、「何を前提にしているか」を書く癖をつけるべきです。
3. 失敗パターンを先に書く
うまくいった方法より、うまくいかなかった条件のほうが学びになることが多いです。何を試して、なぜ外れたのかを書けば、思考の幅が見えます。これは探索の深さを示す重要な指標です。
4. 読み手の疑問を先回りする
良い文章は、自分の知識を誇示するものではありません。相手が次に知りたいことを、一歩先回りして提示します。「なぜそれが重要か」「どこで破綻するか」「他の方法とどう違うか」。この三つを押さえるだけで、説明は格段に強くなります。
5. ひとつの結論を、ひとつの判断に結びつける
「勉強になった」で終わる文章は、行動を変えません。最後に必ず、「だから次は何をするのか」まで落とし込みます。これができると、文章は知識メモではなく、実務の道具になります。
Key Takeaways
- AIに任せる前に、問題を自分の言葉で定義する。 何を作るかが曖昧なままだと、出力は速くても価値が薄い。
- 技術ブログは公開物ではなく、思考のデバッグツールとして使う。 書けない部分が、そのまま理解の穴だと考える。
- 事実、解釈、仮説を分けて書く。 これだけで議論と検証の精度が大きく上がる。
- 前提条件と失敗パターンを必ず残す。 再現可能性は、成功例より失敗の整理で高まる。
- 読み手が次に何をすべきかまで示す。 説明を、行動に変換して初めて価値になる。
結論: これからのエンジニアは、書ける人が強い
AIがコードを書く世界では、手を動かす速さだけでは差がつきません。むしろ差がつくのは、自分の頭の中にある曖昧さを、他人と機械の両方が扱える言葉に変換できるかです。技術ブログは、その訓練場です。そしてAIとの協働は、その能力を試す実戦です。
ここで発想を反転させると見えてくるものがあります。ブログを書くために考えるのではない。考えるために書くのです。AIを使うために言語化するのではない。言語化できるからこそ、AIを使いこなせるのです。
つまり、これからのエンジニアにとって重要なのは、「何を知っているか」だけではありません。「何を、どこまで、どんな条件で、どのように説明できるか」。その能力こそが、AI時代における本当の実装力です。
Sources
Hatch New Ideas with Glasp AI 🐣
Glasp AI allows you to hatch new ideas based on your curated content. Let's curate and create with Glasp AI :)
Start Hatching 🐣