- 数十年にわたり繰り返されてきた**「プログラマーの終焉」予言は毎回外れており、技術の進歩はむしろ開発者とプログラムの増加**につながってきた
- WYSIWYG、4GL、No-Code、LLM などさまざまな自動化技術が登場したが、実際には開発者の必要性を減らせなかった
- LLMベースのツールは過去の技術より信頼性と保守性が低く、ほとんどのチームで生産性の低下と品質悪化を招いている
- プログラミングの本質的な難しさはコードを書くことではなく、人間の曖昧な思考を論理へ変換する能力にあり、これは依然として人間の領域である
- したがってAIが開発者を代替する可能性は低く、むしろ熟練した開発者への需要はさらに高まる見通しである
繰り返される「プログラマーの終焉」サイクル
- 過去43年間にわたり、Visual Basic、Delphi、Executable UML、No-Code、Low-Code などさまざまな技術がプログラマーの必要性をなくすと主張されてきた
- 1970〜80年代には 4GL、5GL、それ以前には Fortran、COBOL、さらにさかのぼれば コンパイラ A-0 でさえ同じ予言の対象だった
- 初期の電子式コンピュータ COLOSSUS は物理的な配線でプログラムされており、その後の世代が「本物のプログラマーではない」と揶揄されることもあった
- しかし結果としてはプログラマーの数は減らず、むしろ増加しており、これは Jevons Paradox の代表例として言及される
LLMと過去の技術の違い
- 過去の技術は実際にソフトウェア生産速度を高め、信頼性も確保したが、LLMはほとんどのチームで逆効果を示している
- LLMはコード品質を下げ、保守を難しくし、「LOSE-LOSE」な状況を生み出す
- 同じプロンプトでも同じ結果を出せず、生成されたコードには人間の開発者による検証と修正が不可欠である
- AIが開発者を代替するという証拠はない。最近の人員削減は、パンデミック期の過剰採用、金利上昇、データセンター投資への集中など経済要因によるものだ
プログラミングの本質的な難題
- プログラミングの核心は、人間の曖昧な思考を論理的に精密な計算思考へ変換するプロセスにある
- これはパンチカードの時代から COBOL、Visual Basic、Python に至るまで変わらない難しさである
- 自然言語は本質的に曖昧で不正確であるため、英語やフランス語でプログラミングする時代は来ないという Dijkstra の予言が引用されている
- このような思考法を学ぶことは可能だが、誰もが楽しめたり上手にできたりする仕事ではなく、熟練人材の供給は常に不足している
AIの限界と持続可能性
- AGI(汎用人工知能) は依然として遠く、人間レベルの理解・推論・学習能力が必要である
- 大規模LLM は莫大なコストと損失を生み出しており、長期的には持続可能ではない
- 時間がたつと、モデルが学習した言語やライブラリのバージョン上の制約により、活用度が下がる可能性がある
- こうした理由から、超大規模LLMは「アポロ月探査」のような非経済的実験として残る可能性がある
未来の開発環境の展望
- 近い将来のソフトウェア開発は、小規模言語モデルを基盤とする補助ツールがプロトタイプ生成やコード自動補完などの補助的役割を担う形になると見込まれる
- しかし、重要な意思決定と品質確保は人間の開発者が主導し、Jevonsの法則により開発者需要はむしろ増加する可能性がある
- 企業は今から熟練開発者の採用と教育に投資すべきであり、これはAIの有無にかかわらず生産性と信頼性を高める中核戦略である
1件のコメント
Hacker Newsの意見
何年ものあいだ agent-LLM を扱ってきたが、実際のプログラミングではまったく役に立たなかった
複雑な低レベルライブラリの問題や 直感的でないバグ を解決できず、抽象化された層のロジックも理解できない
ただし、単純なウェブサイト構築のようにすでに何千回も繰り返されてきた ボイラープレート作業 には卓越していた。こうした単純作業では1日分の時間を節約できた
しかし、LLMが単純作業の領域を超えて複雑な問題を理解する段階に進む可能性は見えていない
低レベルのコーディングやレガシーバグの解決だけがプログラミングではない。LLMが解決したウェブサイト構築も、間違いなくプログラミングの一形態だ
大規模コードベースの理解、機能のブレインストーミング、実装上の ギャップ把握 などで膨大な時間を節約できた
完全な代替は不可能でも、エンジニアの強力な道具としての価値は明らかだ
だが、ほとんどの開発者はフレームワークやライブラリを 組み合わせる 仕事をしている。
電気自動車が大型貨物輸送には不向きでも一般の運転者には十分有用なように、LLMもそういう位置づけだ
数か月前までは同意していただろうが、今では技術がその境界を越えたように思える
私はERP分野で働いているが、エージェントが生産性を飛躍的に高めてくれる
サブスク料金が月500ドルに上がっても使い続けるだけの価値がある
AIがプログラマーの必要性を減らすという予測が現実になるのではないかと怖い
すでにAIが 設計、コードレビュー、バグ検出、プロジェクト計画 などで自分より優れていると感じる
自分はその過程を指揮する 指揮者 の役割をしているだけのようだ
昔なら20人でやっていた仕事を1人でこなしている気分で、恐ろしくもある
人間だけが長期計画と意思決定をうまく行える。私たちは 不安、誇り、感情 を持っており、それこそが本当の強みだ
AIは単なる単語の袋にすぎず、愛も持続性もない
基本的な能力さえあれば、人間のほうがはるかに優れていると思う
20人がやっていた仕事を1人でやっているのなら、その20人はもともと生産性が低かったのだろう
食洗機を回し続けることが重要だったが、AIコーディングエージェントもその機械と同じだ
私はプロンプトを入れ、結果を検査して整理する役割を担っている。結局、人の手はまだ必要だ
AIのおかげで20人がやっていた仕事を1人でできるなら、それは 生産性向上 であり、より大きな富を生み出す
今のLLMブームは大規模な Eliza効果 だと思う
関連する概念は ELIZA effect とWeizenbaumの著書 Computer Power and Human Reason で見られる
LLMは 影響力のある人たち(CEO、投資家) を感心させるよう進化してきたように思える
実際に専門家レベルである必要はなく、ただ「十分によく見える」レベルなら採用される
アメリカの開発者にとって本当の脅威は AIではなくアウトソーシング だ
私は移民で、ニューヨークの金融会社で働いている。社員の95%が外国出身で、新規採用の大半も H1Bビザ 保有者だ
Dijkstra が50年前にすでに言っていたように、人間の言語でプログラミングすることは不可能だ
自然言語は本質的に 曖昧で不正確 だからだ
「プロンプトが新しいソースコードだ」と主張する人たちは、まるで Excelでアプリを作る人たち のようだ
「Blood in the Machine」という本を読んで ラダイト運動 の歴史を知った
産業革命以前は家族単位で服を作っていたが、機械の登場によって 手工業産業が崩壊 した
今の開発者たちも同じ道を歩んでいるように見える
しかし、ソフトウェア開発においてコーディングは全工程の一部にすぎない
Toyota が職人を置き換えたように、LLMが保守まで自動化するなら開発者も同じ運命をたどるだろう
安い服があふれていても デザイナーと高級ブランド は残っている。ソフトウェアもそう変わるだろう
かつて Visual Basic や Delphi のようなWYSIWYGツールがプログラマーを置き換えると言われたが、結局そうはならなかった
AIも同じだ。脆く不安定なコード を生成することはできても、なお本物のプログラマーが安定化させる必要がある
1980年代にも政府と業界は 4GL に莫大な投資をしたが、結局失敗した
日本の MITI Fourth Generation Project も同様だった。当時の「ソフトウェア危機」は今のAIブームに似ている
この記事は AI礼賛記事 のように感じられる。最後に教育サービスを宣伝する部分が特にそうだった
それでも実際に自分の生産性が上がったのは事実なので、結局 開発者需要の減少 は避けられない気がする
むしろさまざまな意見を継ぎはぎした LLMが書いた文章 のように感じられた
開発コストが半分になれば、より多くの分野でソフトウェアが活用されるようになるだろう
Jevons paradox 参照
航空安全でいう スイスチーズモデル のように、LLMもソフトウェア開発の一層として見なせる
各層が完全でなくても互いの 欠陥を補完 して全体の品質を高めるという考え方だ
コード検証やテスト分析に知的に適用する段階ではない
だが、いつか適切なユースケースが現れると確信している
安全性を保証するには結局人間が全体を検査しなければならない
航空ソフトウェアの信頼性とLLMの不安定さは比べることすらできない