2025年の崖は今も続いてる
コンピュータと云うのは、性能の良し悪し、古い新しいに関わらず2進数で命じられた処理を行ってます。2進数と云うのは普段私たちが使う10進数と違い、「0」と「1」の2つの数字だけで数を表現する方法で、数が「2」になる瞬間に桁が上がります。電気のON/OFFで処理を行うコンピュータにとって最も扱いやすいのですね。物理的に云うと、電圧が「無し=0」、「有り=1」と云うことです。ここで云う電圧とは例えば「5V」と云った特定の電圧で、中途の2Vとか3Vは存在しません。コンピュータが理解できる2進数のことを「機械語」と呼びます。この機械語をひとつひとつコンピュータが読み込んでは、処理していくのですが、現在のCPU(コンピュータの頭脳)はこれを64個並列に、しかも一昔前では考えられないスピードでおこなうため、どんどん性能があがっていくのです。ところが、この機械語は述べましたように「0」と「1」の組み合わせですから、とても人間が目で見て理解できるものではありません。理解できないものを開発できるワケがない。それで「コンピュータ言語」と云うものが開発されました。これは人間が理解しやすい言語で、これで書いたプログラムをコンピュータに翻訳させて2進数に置き換えるのです。しかし、いくらコンピュータに翻訳させると云っても、プログラミングする人が勝手な構文をそれぞれ書いたのではコンピュータの翻訳が書いた人によって違ってきます。それで「コンピュータ言語」は、一定のルールに従った文字列の組み合わせで表現されるのですね。文字列は基本的に英文が使われますが、英語の単語そのものとも異なります。で、このコンピュータ言語ってのは、使う場面によって幾種類もあるのですね。種類によって構文も使う単語も異なります。AIだってコンピュータのプラグラムのひとつですから、と~ぜんコンピュータ言語で書かれてます。AIでは「Python(パイソン)」と呼ばれるコンピュータ言語を使ってます。この楽天ブログは「CSS」と云うWeb ページのデザインを定義する言語の中で、「HTML」と云うWeb ページの骨組みを作る言語で書かれたものを、「JavaScript(ジャバスクリプト)」と云うWeb サイトに「動き」や「対話的な機能」を加える言語を通してアップロードされてます。他にはデータベースから必要なデータを検索・抽出・操作するための言語として「SQL」と云うのがあったり、処理速度が非常に速く、家電やOSなどハードウェアに近い制御を得意とする「C」や「C++」と云う言語、古くは科学技術計算に向いたプログラミング言語「Fortran(フォートラン)」や金額計算など事務処理用に広く使われていた「COBOL(コボル)」なんて言語もよく使われてました。このようにプログラミング言語ひとつでオールマィティではなく、使う場面によって得手不得手があるのですね。私もいっときは「C++」や「JavaScript」を勉強しましたが、使う場面が無くなってきれいさっぱり忘れてしまいました。今では「HTML」と「CSS」をかろうじて覚えてるだけです。こうした多種多様なプログラミング言語の中で、「COBOL(コボル)」が開発されたのは1960年と非常に古い言語です。1954年に開発された「Fortran」に次ぐ古さでしょう。しかしCOBOLは、金額や利息など1円の狂いも許されない金融・会計システムに特化しており、小数点以下の計算を誤差なく処理できるのです。そのため銀行の勘定系システムやクレジットカードの決済処理、官公庁では年金、税務、住民情報などのシステム、一般企業では給与計算や人事管理、受発注・在庫管理などの基幹システムなど幅広く使われた言語なんですね。私が長年勤めてた会社の大型コンピュータも、このCOBOLが稼働してました。ここで2025年、イーロン・マスクがトランプと仲違いする前、彼が率いて連邦政府の無駄な支出や過剰な規制の削減に取り組んだ政府機関「DOGE(政府効率化省)」のことについて。アメリカの社会保障局と云うのは年金の支払いや社会保障番号の管理をしている機関で、ここで稼働してるコンピュータ・システムが支えてるのは6,500万人を超える受給者の年金です。そして、この社会保障局のシステムは6,000万行の全て「COBOL」で書かれてました。これをイーロン・マスクは、生成AIを使って、この古いCOBOLのコードを数ヶ月で新しい言語に書き換える作業を命じたのですね。AIは古い言語を読み取って、新しい言語に変換できるからです。結果は...みごとに失敗しました。確かにAIはコードが読めました。しかし結果は何度テストしても、期待したコードは生成されなかった。では何が壁になってるのか?原因はふたつです。ひとつはAIが勝手に古いコードの一部を省略してしまうこともうひとつは同じコードを入力しても、1回目と2回目で違うコードを排出する「ゆらぎ」の問題。なまじ、推論を勝手にするAIだから起こりうる問題だったのです。これが0(ゼロ)からAIにシステムを作らせてれば、こんなことは起こらなかったのですが、それでは仕様を決めるのに何十年の歳月が必要になります。膨大なCOBOLプログラムとそれを処理するデータが、企業や政府機関に長年開発し続けられ今なを稼働しています。メインフレームが世界に1万サイト以上あって、導入から長期間が経過し、技術の老朽化や度重なる改修によって複雑化・肥大化した旧型のレガシーシステムがあります。COBOLは全プログラム約3,100億行のうち約65%の約2,000億行あって、今なを毎年約50億行が増えているのです。ここに日本固有の問題が出てきます。2019年に日本のIT国家戦略を技術面・人材面から支える経済産業省所管の独立行政法人「情報処理推進機構」は国家試験の基本情報技術者試験から「COBOL」を外してしまいました。現場ではまだ必要とされる言語を国が「もう勉強しなくていい」と判断してしまったのです。そうして若手の技術者は誰もCOBOLを学ぶことが無くなった。まだまだ現場では必須の知識が若い世代に受け継がれなくなっていったのです。これこそ現場を顧みない役人の悪癖の最たるものなんですね。IT業界では、経産省が警鐘を鳴らす「2025年の崖」問題がありましたし、それは今も継続してます。多くの企業で老朽化・複雑化したレガシーシステムが残り続けることで、デジタルトランスフォーメーションが進まず、2025年以降に最大で年間12兆円の経済損失が生じる可能性があると云うことです。ところが、この問題はひとり日本だけの問題で、他の国では声高に云われてないんですね。フィリピンのマニラにあるアイルランドに本拠を置く世界最大級の総合コンサルティング企業「アクセンチュア」1社だけで、1,000人を超えるCOBOL専門家が在籍してます。世界的にCOBOLプログラマーは減少しているのは事実ですが、技術者の減少と裏腹にシステムの維持・改修・移行の需要はますます高まっており、希少価値から高賃金で採用されてるケースが多いです。そんなことで海外は言語の新しい古いに関わらず、必要な技術者を育て続け、日本だけが人材のパイプラインを枯らしてしまったのです。京都市は30年間稼働し続けてたCOBOLによる基幹システムを2014年からAI使って刷新しようとしました。その費用80億円以上、そして2度失敗。日経クロステックの報道では最終的な損失は最大99億円に登ると報じてます。京都市民ひとりあたり約7,000円が消え去った計算です。日本情報システム・ユーザー協会の調査では、企業のIT予算の77.5%が、既存システムの維持・管理に使われてました。100万円の予算があっても、新しいことに使えるのは22万円だけです。日本でCOBOLを扱える技術者の平均年齢は50代後半とされています。毎年、約3,000人規模で減っていってるのです。10年で30,000人、これは地方の小さな市がひとつ消えるくらいの人数です。それもこれも情報処理推進機構が国家試験から「COBOL」を外してしまったからです。