「AI時代はTypeScript一強」と聞くたびに、現場のエンジニアとして思うこと
最近、YouTubeを見ていると「AI時代はTypeScript一強」「これからはPythonよりTypeScript」といった動画をよく見かける。
理由として挙げられるのは、大きく二つだ。
一つは、AIがコードを書く時代だからこそ、静的型付け言語の方が手戻りが少なくなり、開発効率が上がるということ。
もう一つは、フロントエンドもバックエンドもTypeScriptに統一すれば、AIへの指示やコードの理解がスムーズになるということだ。
どちらも理解できる話だし、TypeScriptの重要性がますます高まっていることに異論はない。
私自身もフロントエンドではTypeScriptを書いている。
ただ、「だからバックエンドも全部TypeScriptになる」という結論になると、毎日AIを使って開発している人間としては、どうにも違和感がある。
現場ではPythonはまったく困っていない
私が携わる案件では、フロントエンドがTypeScript、バックエンドがPythonという構成が珍しくない。
AIが普及したからといって、「PythonをTypeScriptへ置き換えよう」という話になったことは一度もない。
理由は単純だ。
Pythonには積み重ねてきたライブラリがある。
データ分析、科学技術計算、機械学習、生成AI関連。この分野になると、Pythonの資産はあまりにも大きい。
言語そのものより、その周辺にあるライブラリやコミュニティの価値の方がはるかに大きいのである。
新しい言語が人気になったからといって、その資産が一夜で移ることはない。
「型があるから有利」という話も分かるが
TypeScriptを推す人たちの主張は、もう少し正確に言うと、
「AIがコードを書く割合が増えるほど、静的型付け言語の方が手戻りが少なくなり、開発効率が上がる」
ということなのだろう。
これは確かに一理ある。
AIは大量のコードを一瞬で生成してくれる反面、人間なら気付くような単純なミスを混ぜることもある。
そうしたミスをコンパイル時や静的解析で早めに見つけられるなら、大きなメリットになる。
ただ、それでも「だからTypeScript一強になる」という結論には飛躍がある。
というのも、PythonでもType Hintsはすでに広く普及しているし、mypyなどをCI/CDに組み込んで静的型チェックを行う開発も珍しくない。
つまり、「AI時代だから型が重要になる」という話と、「だからTypeScriptだけが勝つ」という話は、実は別問題なのである。
AIは、むしろ言語の壁を低くしてしまった
私自身、AIを使い始めてから一番変わったと思うのはここだ。
昔は新しい言語を触るたびに、文法を覚え、イディオムを覚え、細かい書き方を覚えていた。
今は違う。
「この処理をPythonで書いて」
「今度はTypeScriptで」
「Kotlin版も」
そんなお願いをすると、AIは数秒でそれなりのコードを返してくる。
もちろん、そのまま採用することはない。
レビューもテストも必要だ。
それでも、言語ごとの文法を必死に覚える価値は、以前より確実に小さくなった。
だから私には、「AI時代だから一つの言語へ統一される」という話より、「AI時代だから複数言語を扱う心理的ハードルが下がった」と考える方が、現場の感覚には近い。
システム開発は流行では動かない
技術系YouTubeは商売だから、「○○終了」「△△一強」というタイトルになる。
その方が動画は伸びる。
それは理解できる。
しかし、実際の開発現場はもっと泥臭い。
既存システムがあり、運用チームがあり、お客様の指定があり、何年も積み上げた資産がある。
新規開発なら自由に選べることもあるが、世の中のシステムの多くは、新規開発より保守や機能追加の方が圧倒的に多い。
結局、一番強いのは「昨日まで動いていた」という事実だったりする。
AIが登場しても、この現実はそう簡単には変わらない。
「一強」という言葉は、昔から何度も聞いてきた
30年近くこの仕事をしていると、「これからはJavaの時代」「PHPの時代」「Rubyの時代」「Goの時代」と、いろいろな話を聞いてきた。
確かに勢力図は変わった。
しかし、どれも消えなかった。
新しい言語が増えるたびに、「今度こそ一強になる」という話は出る。
そして数年後には、「実は共存していました」という結末になる。
YouTubeでは今日も「○○終了」「△△一強」という動画が並んでいる。
一方、その動画を見終えた私は、今日もPythonとTypeScriptを行ったり来たりしながら仕事をしている。
少なくとも現場では、どちらもまだ失業していない。