プログラミング言語の人気ランキングに意外な変化?AI時代に注目される「古い言語」の秘密
こんにちは、AI技術をわかりやすく解説するブログライターのジョンです!
皆さんは「プログラミング言語」に、音楽のヒットチャートのような人気ランキングがあるのをご存知でしたか?どの言語が今一番エンジニアに使われているか、注目されているかを示す指標がいくつかあるんです。
その中でも特に有名な「TIOBEインデックス」というランキングの最新版が発表されたのですが、これがなかなか興味深い結果だったので、今日はその内容を皆さんと一緒に見ていきたいと思います。AI全盛のこの時代に、なんと「古い言語」が注目を集めているようなんです!
トップ層は安泰、でもランキング中盤でドラマが!
まず、ランキングのトップに君臨する顔ぶれは、ここ数年あまり変わっていません。AI開発で大人気のPython(パイソン)を筆頭に、C++(シープラスプラス)やJava(ジャバ)といった、いわゆる「王道」の言語たちががっちりと上位をキープしています。ここは「やっぱりそうだよね」と納得の結果です。
しかし、本当に面白いのはランキングの10位前後で起きている静かな戦いです。なんと、何十年も前に生まれた「ベテラン言語」たちが、最近話題の新しい言語たちを抑えて、しぶとく上位にランクインしているんです。
例えば、最近よく耳にするRust(ラスト)やKotlin(コトリン)といった、モダンで高性能な「若手言語」たちが、なかなかこのベテラン勢を追い越せない状況が続いています。 established languages are hot(定評のある言語が熱い)と元記事でも言われている通り、なんだか不思議な感じがしますよね。
生き残りの鍵は「安全性」?注目のベテラン言語「Ada」
そんな元気なベテラン勢の中でも、TIOBEのCEOが「この先も長く生き残るだろう」と太鼓判を押しているのが、「Ada(エイダ)」という言語です。
Adaと聞いても、ほとんどの方が「何それ?」と思うかもしれません。それもそのはず、Adaは1970年代後半に開発が始まった、かなりの古株言語なんです。では、なぜそんな古い言語が今になって再注目されているのでしょうか?
その答えは、Adaが持つ「圧倒的な安全性と信頼性」にあります。
Adaはもともと、「セーフティクリティカルな領域」、つまり「ほんの少しのミスも許されない、安全が第一に求められる分野」で使われることを目的に開発されました。具体的には、以下のようなシステムの制御に使われています。
- 航空機のフライトシステム
- 人工衛星やロケットの制御
- 鉄道の信号システム
- ペースメーカーなどの高度な医療機器
こうした分野では、もしプログラムにバグ(不具合)があったら、人々の命に関わる大事故につながりかねません。Adaは、そうした致命的なミスが設計段階で起きにくいように、言語のルールが非常に厳しく作られているのです。
現代社会は、あらゆるモノがインターネットに繋がり、自動運転や遠隔医療など、システムの「安全性」がこれまで以上に重要になっています。そんな時代の流れが、Adaのような「とにかく堅実で信頼できる」という特徴を持つ言語を、再び表舞台に押し上げているのかもしれませんね。
実際のランキングをチェック! TIOBEインデックスTOP10
それでは、話題のTIOBEインデックスの最新ランキング(2024年7月時点)を見てみましょう。このランキングは、世界中の熟練エンジニアの数や、関連する教育コース、そして言語をサポートする企業の数などを総合的に評価して算出されています。
- Python (26.98%)
- C++ (9.8%)
- C (9.65%)
- Java (8.76%)
- C# (4.87%)
- JavaScript (3.36%)
- Go (Golang) (2.04%)
- Visual Basic (1.94%)
- Ada (1.77%)
- Delphi/Object Pascal (1.77%)
なんと、Adaが9位にランクインしています!長年トップに君臨するPythonの強さは圧倒的ですが、その下で繰り広げられるベテラン勢の健闘ぶりがうかがえます。
ジョンのひとこと
技術の世界は常に新しいものがもてはやされがちですが、今回のランキングは「新しさだけが価値ではない」ということを教えてくれるようで、とても興味深かったです。特にAdaのように、一つの強みを徹底的に磨き上げた技術が、何十年という時を経て再評価されるのは面白いですね。これは、私たちの仕事や生活にも通じる部分があるかもしれません。
この記事は、以下の元記事をもとに筆者の視点でまとめたものです:
Ada, other older languages vie for top spots in Tiobe
language index