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

私のAI懐疑派の友人たちはみんなおかしい

2025年6月3日原文(fly.io)

概要

AI支援プログラミングに対する現場の懐疑論と現実的な効果についての考察。 LLM(大規模言語モデル)導入を推進する経営層と、現場開発者の温度差。 LLMの現状の活用法と、その実際のメリット・限界。 プログラミングにおける「職人技」と実用性のバランス。 AIによる業務自動化の波が開発者にも及ぶ現実と、その社会的影響。

AI支援プログラミングへの挑発的考察

  • 経営層LLM(大規模言語モデル) 導入を強制する現状
  • 一部 優秀な開発者 がAIを「NFTの次の流行」と見なす懐疑論
  • 著者自身も長年ソフトウェア開発に従事した経験者
  • LLMの議論は ソフトウェア開発 分野に限定、アートや音楽は対象外
  • 現場の懐疑論 に対して、具体的な反論の必要性

LLM活用の現状と「真のAIコーディング」

  • 単なる ChatGPTコピペ は本流ではない
  • 現在のAIコーディングは エージェント 活用が主流
    • エージェントはコードベースを自律的に探索・編集
    • ファイル生成、テスト実行、ツール連携など多数の自動処理
  • エージェント本体はシンプルなシステムコード
  • 本質は「 Makefile的な自動化」であり、AI部分は一部のみ
  • 旧来の手法と混同しないことが重要

LLMの利点と開発現場の変化

  • 単調なコード や調査作業の大部分をLLMが担当
  • Google検索 の回数が大幅に減少
  • 疲労や惰性 に強いAIの特性
  • 新規プロジェクト立ち上げ時の「面倒な作業」の自動化
  • LLMによる「 ほぼ動く状態」までの高速到達
  • 難解な作業もエージェントが長時間自動で対応可能
  • 開発者はより「 本質的な作業」に集中

LLMコードの品質・責任と現場スキル

  • LLM生成コードの 可読性・責任 は開発者自身に帰属
  • LLMは「確率的」ではなく、 読めるコード を出力
  • LLMの出力を 自分のスタイルに整える のは従来通り
  • 「LLMのコードが読めない」= スキル問題
  • LLMの コンテキストウィンドウ 拡張による大量コード対応

LLMの「幻覚(hallucination)」問題

  • エージェント が自動で Lint・テスト を実行し、誤りを検出
  • LLMが間違った関数を作っても自動で修正プロセスを繰り返す
  • Zedなどの エージェントモード で作業完了通知
  • 「幻覚」問題は ほぼ解決済み の課題

LLMコードの「低品質」論への反論

  • LLMのコストは インターン以下
  • シニア開発者の役割は「 能力の低いコーダーを活かすこと
  • LLMの品質は 使い方・ツール整備次第
  • LLMは「タイピング・検索・テスト・デバッグ」の自動化が主
  • 人間の「初稿」も決して完璧ではない現実

LLMと特定言語(Rust等)の相性問題

  • LLMに合わない言語(Rust等)への 不満は投影
  • LLMの活用性で言語選択が変わる可能性
  • Go言語はLLMとの親和性が高い
  • RustとLLMの相性が悪い場合は 単なる議論のすれ違い

プログラミングの「職人技」と実用性

  • 職人的なこだわり は私的な趣味の範疇
  • プロ開発者の本分は「 実用的な問題解決
  • 美しいコードは必須条件ではない
  • 本質的作業を避けて「自己満足」に走る傾向は 要注意
  • LLMは雑務を自動化し、本質的価値創造に集中できる環境を提供

「平凡さ(mediocrity)」の価値

  • 平凡なコード の大量自動生成はむしろ有益
  • すべてのコードが高品質である必要はない
  • LLMは「品質の下限」を引き上げる効果
  • LLMは人間より幅広いアルゴリズム知識を持つ場合も
  • 「平凡なコード」でも人間の負担軽減に大きく貢献

AGI(汎用人工知能)論争への無関心

  • AGI実現の可否は 実用議論と無関係
  • 現在使えるもの、役立つものを評価する現場主義

AIによる雇用への影響

  • オープンソース や自動化と同様、AIも仕事を奪う現実
  • ソフトウェア業界も例外ではない
  • AIによる業務自動化の波は全産業に及ぶ
  • LLMで開発者の仕事が減る可能性も現実的な懸念
  • 社会全体での適応が必要

AIと著作権・創作分野の課題(次章へ続く)

  • AIは 視覚芸術分野 に対して特に深刻な脅威
  • アーティストの実態とAIによる自動生成の現実
  • (この項は次章で詳細に扱う)

Hackerたちの意見

機械翻訳と音声認識。これらの最先端技術はマルチモーダル言語モデルなんだ。私は聴覚障害があって、ほぼ聴覚がない状態だけど、この技術を毎日使ってる。1980年代の古いテレビシリーズを見たかったんだけど、字幕がないんだよね。だから、その番組を言語モデル(Whisper)に入れてみたら、なんとか見れる字幕ができた。これって、昔はSFの世界だったことを覚えてるのは私だけかな?機械が役に立つ形で音声を文字起こしできるかどうか、そんなことが疑問視されてたのはつい最近のことだよね。魔法に慣れすぎちゃったなぁ。

古いテレビシリーズにはクローズドキャプションがあるはずだけど(字幕とは違うらしい)、VHSコピー以外でどこから手に入れるかは難しいかもね。

気持ちわかるよ。2000年代後半から2010年代初めは、アメリカの映画をダウンロードするのは簡単だったけど、字幕を手に入れるのは大変だった。他の地域の映画はもっとひどかったし。今でも、会話を録音してWhisperで再生して100%情報を得ようとする人がいるよ。注意:海賊行為を称賛してるわけじゃないけど、アメリカの境界を越えると自由すぎるね。

それはちょっと違うよ。音声認識と翻訳の最先端は、まだこのタスク専用の専用モデルなんだ。ギャップはどんどん小さくなってきてるけど、誰がどれだけのトレーニング予算を投資するかにも大きく依存してる。例えば、自動音声認識(ASR)については、ここを見てみて: https://huggingface.co/spaces/hf-audio/open_asr_leaderboard 現在の最高のASRモデルは600Mパラメータ(LLMに比べたら小さいし、どのLLMよりもずっと速い: 3386.02 RTFx対62.12 RTFx、コストも安い)で、120,000時間の音声でトレーニングされてる。比較すると、次に良い音声LLM(WERはかなり近いけど、少し劣る)は5.6Bパラメータで、5Tトークン、2.3M音声時間でトレーニングされてる。いつもこうだったんだ: コストのほんの一部で、純粋なASRモデルが得られて、どの音声LLMよりも優れてる。翻訳モデルも同じで、少なくとも十分なトレーニングデータがあれば、人気のある翻訳ペアではそうなる。ただ、LLMは音声認識や翻訳だけにとどまらず、できることが明らかに強力だね。

翻訳は理想的なアプリケーションに思えるね。LLMが社会的な概念や難解なリファレンス、ポップカルチャーなどを統合するのに全く問題がないように見えるし、文化を横断して最も完璧な翻訳を見つけることができると思う。たとえ完璧に伝えるために三つのバージョンを出さなきゃいけなくても、もう伝統的な翻訳者よりもずっと進んでるよ。

機械翻訳と音声認識。そうそう、そうだよ! 何度も音声認識を試してみたけど(Dragonとか)、最初はみんな「すごい!」って言ってたけど、結局使えるほど良くなかった。95%の精度じゃ足りないよ。今はWhisperを使って自分の声を録音して、それをLLMに渡して整理してもらってる。LLMの貢献があって、やっとこれが実現可能になった。完璧ではないけど、まだ修正しなきゃいけないこともある。でも、以前の十分の一の時間で済むようになった。自分用のメモを転写するときは、もう出力を確認することすら面倒になってる。小さなエラーは自分のメモにはOKだしね。

本当に驚くべきことの一つは、今やコンピュータに与える入力が曖昧でも、意味のある結果が返ってくるってことだよね。90年代にプログラミングを学んで育った私にとっては、コンピュータに曖昧な人間レベルの指示を与えて、ほぼ思い通りに動くなんて、まるでSFの世界のように感じてた。

すごいよね。週に1〜2回は、この現実に驚かされることがある。

LLMのコード生成にはまだ手を出してないけど(機能しないフィラーやテストデータ以外は)、その曖昧さがあるから、話すドキュメントとして使うのが好きなんだ。必要な情報を引き出すために、検索キーワードの魔法の組み合わせを探る手間がかなり減るから、全体的に時間を節約できるんだよね。

逆に、正確な入力を与えると、解決しやすい別のものとして曖昧に解釈されちゃうことがあるんだよね。

コンピュータに与える入力があいまいでも、意味のあるものが返ってくるという単純な事実。私は、機械に正確な指示を与えて、自分が欲しいものを正確に得るためにこの職業に就いたんだ。これを予見していたDijkstraの話を読む価値があるよ。彼は半世紀前に「形式的な記号を使う義務を負担と考えるのではなく、それを使う便利さを特権と考えるべきだ。彼らのおかげで、学校の子供たちは昔は天才だけが達成できたことを学べるようになった。」って言ってたんだ。(この文を1977年の技術報告の序文で書いた著者は、明らかにこれを理解していなかったみたい。「論理接続詞に使われる標準的な記号さえも明瞭さのために避けられている」とか書いてるし、その文の存在は著者の誤解が彼だけに限らないことを示唆してる。)結局、私たちが母国語を使う「自然さ」は、意味が明白でない発言をするためにそれを使うのがどれだけ簡単かに帰着するんだ。[...] もし最初から母国語だけが情報処理機器への入力と出力の手段だったら、どうなっていたか想像するのは面白いかも。私の考えでは、歴史はある意味で繰り返されて、コンピュータサイエンスはそこから十分に定義された形式的なシステムにブートストラップするための本当にブラックアートになっていただろうね。インターフェースを使いやすいくらい狭くするには、世界中の知恵が必要だっただろう。「2025年には、コンピュータと議論しながら形式言語を生み出すプロンプトエンジニアリングとバイブコーディングの世界へようこそ。私たちが最初に発明した言語を使わないために、あいまいな言語で議論しないようにするためにね。」 https://www.cs.utexas.edu/~EWD/transcriptions/EWD06xx/EWD667...

毎週、AIに対する正当な批判に対して弱い反論をする記事が出てくる気がする。もう定型文の返事を書こうかなって思うくらい、何を言うか分かっちゃってる。インターンは月20ドルじゃ雇えないけど、組織の具体的な内容をユーザーに教えるのは重要だよね。何が重要で何が無駄かを理解するには、そのスキルセットを知ることが必要なんだ。

Hacker Newsで議論の続きを見る