エンジニアでいかに稼ぐか?学校や会社では知ることができなった体験、経験を綴ります

【91】AIが最初に職を奪うのはプログラマー

»

こんにちは手塚規雄です。

Google DeepMind社が開発したAlphaGOがトップクラスのプロ棋士であるイ・セドル9段に4勝1敗と勝ち越したニュースは多くの人に衝撃を与えました。まだまだ人間にも勝つ可能性は残されている状況ですが、逆に言えば本当にトップクラスのプロ棋士にしか望みがなく、大半の人間にはまったく歯がたたない状況までAIは進化したともいえます。

AIが人間に勝つというニュースが流れると、同時にAIが人間の仕事を奪うという話がセットで必ずされます。ところで職が奪われるのはどんな職業だと思いますか?

 

実はプログラマーほどAIに奪われやすい立場は他にない

AIを開発するプログラマーがなぜ自分の仕事を奪われてしまうのか?その理由はこの3つです。

1:(構造化)プログラミングは「順次処理」「分岐」「繰り返し」しかないので単純。人間にソースコードを読ませない前提の動作優先なら更に簡単になります。

2:IT業界でもっとも高いのは人件費。AIが行う事で人件費が削減できれば、ビジネスとしての旨味も大きい。AIなら不眠不休で働き、病気にもなりません。

3:プログラミングの自動化、ソースの自動生成も今では当たり前の話なので、AIがプログラミング開発することは他業界にくらべて心理的な抵抗は少ないと思える。

 

他の業界の人間がAIに仕事を奪われるよりも、プログラマーのほうが奪いやすい土壌が出来上がっているとも言えます。他の業界に抵抗されながら奪うよりも、AIプログラミングの確立のほうが比較的たやすく、AIの進歩も早まる可能性が高いと私は思います。

 

法律の問題も少ないように思える

AIや機械が仕事を奪うという話題で大きいのは自動車業界です。自動運転技術はほぼ完成されているというところまで来ています。しかし事故時の責任の所在など法律的な問題がまだまだ未解決であり、自動運転の恩恵を受けるのはもうちょっと先のように感じています。

しかしプログラミングの場合はどうなるのか?システムを作るのが別にAIであろうが人間であろうが作成責任者はそのシステム開発を受託した人・会社になるのであまり問題ではありません。もちろんAIが営業して企画して開発して運用までやるようになったら、責任の所在の話になります。そこまでならずともAIの使用権の保持者がAIを作ってシステム開発をしたら責任者は保持者になるでしょう、多分。(もちろんこれについては、弁護士などに聞いているわけではないので正確には違うのかもしれません)

 

AI技術の進歩が早過ぎる

去年参加した電王トーナメントにて将棋ソフト開発者と話していたのですが、今後は囲碁ソフト開発が注目されていくだろうという話題が当然ありました。そしてプロを抜くのは早くても数年後だろうというのが共通認識でした。でも実際にはその会話の半年後に今回の大事件になった訳です。それまでは今週末の19日20日にある第9回UEC杯コンピュータ囲碁大会でFacebookのAIチームがどれほどのソフトを作ってくるのかが一番の話題だったんですけどね…。

囲碁ソフト開発者も驚くほどのスピード開発で驚異的な強さにしてしまったGoogleの凄さもさることながら、技術の進歩により数年から10年先を今に変えてしまった。私自身、今回の対局でAlphaGOがひょっとしたら1勝ぐらいするかもと思っていた人間ですが、実際に勝たれると物凄くショックを受けました。囲碁のプロ棋士には非常にショッキングな事件でしたが、影でもっとショックを受けていたのは囲碁ソフト開発者ではなかったのではないでしょうか。彼らもトップクラスのプロ棋士を倒すのは数年後だと思って開発していたと思いますから。

囲碁ソフトを例にしても機械学習、ディープラーニングの進歩の速さは想像つかない域に達している感じがしています。

 

人間がプログラミングをしないシステム開発はいつ現実になる?

これが何年後になるかわかりませんが、意外と早く来そうで嫌です。10年後にはプログラマーというのは伝統工芸の職人と同じような職人技をもつ職業。プログラミングはAIがやるのが普通。そんな世の中になっている。私はこれを否定出来ません。そんなことにはならないと笑う人もいるかもしれませんし、実際には10年後になるまでわかりません。

実際には何年後かわかりませんが、仮にAIがプログラミングする世の中になったらシステム開発はどうなるのか?

そうなったら今のIT業界は激変していることでしょう。AIを持たなければシステム開発できない。企業規模を問わず多くのソフトウエア開発会社は駆逐されるでしょう。せいぜい人間が行うのは、システム開発の企画、プロジェクト管理、要件設計ぐらい。プログラミングやテストはAIが行うor完全な自動化。そんな未来になったら、私の仕事は残っていませんのでプログラマー廃業は間違いありません。AIに仕事が奪われた人間になります。

 

そんな危機感を覚えて、何かしらスキルを身につけるように今から努力すれば間に合うと思います。さて、これを下らない妄想と思い現状維持のまま生きるか、それとも妄想から危機感を覚え、何かしらスキルを身につけるか、それともAI開発者の道を選ぶ。色々な道がありますが、それを選ぶのは自分自身です。

私個人の意見として、AIはプログラマーの仕事を奪わない、または自分が生きている間はないという考えだけはやめておいたほうがいいとは思います。

 

------------------------------------------------------------------------------

コメント欄にて書いて欲しいコラムの題材をいつでも受け付けております。ただしその内容に応えられるかどうかはわかりません。基本的にコメント欄には私自身がコメントしないのですが、題材リクエストに関してはレスをすることもありますので、よろしくお願いします。

Comment(19)

コメント

taro

予想が当たるならAI開発者の職もなくなるでしょう。
AIがAIを作ればいいだけです。
対応策はほとんどなくて農業でもやるか、ソフト変更や保守をやるしかないです。
ただAIが致命的バグを作り込んで直せない時、プログラマが絶滅していたら地獄になりそうですね。
信頼性が低くていいソフトじゃないと任せる気は起きないです。

ハリコフ

大きな目線で言うと、少しずつ自動化の流れに沿っていくというのは同意です。

ただ、この問題を突き詰めると、なぜ新規のシステム開発があるのかってことに繋がると思います。例えば、基幹システムであれば優秀なパッケージがいくつもある、それなのに新規に開発したり、カスタマイズを必要とするのかというと、自分たちの業務を変えたくないという意図あるのが一因かと。

自動化ってことは、何らかのパラメータを入力するフェイズがあると思いますが、「自分たちの業務」っていうのを書ききれるのか・・・
(書く必要があるのかってのは、別の話)

プログラマーの主要な仕事が、そういう嫌らしい部分をフォローする仕事になっていきそうな気がします(いや、今もそうか)。

非現実性AR

ぶっちゃけコーダーなら20年前から将来絶滅するぞ、と言われ続けてて実際そうなりつつあるわけですが、今のプログラマーはSEニアリーイコールなので当てはまらないのと違いますか。

今のディープラーニングは範囲を限定しないと使えないらしいので、そもそも要件だの範囲だのを決めなければならないSEには当分適用できない気がします。

まあどこかの天才様がある日突然ブレイクスルーかます可能性もありますが、今回の囲碁ソフトにしても下積みといいますか予兆はあったわけで、今のところSE分野に適用できそうな芽は聞かないような。

まあ、枕高くしてるとちゃぶ台返し食らうぞくらいの気構えはあっても損はないでしょうが。必要以上に恐れることもないんじゃないでしょうか。

Buzzsaw

仕事がAIにとってかわられたとして、それでどうなるのかがはっきりしない間は
なんとも言えない問題ですね。雇用がなくなって世の中のリソースが一部の人間
だけに集中し再分配の仕組みも無いのであれば嫌な世の中ですが、それはそれで
実現も維持も難しそうに思います。
仮に働かなくても生きていけるお花畑な世界になったとして、それが良いのか
悪いのかは人によって異なってくるので、やっぱり何とも言えません。

とはいえ、ちょっぴり不安なのは事実ですけどね。

山無駄

AIにとって代わられるプログラマとは、どういったプログラマを想定しているか
によって実現性は変わってくるのではないでしょうか。
日本ではプログラマの地位は低くて、SEの手下の様な扱いを受けている感はあり
ますが欧米では高度専門職として、高学歴の技術者が高い賃金で働いていると聞
きます。

アジャイルなどの出現に見られるように、昔のような設計書に基づいてコードを
書いて行くというよりは、プログラマ自身が設計しコードを書き、試してみてフ
ィードバックするというやり方が普及しつつあります。それは作ろうとしている
ソフトウェアが高度化し、プログラマに求められる技術が変わりつつあるのだと
思います。

そういった意味では、著者が前提として書かれているようAIにとって変わられる
プログラマは消えてゆくかもしれませんが、とって変わるのはAIというより、今
市場から求めらている高度な技術を持ったプログラマだと思います。

ある人が言っていました。ユーザは開発されたシステムを使うことによって効率
化されるが、システムを開発する現場はシステム化できないのでいつまでたって
もごちゃごちゃするんだろうね。一理あると思います。

もしプログラマにとって代わるAIが、プログラミングされない全く新しい概念の
物であるならプログラマにとって代われるかもしれません。しかし、AI自身がプ
ログラムされたものであるならば、その可能性は低いと思います。
なぜなら、プログラムとは過去の経験則を元に今を自動化しているものであり、
プログラミングというのは今の経験を元に未来を想定しているものなのですか
ら。

まりも

理由の三つは昔からある話。

三つめなどはとくに有名で、
60年前から言われているし、
30年前の有名な論文「銀の弾丸などない」にも書かれ、
そして反論されている。

ここ数十年変わらない話で、
これでプログラマーの職が危うくなるなら、
別にAIの登場を待たずとも、
すでに危うくなっているだろう。

また一つ目なんかは話が単純化されすぎていて、
AI批判にも使えてしまう。
要素を分類したらたったの三つになるから単純、ということになるなら、
その三つからつくられたAIに人間が負けるはずがない、ということも言える。
単純な要素の組み合わせで複雑なものができるからこそ、AIはここまで発展した。

ということで、あげられた理由は説得力がなさすぎだと思う。


とはいえ、だからと言ってプログラマーがAIに対抗しやすい理由もないので、
他の職業と同程度には危ないとは思うが。

元研究者

コンピュータとAIとディープラーニングとシンギュラリティの話をごっちゃ混ぜにしていますね。
そもそも研究者からみれば単なるディープラーニングをAI[人工知能]と言い切ってしまうことにかなり抵抗があります。

ディープラーニングや現在の機械学習が進化しプログラマの仕事を奪ったとしても「AI」が職を奪ったと認識する人がその瞬間にどれほどいるか…。(少なくとも今の研究者ですらそれを人工知能が奪ったとは言わないでしょう)

実際問題としてその瞬間になればそれは単にコンピュータが仕事を奪ったと思う人が大半かと。
そしてコンピュータがこれまでに奪った仕事は無数にあります。
プログラマ関連ではコンパイラが多かれ少なかれ職を奪ったことでしょう。しかもコンパイラは言語を理解します、人工知能といっても差し支えないでしょう。
しかし今どきこれを人工知能とは呼ばないかと思います。(今でもコンパイラが賢いと評価し、知的なモノであるという認識の名残は感じられます)

内容の趣旨は理解しますが、タイトルに「んっ?」と思ったのでコメントしました。(あと現在の機械学習とディープラーニングがそんなに崇められているのが甚だ不本意だったためです)

名前

正直な話をすると、そうなれば良いなぁって思う
疲れによる品質の低下は無くなるだろうし、俺ならやれる、だなんてエゴイズムは、エンドユーザーさんには関係の無い話だしw

つづき

それでも、それが為せるAIが出来た場合、全ての仕事をこなせるんじゃないかなw

ueshiman

一、プログラマーです。
正直、自動化の模索はしているけど定型業務じゃないし。
接続するハードや、システムも、日進月歩。
経験や、直感で何とかできるところではないから、機械学習では成立しないかもしれません。
業界を挙げてナレッジの共有ができれば何とかなるのですが。
まあ、試行錯誤は機械のほうが早くて正確なのですが、
有償のサービスが相手だと金銭的に大変なことになるかも?
脈絡ないけど。
業務系、特に基幹系ならある程度いけるような気もしますが。
SAPや、セールスフォースなどの基本的な設定を、エンドユーザーとの音声会話でで解決してくれるようなものがまず、できるか、できないか。
むしろ、機械に奪ってもらいたいです。
Unityみたいなゲーム系のミドルウェアの機能追加とか、Lunuxのメンテナンスが自動化できるようになるなら、たぶん、プログラマーの仕事は激減するのでしょう。

現役

プログラマですが、AIがやってくれるんなら、ありがたく仕事を差し上げます。10年前からずっと、名ばかりのIT企業や技術も知らない口先だけのSEが、実際のプログラマを苦しめてますんで、そんな方々よりも、ペッパーくん希望です。

フリーのエンジニア

むしろプログラマが優位な時代になると思うな。

AIが人格を持って人間の様に振る舞うとかそういう話なら別だけども、あくまでも人間のやってる仕事を文句を言わずにこなしてくれる便利な存在だとすれば、それを統べることができるプログラマの方が一般の人より優位でしょ。

世の中の仕事の大半は単純作業なんだから、わざわざプログラマの代替を考える前にその他の仕事の代替を考える。そうなったら逆にプログラマの需要は増えると想うし、プログラマが仕事を奪われるのは最後の最後だと思う。

最近はAIが云々とかで食傷気味なんだけども、表面的にAIが云々〜言う世間の風潮はほっといて、プログラマからしてみればあくまでも一つの技術なんだから、その技術を扱う立場として常に冷静な目で世の中を見るというスタンスは崩さないようにしないといけないと思う。いちいち踊らされすぎ。

プログラマさん

AIがプログラマの職を奪うとき、その他の多くの職をも奪っていることでしょう

おもしろ

フリーのプログラマが既存のAIを自分で改良して高給を取る世界を想像しています。
より大規模はシステムを正確に構築することができれば給料半端ないです。

あんこう

チケット管理ツールや議事録から設計書を生成したり、問題点をピックアップしてくれるAIが欲しい。

プラグラマ

AIを細かく制御するためにAIプログラマーは必要だと思います。

匿名

だからAIを制御するAIができるでしょ。

でん

「最初に職を奪う」というと、様々な職業を分析しなきゃなので困難ですが。
単純に通訳、翻訳は非常にやばいのではないかと。


プログラマは両面あって、
・ごりごりロジックを書くことは減る > 減る
・AIの活用によりITが活用される > 増える
・AIの万能性は想像以上にしても、使いこなす人材は限られる
 教育してもいつの時代でも、誰でも使いこなせるものではない
 結局、既存の開発方式は残る > 減らない


トータルで、むしろ増えると思います。
現在実現しているAIは、個別用途ごとに最適化が必要であって
その作業は高度な専門スキルが必要です。
一般的職業プログラマを駆逐するだけの、
AI活用型高度プログラマは存在しません。
またAIをつくるAIも発明されていません。

匿名

何にせよ、より複雑化して専門分野についていけるITの専門家は激減するわけだ。

コメントを投稿する