AIがコードを書くのでプログラマ(or エンジニア)が不要になるという話が出てくるようになりましたね。
けど、プログラマ不要論って、プログラミング言語が現れて以来、10年に1度くらいのペースで表れている話です。10年前の2015年あたりにはちょっと途切れていたというか限定的だったので、久しぶりに現れたプログラマ不要論にみんなビックリ、という状況なんじゃないでしょうか。
ここで「プログラミング言語が現れて以来」と書きましたが、最初のプログラマ不要論は、1960年ごろFORTRAN、COBOLという最初期のプログラミング言語が現れたときに言われたものです。1956年FORTRAN、1960年COBOLという感じで仕様書やマニュアルが書かれたみたいですね。ちなみにLISPが1960年3月、COBOLは1960年4月という感じらしい。
それ以前は直接数値コードを書いていたり、さすがにそれは大変ということでニーモニックができたり、とにかく機械コードを直接指定していたわけです。
このときのプログラマの仕事というのは、ハードウェアを理解して処理を機械に乗せる、というものでした。
あ、ニーモニックが最初のプログラミング言語ということになるので、FORTRAN、LISP、COBOLは最初期の「高級言語」ということになりますね。
そして、FORTRANで「計算が普通に数式で書ける!」と研究者を喜ばせたのです。つまりプログラマじゃない研究者にもコンピュータで計算ができるというわけですね。
そんな中、最も「プログラマ不要論」を呼び起こしたのはCOBOLだと考えられます。
当時、コンピュータメーカーが独自の言語を作っていましたが、やはりメーカーによって言語が違うのは不便なので、そういったメーカーで共通の言語としてCOmmon Business Oriented Language、つまりCOBOLが生まれたわけです。なので必然的に影響が大きくなります。というかこの経緯、Javaっぽい。
COBOLは英語に近い文法を採用しました。また、このころプログラミング言語はオートコーダーと呼ばれていたようです。自動的にコードを書いてくれるツールですね。
ということで、英語のような命令を書けば自動的にコードを書いてくれるので、事務員でもプログラムが書けるようになり、プログラマの専門性が失われ、プログラマとしての職はなくなる、というプログラマ不要論が出てきました。
ほら、なんか最近きいた話に近くなってきた。
しかし結果としては、COBOLによってシステム開発の負担が下がり、コンピュータシステムが普及することになり、COBOLプログラマの需要は伸びたわけですね。 COBOLによってプログラマの仕事が、機械を理解して問題が機械で解決できるようにすることから、ビジネスを理解してコードに落とし込むという作業になったわけです。
AI時代も同様のことが言えるはずです。 AIは要件を自然言語で書けば自動的にコードを書いてくれるので、だれでもプログラムを書いてくれます。しかしながら、要件を自然言語に書き起こすというのは、コンピュータの制約を理解していないとできないことです。そしてそれを論理的に破綻しないよう構成する必要があります。また、セキュリティやユーザビリティ、並列性、信頼性など非機能的な要件はちゃんと勉強しないと対応できません。
ということで、COBOLによってプログラマの仕事が機械の理解からビジネスの理解に、抽象度の高い方向に移ったように、AIによってもプログラマの仕事は要件やコンピュータ上でおきる現象の理解へと、抽象度の高い方向に移るのだと思います。
こちらも参考に AIでプログラマ不要になるというのは、プログラミング言語構文わかればプログラム組めるという誤解に基づくのでは - きしだのHatena
