世界を動かす技術を、日本語で。

AIは簡単な部分をさらに簡単にし、難しい部分をさらに難しくする

概要

  • 開発者体験システム思考 に関する課題と失敗の分析
  • AIワークフロー継続的改善、意思決定のための メンタルモデル の重要性
  • AI活用の落とし穴と、 責任あるコーディング の必要性
  • マネジメント持続可能な生産性 のバランス問題
  • AIの正しい使い方人間の判断力 の両立が鍵

開発者体験とシステム思考の課題

  • エンジニア組織の サポート不足 が現場の課題
  • 品質を犠牲 にした開発では誇りを持てない現実
  • 現状の速度 を評価せず、スプリントの連続要求
  • 一度速く納品すると、その速度が 新たな基準 となる組織文化
  • エンジニアの疲弊 と品質低下の悪循環

AIワークフローの現実と落とし穴

  • 「AIは必ずしも 開発速度を上げない」という現場の実感
  • 従来は 自分で調査・検証 して結論を出していた
  • AIやGoogle に頼り過ぎると、 理解不足責任感の欠如 を招く危険
  • AIが生成したコード は「他人のコード」と同じ扱い
  • コードを書くのは簡単だが、 調査・文脈理解・検証 が本質的な難易度

AI活用の実体験とリスク

  • プロトタイピングや個人プロジェクトでは AIのコーディング支援 が有効
  • 重要なプロダクトでは 1行ごとの責任 が求められる
  • AIにテスト追加を依頼したら、 ファイルの大部分が削除 される事例
  • AIとのやりとり やファイル復旧に余計な時間を消費、本末転倒
  • AIを調査ツールとして活用 し、即答に頼らないスキルの重要性

AI時代の開発者に必要なスキル

  • AI支援開発 で見落とされがちな「調査・検証」の重要性
  • AIが書いたコード を理解・レビューする難しさ
  • 文脈や背景知識 がないと、AIの出力を正しく評価できない
  • コードの 所有意識責任ある運用 の必要性

マネジメントと持続可能な生産性

  • 無理な速度目標 が「AI出力のコピペ」や品質低下の温床
  • 6ヶ月後や深夜 に「AIが書いたから分からない」では通用しない現実
  • バーンアウト やバグ多発でAIによる生産性向上が帳消し
  • AIはシニアのスキル、ジュニアの信頼」という考え方
  • AIは優秀な外部助っ人 だが、現場の文脈は理解していない

AIと人間の協働による最適なワークフロー

  • 責任あるコード管理 が不可欠
  • AI出力の 無批判な利用 は将来のトラブルの原因
  • 現場の文脈や背景 を開発者自身が補う必要性
  • AIは調査やアイデア出し でこそ真価を発揮
  • 人間の判断力とAIのスピード のバランスを取るワークフロー設計

AI活用の成功事例と教訓

  • プロダクションバグ調査で AIが初動調査を担当、人間が検証・意思決定
  • 原因特定と解決案提示 まで短時間で実現
  • AIの強みは調査・情報整理、最終判断は人間
  • 無理な残業や火消し を避ける持続可能な体制構築

組織・個人が意識すべきポイント

  • AIの「 10倍生産性」は、もともと調査が足りなかっただけの可能性
  • 自己調査・検証力 を鍛え直す必要性
  • AI活用の限界 と人間の役割分担の明確化
  • 継続的な改善健全な開発文化 の醸成

Claude InsightsとAIツールの注意点

  • Claude Codeの/insightsコマンド はセッション分析レポートを自動生成
  • AIチャットボットやコーディングエージェント の「最初の回答」への過信は禁物
  • 調査・検証・文脈把握を怠らない開発姿勢

SEOと自己評価の視点

  • 「どうすれば上位表示できるか」より「 自分で自分を妨害していないか」の確認が重要
  • Googleに見つけやすく、理解しやすい構造 を意識するSEO戦略

まとめ AI時代の開発現場では、 AIの強みと限界を理解し、責任ある活用 が不可欠です。 システム思考継続的な自己改善、そして 人間の判断力 が、真の生産性向上と健全な開発文化の鍵となります。

Hackerたちの意見

レトロエミュレーターとアセンブラをテスト付きで vibe コーディングしてみたんだけど、プロンプトは最小限で、すごくいい結果が出たよ(Gemini 3)。数年前に作ったアプリの難しいプロプライエタリ部分を vibe コーディングしようとしたけど、すごく技術的な領域で、例が全然なかった。GitHubにはエミュレーターが何千もあるけど、俺がやろうとしたことはゼロの例だった。今のところ、明らかな教訓は、簡単なものもあれば全然ダメなものもあるってこと。

俺はこれを「恥ずかしいほど簡単に解決できる問題」って呼んでる。GitHubにはエミュレーターの例がたくさんあるから、エミュレーターはLLMの潜在空間に存在してる。いつでも出してもらえるよ。恥ずかしいほど簡単に解決されてる。君がやろうとしたことの例は全くないけどね。

技術的にあまり人気のないニッチな分野で vibe コーディングを試みたけど、失敗した。その後、できるだけ問題を分解して、より明確な言葉で問題を提示したら、Geminiが数回の試行で動くコードを提供してくれた。これは一つの例だけど、問題をもっとシンプルに分解してみると、うまくいくかもしれない。ニッチな業界特有のフレームワークは、vibe コードモードで扱うのがちょっと難しい。でも、少し努力すれば、AIは自分でコードを書くよりも早いみたい。

うざい部分がちょっとマシになる気がする?それと、「エージェントと議論してファイルを回復するのにかかった時間は、自分でテストを書くのにかかる時間より長かった」っていうのも。俺の経験から言うと、LLMと議論するのは時間の無駄だし、ファイルを回復するのに時間を使うべきじゃない。小さな変更を一つずつやって、うまくいったらコミットして、ダメだったら変更を捨ててまたやり直せばいい。AIが万能だとは思わないけど、いつそれが適切なツールで、いつそうでないかを見極めることが大事だね。

でも、あいつが始めたんだよね…

バージョン管理や、過去のバージョンを簡単に戻せるIDEを使わないのは、ただの馬鹿げたことだよ。銃を持った子供と遊ぶつもりなら、防弾チョッキを着ておけ。

それが「ただ」簡単だとは思わないな。AIはユニットテストを生成するのが得意だけど、実際にはテストを通すためにこっそりハックしちゃうことも多いから、プログラムが何をするべきかの良い指標として使うことは少ないよ。

AIはただの大きな力の倍増器だと思う。もし君のコードベースが悪い基盤で、たくさんのハックで間違った方向に進んでいるなら、既存のスタイルを反映したコードを書くだけだよ… そうなると、まさにOPが言ってることになる。だけど、もし君のコードの基盤が良くて一貫性があってハックを許さないなら、AIはそのクリーンなスタイルを維持して、驚くほど良くなる。そうなると、プロンプトはほとんど重要じゃなくなる。コードの基盤が全てだよ。でも、多くの人がまだ悪い体験をしている理由もわかる。ほとんどのコードベースは悪いからね。動くけど(非常に厳しい制約の中で、特定の環境で)、メンテナンスが難しくて拡張も大変。ハックの上にハックが必要になる。新しい機能を追加するたびに、マイナーまたはメジャーなリファクタリングが必要で、全てが相互依存しているから、散らばったコード変更がどんどん増えていく(密結合、低い凝集性)。生産性は徐々に落ちて、以前は1人でできたことを100人のエンジニアがやらなきゃいけなくなる。これは新しい現象じゃない。ただ、AIのおかげで今はもっと明らかになっただけ。俺はこれを何年も言ってきたけど、実際に複雑なプロジェクトを自分で作ったエンジニアが少なすぎると思う。建築の設計にも似たようなことがあって、建物の基盤に制約される。普通の1階建ての家のために基盤を設計したら、建設プロセスの途中で20階建ての高層ビルを建てることに変更することはできない。でも、もし基盤が100階建ての高層ビルを支えられるほど良ければ、その上にほぼ何でも建てられる。俺の視点は、人々が vibe コーディングできるようにしたいなら、彼らに本当に強い基盤を与える必要があるってこと。制限はまだあるけど、もっと遠くまで行けるようになる。俺の経験では、基盤に計画と知恵を注ぎ込むほど、実際の建設にはあまり知恵や計画が必要なくなる。

もし基盤がAI自身によって作られたら、どうなるの?その場合は言い訳はないよね?

俺も同じことを発見した。質の悪い契約者のコードをリファクタリングしてるんだけど、最初はCodexが貧弱で局所的な修正をしてた。基盤を再設計した後(ブートストラップを捨てて、使いやすいフォームフィールドを作り、ハードコーディングされた役割の参照を修正して、TypeScriptの型を統合するなど)、具体的な指示なしでもずっと良い選択をするようになった。でも、Codex/Claude Codeは全ての問題を解決するわけじゃない。コードベースを理解して、コアの抽象を修正するために時間をかける必要がある。そうしないと、ただゴミの上にゴミを積み重ねて、パッチを当て続けるだけで、コアの問題を実際に解決することはできない。

ここでの難しさは、AIが真のグローバルビューを持っていないことだね。だから、特に人間のフィードバックやレビューなしで動かすと、良い構造でさえ徐々に劣化していく。でも、良い構造が本当に助けになるのはその通りだね。

AIは、質の悪いコードベースのリファクタリングを手伝えるのかな?少なくとも、基準が低いデザインを広く調査するように頼んだら、改善のための良い提案をしてくれる?ほとんどのコードベースは言う通りかなりひどいから、これはかなり重要なポイントだよね。

Hacker Newsで議論の続きを見る