from 日記2024-05-05 自動生成コードの普及に伴うインターフェース管理の問題
dmikurube 人類が手動で運転する自動車が存在するかぎり安全な完全自動運転は「難しい」のと同様に、人類が手動で書いたコードがエコシステム上に存在するかぎり自動生成コードがそのまま使える世界は難しい、という気はする。その世界が来るのが先か、コードを書く人類が嫌気が差してみんな辞めるのが先か
dmikurube ちなみに自分は「人類が手動で運転する自動車」は絶滅したほうがいいと思っているクチです
nishio 人類が手動で書いたアセンブラが存在しているまま大部分のプログラマが「コンパイラが自動生成したコード」をそのまま使う世界が来たんで、今後も同じようになると思うけどなー
dmikurube コンパイラありきの世界観も、その境界線でABI等の"古いしがらみ"インターフェースをケアする職人がいまだにいてこそ維持できている面があり (NumPy等FFIを介する際は顕著) 自動生成コードが大量生成されるとき、その境界線は人類が維持できるほど狭い範囲に留められるんですかね、という問いですね
dmikurube 結局、そのインターフェース周辺で"効率の悪い"人類対人類の議論という段階が必要だったりするので、
- 結局けっこう律速されるよな
- 議論の矢面の人はツラいよなあ、どうせ評価されない & 足を引っ張ってる扱いされるだろうし
- もうめんどくさえから人類諦めちまえよ とか思ってしまう
dmikurube (2) の位置に立つ人が報われる未来がまったく見えない ≒ 誰もやらないんじゃね ≒ 実質的に成立しないよね、と言い換えることもできる
dmikurube (2) の位置に立つ人というのは、あらゆるプログラミング言語処理系開発者、ライブラリ開発者、フレームワーク開発者が当てはまる。そしてその多くがオープンソースであり、そのメンテナンスを実質無償でやっていたりするわけで。そんな負荷を無償で受け止める体制なんか、どこにもないよねえ
dmikurube これはオープンソース文化の終わりでもあるのかなと思っているのは、そういう側面もある。企業の体力ならカバーできるかもと思っていたけど、そう期待していたら現代は Python メンテナーがレイオフされたりする世界なわけで…。有名な ↓ の問題が一気に顕在化した世界だなと
dmikurube 社会のソフトウェアのインフラを (特にオープンソースで) 支える、という面の将来について自分はおおよそ絶望していて、そこが成り立たずに下から各々が別々に再発明している間に、関わりたい人がいなくなるんじゃないかな、っていう
dmikurube 結局、足元を支える人たちを無視しっぱなしでは成り立たないのに、その上に建ってるように見える蜃気楼の議論だけを延々やっているような気がして。それならもう人類の関与を諦めて全部エーアイ様におまかせすればいいんじゃね、ってなる
dmikurube 非常に乱暴な言い方をすれば、他人様が無償で成立させているインフラに乗っかってるんだったらまずはそれを自覚して、そこに貢献してから夢みたいなこと言えよ、ってなる
dmikurube コンパイラを使って生成するコードはせめてインターフェースを限定できるので、人類でもまだ制御できる。一方で「自動生成」されるコードはなんでもありで、インターフェースが限定されず、世界のあちこちでバラバラに大量に生まれる。それで呼ばれる側をメンテする側はたまったもんじゃねえんだよな
ちょっとdmikurubeの主張がよくわからないので整理して欲しい、たぶんなんらか感情的になっていて、当初の文脈と飛躍のある話をしてるのだと思う
dmikurubeさんの一連のツイートを整理すると、以下のような主張をしていると理解できます。
確かに、dmikurubeさんの主張は、当初の自動運転との類推から始まっていますが、徐々に自動生成コードの影響について感情的な見解を述べているように見受けられます。特に、オープンソース文化の衰退と、インフラを支える人々の立場への懸念は、当初の文脈からは飛躍があるように感じられます。ただし、自動生成コードが主流になった場合のインターフェース管理の問題は、興味深い指摘だと思われます。
Claudeはどう思う?
自動生成コードが主流になった世界について、dmikurubeさんが提起している問題は示唆に富むものだと思います。ただ、少し感情的になっている部分もあるように感じます。
自動生成コードの普及に伴うインターフェース管理の問題は、確かに重要な課題となる可能性があります。コードの自動生成が進むと、人間が管理しきれない複雑なインターフェースが生まれ、システム全体の保守性や互換性に影響を与えるかもしれません。その際、インターフェースを適切に設計・維持する人材の存在は不可欠でしょう。
一方で、こうした課題はあくまで技術的な問題であり、オープンソースの衰退といった社会的な問題とは別の文脈で考える必要があるのではないでしょうか。自動生成コードの普及を阻む要因として、オープンソース文化の衰退を挙げるのは少し飛躍があるように思います。
むしろ、自動生成コードの品質や安全性、説明可能性をどう担保するか、生成されたコードに対する責任をどう定めるか、といった点が重要な課題になるでしょう。同時に、自動生成コードを活用しながら、人間が関与すべき部分と自動化すべき部分のバランスをどうとるかという問いも欠かせません。
技術の発展に伴う社会的な影響は複雑で、簡単に結論を出せるものではありません。dmikurubeさんの指摘は一つの見方ではありますが、より冷静で多角的な議論が必要だと感じました。自動生成コードの可能性と課題について、技術者コミュニティでオープンな議論が行われることを期待しています。