An AI industry of more than $1 trillion that can’t ship any functional production code 機能的な生産コードを送信できない1兆ドルを超えるAI産業 あなたがAIの黙示録と呼ばれることを心配しているなら、これを考慮してください:数十億ドルを燃やした後、我々はまだ我々が販売されたAIのおもちゃと信頼できるコードを配信することはできません。 ( ) (AIバブルの爆発についての詳細についてはこちらをご覧ください。 「突破」の発表を数え、CEOの約束を数え、今度は混乱を数え、ゴミコードの膨大な増加が、 (いや、「幻覚」ではなく、それはマーケティングであって、科学ではない)誰も実際に修正していない。 same four errors 次に、実際の、検証可能な例を参照し、AIによって生成された独自のコードですぐにそれらを見つけることができます。 本当にそんなに決定的なのだろうか? オープンボート 4 同じミス Google Rolls Out 4 同じミス ANTHROPIC DEVEIL 4 同じミス マイクロソフト WIRES あらゆるものに、そこに驚きはないですよね。 GPT-5 Gemini 2.5 Claude Sonnet 4.5 Copilot それぞれの打ち上げはAGIファンファーと共に進み、数日でストーリーが積み重なり、バラバラのスパゲッティコード、新鮮なセキュリティホール、そして同じ悲しいヒットライン――AIコードは賢く見えるし、馬鹿げているし、まだ人類が混乱をきれいにする必要がある。 それぞれの打ち上げはAGIファンファーと共に進み、数日でストーリーが積み重なり、バラバラのスパゲッティコード、新鮮なセキュリティホール、そして同じ悲しいヒットライン――AIコードは賢く見えるし、馬鹿げているし、まだ人類が混乱をきれいにする必要がある。 数字は痛々しく驚く。 短期的な売上高は、2021年と比較して約100%上昇した。 AIを使用する開発者は40%のセキュリティ脆弱性を追加 経験豊富な開発者は、AIツールで19%遅くなっています。 重要な企業の特定のグループのエンジニアは、AIコードの提案の約70%を拒否します。 ピンクは100% ピンクは100% セキュリティ脆弱性の40%増加 セキュリティ脆弱性の40%増加 19%減少 19%減少 AIツール 約70%の拒否 約70%の拒否 多くの企業は「10倍の生産性」の約束にすべてを賭けていたが、これは現在、ソフトウェア業界がこれまで見たことのないような危機を引き起こすための数学的不可能である。 We are not building the future faster, we are building. われわれは未来をより速く構築しているのではない。 前代未聞の規模で、前代未聞の信頼と、我々が創造している災害に対する前代未聞の失明。 Here’s what’s really happening: tomorrow’s minus two trillion dollars of code これらの方法を正確に示します。 グローバルなコードベースを耐え難い災害に変えています。 もしあなたがソフトウェアエンジニアなら、すぐにあなたのメールボックスは、破損したコードベースを救うための完全なエンジニアリングチームを乞う企業からの恐ろしいメールで溢れています。 Four Horsemen of Bad Code はい、企業がなぜすぐに バットを取った後、The ファンタジー desperately rehiring the same human programmers they replaced 「数ヶ月後にはプログラマーは必要ない」 「数ヶ月後にはプログラマーは必要ない」 The Four Horsemen Riding on Tons of Garbage Code(ゴミコードのトンで乗る4人の馬) 上記のように、上記のグラフで見る4つのエラーは現在、AIによって生成されたコードのほとんどを苦しめています。企業はこれらを完全なスピードでパッチしていますが、災害は遅延しているだけです。 自動化ではない。 autocomplete on steroids これらのエラーが引き起こす破壊の規模を理解するために、我々はそれらを2つのカテゴリーに分類する必要があります。 誰もが知っている、次の2つは、 AI自体のメカニズムから生まれた、誰も話していないもの。 マーケティングではなく、エンジニアリングのために発明されたバズボードです。 classic statistical errors new cognitive errors 「幻覚」 クラシックな2つのミス 誰もが知っている Type II Errors : The “Obvious” Mistakes シンプルな物が間違った! ランターの目が回っている。 What it means (in code): # AI generates (wrong parameter use; forgot to apply discount) def calculate_discount(price, customer_id, discount_rate): return price * discount_rate # Oops—no discount applied # Should have been def calculate_discount(price, customer_id, discount_rate): return price * (1 - discount_rate) # Apply the discount properly AIによって生成されたコードでよく見られる他の例には、以下が含まれます。 欠けているエラー処理(トライ/キャッチブロック) 間違ったオペレーター (use = instead of == in conditions) Off-by-one errors in ループ 間違ったメソッド名 (string.contains() in Python instead of in operator) 長い etc Type II Errors (Logic/Causal): Wrong Business Logic, Perfect Syntax 完璧に走る、間違ったことをする、あるいは、もっと鮮明に言うと、それは到着する。 魅力的 What it means (in code): right on time… at the wrong station. ケースは、あなた自身のビジネスにスケールすることができます:AIは、そのトレーニングデータのプレミアムユーザーの80%が主要都市に住んでいたことに気付いたので、それは間違って結論付けました。 決定 . city location shipping rates # AI generates (correlation != causation) def determine_shipping_cost(user): # AI saw premium users often live in cities with free shipping if user.is_premium: return 0 # Free shipping for premium elif user.city in ['New York', 'Los Angeles']: return 0 # AI incorrectly learned cities get free shipping else: return 9.99 # Should have been based on actual business rules def determine_shipping_cost(user, order_total): if order_total > 50 or user.is_premium: return 0 return 9.99 The New Two Cognitive Errors Nobody Talks About 誰も話さない新しい2つの認知ミス 次の2つのエラーは認知的性質です。あなたは古典的な確率教科書でそれらを見つけることはできません。彼らはAIシステムに原生しているように見えます、現代のモデルがトレーニングと生産中に意味を圧縮し、コンセプトを一緒に粘着させる方法から生まれます。 代表者として、もう一つは 思い出がどのように取り上げられ、思い出されるか。 entanglement collisions Type III Errors (Spaghetti/Entanglement): When Everything Gets Tangled これは最初の真の認知混乱です システムの別々の部分は結局一緒に粘着します: 電子メールを調整し、支払いを断ち切ります; auth を変更し、ログアップはフリークします. 何も孤立して機能しません, すべての小さな修正はコードベースの完全なツアーに変わります。 # AI generates - everything tangled together def process_user_action(user, action_type, data): # User validation, logging, auth, payment, and email ALL mixed if not user.is_authenticated: log_event("auth_failed", user.id) send_email(user.email, "Login attempt failed") return False if action_type == "purchase": # Purchase logic mixed with user verification if user.email_verified and user.age > 18: payment = process_payment(data['amount']) log_event("purchase", user.id, payment.id) update_inventory(data['item_id']) send_email(user.email, "Purchase confirmed") update_user_points(user, data['amount'] * 10) check_fraud(payment) # Why is fraud check AFTER payment? return payment elif action_type == "login": # Login mixed with analytics and recommendations update_last_login(user) log_event("login", user.id) recommendations = get_recommendations(user) # Why here? send_email(user.email, "Welcome back!") # Email on EVERY login? return {"success": True, "recommendations": recommendations} Summing up, you can’t: 支払いに影響を及ぼさずに電子メールの論理を変更する ログを破ることなく認証を変更する ユーザー認証をタップせずに購入フローを更新 すべての部品を隔離テスト このエラーは、 これは完全に なぜなら、それは単に耐え難いからだ。 100% increase in code 2週間以内に書き直す 2週間以内に書き直す Type IV Errors (Memory / Collision Cascades): Unrelated behaviors share the same “address” これは2番目でより致命的な認知エラーです。上記のように、確率教科書では見つかりませんが、実際にはAIによって生成されたコードの中に隠れています。 この誤りのシンプルなイメージ:片方のコートに2つのコート、もう1つを取ると1つが落ちる。 この誤りのシンプルなイメージ:片方のコートに2つのコート、もう1つを取ると1つが落ちる。 それは、圧縮された表現が異なるアイデアをあまりにも近づけるときに現れます。 ランタイムで、一つを思い出すと、静かに他方を覚醒します。 あなたはパスワードをリセットし、アカウントのクリーニングタグを一緒にします。 あなたはデータをエクスポートし、バラバラの支払いが実行されます。 何も孤立して壊れているように見えますが、副作用は、モデルが同じ精神の箱に隣人を格納しているため、再現し続けています。 # AI generates — password reset collides with account cleanup def reset_password(user_email): user = find_user(email=user_email) if user: token = generate_reset_token() send_reset_email(user.email, token) # From a different flow, yet here we are if user.last_login < 30_days_ago: user.status = "inactive" cleanup_user_data(user) return token return None # Another function unexpectedly handles payments def export_user_data(user_id): data = get_user_data(user_id) # Payment processing in a data export—what could go wrong? if data.outstanding_balance > 0: process_payment(data.outstanding_balance) return create_export_file(data) Real-world echoes (reported in research): DBレコードを変更する検索関数 Auth Flows That Trigger Analytics(アウトフロー) ログにエクスポートする「View」エンドポイント 無関係な複数の操作を混合するAPI この修正の目的は明確である:行動に別々の名前空間と明確な境界を与え、その後、独自にテストできる専用パスを通じてあらゆる状態をルーティングします。 はい、私は知っているし、私も私たちが手動でより早く、より良いものを作ったことの再作業の痛みを感じています。 はい、私は知っているし、私も私たちが手動でより早く、より良いものを作ったことの再作業の痛みを感じています。 これらのエラーは、生産ソフトウェアにどのように影響しますか? 上の図3は、世界中の開発者によって報告された最も一般的なバグを示し、これらが4つのエラータイプ(実践で最も重要な3つ)とどのように一致しているかを示しています。 上の図2と下の図4は、開発者がAIアシスタントをワークフローに導入したときに実際に何が起こるかを示しています。 , タイプI−IIのエラーは、主に人間やツールによって捕らえられます. あなたは謙虚な生産性の衝撃を受けます - typos squashed, imports fixed, the usual housekeeping. Nice, but hardly a revolution. autocomplete on steroids 来て来て — スパゲティゼーションとセマンティックな衝突. それは、車輪が外れるときです. コンセプトはモジュールを越えて混ざり、責任は曖昧になり、「無害な」アシスタントは意味を誤解し始めます. その結果? 統合に失敗し、テストに抵抗し、メンテナンスコストを膨らませるブリトルなコード。 Types III–IV もちろん、「10×自動化」の夢がどのように埋め込まれているかは明らかで、それは完全にROIを変え、2025年までに、真のコード生成自動化と、人間の開発者にとって重要な生産性の向上は、遠い、エピックなファンタジーに過ぎないことを思い出させます。 したがって、概要として:ソフトウェア開発者として、あなたは毎回、いくつかのダムポスターが新しいヘビオイル「AIコードバンド」を吹き飛ばすたびにパニックを起こす必要はありません。 じゃなくてA . power-autocomplete robot engineer Boilerplate / scaffolding: CRUD handlers, DTOs, wiring Testing glue: stubs, table-driven tests, fixture data Mechanical edits: repetitive refactors; rename/move ops (メカニカルエディション) 軽量なコンテンツ: docs/comments, regexes, simple SQL, migration templates ホームシェア: lint/format hints; config & YAML snippets すべての開発者が少し絶望を感じるための良いニュースは、すでに生産中に「10× with AI」のファンタジー全体が崩壊しているということです。 スパゲッティを解き、論理を修正し、実際に動作するシステムを再構築するため、スキルを高め続けてください。 real programmers — lots of them — you’re on the call list. ポストノート 私たちの過去の物語の読者たちは、すでに抗毒が存在することを知っています。 しかし、それはもちろん、システムを減らすこと、再接続すること、そしてハイプが研究ではないことを認めることを意味します。誰かがブレーキを置き、沈黙とマーケティングを減らすことによって、何年もかかるでしょう。 四誤の疫病に対する真の数学的治療法 四誤の疫病に対する真の数学的治療法