AI時代のプログラマの在り方
ChatGPT 4がリリースされてから、近い将来プログラマという職業はどうなってしまうのだろうと、と不安になったのですが、ようやく考え方が整理できたので書いてみたいと思います。
AIと過去のテクノロジーの違い
今までもディスラプティブなテクノロジーは自分の人生で何回か登場しています。そもそもパーソナルコンピュータが衝撃的でしたし、自分が大学生の時に体験したインターネットもそうでした。スマートフォンもかなりのものでした。
しかし、私はそれのどれも「脅威」は感じたことがありませんでした。なぜかというと、やりたいなら、それを自分がそれをやればよいので、そんなには困りません。ところが、今回のAIの場合は、たとえAIを自分がやったとしても、そんなに遠くないうちに自分はいらなくなるでしょう。モデルをトレインする人は必要かもしれませんが、たぶんそんなに多くの人は必要ありません。
そうでなければ、AIをインテグレーションする職は残ると思いますがそれがAIに置き換えられるのも時間の問題でしょう。
どういう想像をめぐらしてみても、「プログラマとしての自分」が不要になる未来しか見えません。それが5年後なのか10年後なのかもっと先なのかはわかりませんが、たぶんそうなるでしょう。
そのせいか、最近はあんなにたくさんツイッターで見かけた「駆け出しプログラマー」のタグを見なくなり、AIの専門家がたくさん発生しているようです。気持ちはわかります。
私はプログラミングが好きだ
実はAIも勉強したことがあってモデルのトレーニングとかもしたことがあるのですが、正直私は「プログラミング」のほうが100倍好きだと思いました。AIが問題ではなく、私の好みがそうなだけです。
すっごく頑張って英語勉強して、すっごく頑張ってコンサルからプログラマになれて、今の職場は本当に最高で、一生ここで働けたらいいのになと思うぐらい今の職が大好きです。将来はみんなに信頼されて、今の仕事で日本に拠点を作るとかしたいなと思っていました。
ところが、ここ数週間で世界が変わってしまったのです。あれだけ持ち上げられていたプログラマという職業は一夜にしてあまり世間的に魅力的な職業ではなくなったのかもしれません。本当にどうしたらいいのでしょうか?
AIの専門家の友達に話を聞く
シアトルエリアに住んでいるとテクノロジーをやっている人ばかりで、私の友人に、AIのガチ専門家でとてもナイスガイがいるので、彼に話を聞いてみました。専門家の話を聞くと、もしかすると、「いやいや、AIが発達するのはまだまだ先ですよ」とか言われるかもしれないし。
実際に話してみるとどうなったかというと、真逆でした。AIをやっている人なら今まさに花形と思ったのですが、本人たちはそうでもないらしく、「ChatGPTにやられて悔しい」という事で会議もお通夜のようだと聞きました。まさか、花形の人がそんなことになっているなんて想像もつきませんでした。彼の未来の予想を聞いてディスカッションしても、プログラマが不要になる未来、そして、AIのエンジニアもそんなに要らなくなる未来しかなさそうです。彼は「自分も役に立ちたい」と言っていたのが印象的でした。その日はいろいろ話ができて楽しくもありましたが自分たちの職業の未来に関してはお通夜のようでした。
どんな職業ならAIに食べられないだろう?
彼とディスカッションした中で、AIに食べられないものは、少なくともしばらくは身体的なもの、対人的なもの、創造的だったり、芸術などの分野だろうかという話をしていました。
例えば、レストランとかは、AIが自動で完璧なおいしい料理を作れたとしても、たぶん人は人がやっているレストランで料理を食べるでしょう。音楽も、例えばギターは人間が完璧でない部分が個性になります。AIはまるでStevie Ray Vaughan とか、ジミヘンがまるでそこにいるかのように演奏できるようになると思いますが、それは「過去の学習データ」があって成り立つので、新しい個性がでてきたら、それをAIが完璧に演奏できても、きっと人はオリジナルの演奏で完璧でないものを好むでしょう。
では、エンジニアリングは?そんなもの一切ありません。完璧であればあるほど良いので今のAIの進化をみていると、今はまだまだですが、早晩に人間は追い抜かれるでしょう。
プログラミングが好きな自分は何をしたらいいのか?
今すぐ失業というわけではないですが、自分は今後どうしていけばいいのでしょう。緩やかに、もしくは、急激に今の仕事は奪われていくでしょう。ギターを練習しまくってギタリストになるのも悪くはないですが、自分は職業としてプログラミングが最高なのでいくら考えても答えは出ません。ある時ふと思いました。もう考えるのはやめよう。考えても仕方ない。今はAIがアシストしてくれるプログラミングで生産性を上げて、それをエンジョイしよう。
と思うようになりました。いつなくなるか、とか未来はわからないし、考えても無駄なので考えるのをやめました。
アメリカの友人たちの反応
ところが、あるところに、この不安な気持ちを解決する鍵がありました。私のレッドモンドにある職場でもそうですし、アメリカにいる友人たちは誰も不安そうな顔をしていません。日本人の友達は多かれ少なかれどうしようという雰囲気だったのですが、彼らは不安はないのでしょうか?
自分が今をエンジョイするという考えに至って、それをツイートしたときに、友達のジェフさんが次のようなツイートをリプライしてくれました。
私のツイートに対して彼はこう言ってくれました。
そして、クリスもこんなことを言っていました。自分が20だったら、すべてを投げ出してAIに人生をささげるのに!自分の専門分野のすべてをなくしてしまうことを恐れてしまうし、抵抗がある。どうしたらいいかわからない。という人のコメントに対して彼は次のように言いました。
これを読んだときに救われた気分になりました。
自分が不安だったのは将来が見えなかったから
クリスの言葉を見て、自分が気づいたのは、不安なのは、暗い将来しか見えなかったし、自分がせっかく努力と時間を重ねた専門性が役に立たなくなる不安があったからです。
それがいつ起こるかはわかりませんが、起こるのは確実です。ただ、自分はプログラミングに携わってきたので、今まで自分たちが自動化をして奪ってきたものが、自分がそうなる番なので、恨みとかはありません。
すぐに仕事は奪われないのですが、いつかはわかりませんし、どう遷移するのかも誰にもわかりません。だけど、自分が一生懸命取り組んで専門性を積み重ねていれば、たぶん時がたてばどうするのが良いか、どうしたら自分が役立てるのかがわかるでしょう。だから、今役に立てる好きなことをやって、世界が変わっていく様子を眺めながら、わかったときに、それを実施すればよいだけです。
専門性の考え方
今回の件でふと思ったのが、日本にいるときと、アメリカにいるときの「専門性」の感覚の違いです。日本だと、今回のように新しいものが出たときに、一部の人がすぐに試したりとかするのは日本の人のほうがずっと早い感覚があります。こちらの人はそうでもありません。ChatGPT自体を作った人もどうやったら作れたのか?と聞かれて「7年間の研究の成果」と言っていました。
エンジニアリングは、本当に地道な積み重ねです。小さなことを積み重ねて、積み重ねて、強くなっていくので、ショートカットなどありませんし、絶対的に時間が掛かります。だから、みんな「専門性を高める」という事に価値を感じている節があり、スピードは思ったより重視されません。日本のほうがよっぽどスピードに重点を置いている気がします。
しかし、エンジニアリングにおいては、結局そういう姿勢のほうが良いものが作れるのだと思います。だから、アメリカは今でもコンピュータサイエンスで一番なのだと思います。
最後に一言
だから、今まで地道に小さな努力を積み重ねてきて専門性を高めているソフトウェアエンジニアの皆さんは、何も恐れることはありません。その専門性こそが武器になります。私はクラウドの分散システムでスケーリングを担当しています。そんなロジックは世界のどこにも落ちていませんので、ChatGPTも、Copilotもろくな回答をくれません。皆さんがやっている分野だって、いろんな部分できっと、彼らが回答できない部分があるはずです。それがある間に、自分たちもAIを活用して生産性を上げながら、大好きなコーディングを楽しみましょう!そして、最後に先ほどのクリスがあのツイートの数日後にこんなものをひそかに作っていました。彼の専門である、サーバーレスのプラグインで、OpenAIと連携する Azure Functions の拡張機能です。有言実行カッコいい!
GitHub - cgillum/azure-functions-openai-extension: Azure Functions bindings for OpenAI
ああ、かっこいい、わしみたいにごちゃごちゃ悩んでいる暇があれば、コードを書けよって言われてみるみたいに感じました。
わしらプログラマやから、ごちゃごちゃ考えてんとコード書いて楽しもうや!そうしたら、きっと時代が自分たちに次の楽しいものを教えてくれるから。
この記事が気に入ったらサポートをしてみませんか?