目的別に選ぶ
悩み抜くのはやめましょう。あなたの目的を一つの行に合わせて先へ進んでください — 後でいつでも進路は変えられますし、最初のプロジェクトでは最適化よりも勢いが勝ります。
決定の全体を一つのツリーにするとこうなります。一番上から始め、各質問に答え、枝をたどってあなたのスタックにたどり着いてください:
┌─────────────────────────┐
│ 何を作りますか? │
└────────────┬────────────┘
┌──────────────┬───────┼────────┬──────────────┐
▼ ▼ ▼ ▼ ▼
┌─────────┐ ┌───────────┐ ┌─────┐ ┌────────┐ ┌────────────┐
│ サイト │ │ AI/データ │ │ API │ │モバイル│ │ 最高速度 │
│ Web app │ │ 自動化 │ │backend│ │アプリ │ │ /システム │
└────┬────┘ └─────┬─────┘ └──┬──┘ └───┬────┘ └─────┬──────┘
▼ ▼ ▼ ▼ ▼
┌─────────┐ ┌──────────┐ ┌──────┐ ┌──────────┐ ┌──────┐
│TypeScript│ │ Python │ │ Go │ │iOS: Swift│ │ Rust │
│+ React / │ │ │ │ or TS│ │Android: │ │(必要 │
│ Next.js │ │ │ │ │ │ Kotlin │ │な時 │
└─────────┘ └──────────┘ └──────┘ │or RN (TS)│ │のみ) │
└──────────┘ └──────┘
迷ったら ────────────────▶ TypeScript か Python
データ保存が必要? ──────▶ どの選択にも SQL を追加
- ウェブサイトやWebアプリを作りたい。 → TypeScript(React/Next.jsと一緒に)。当然で、サポートも手厚い選択。
- AI、データ、自動化をやりたい。 → Python。ツールがそこに揃っています。
- 速いやバックエンドサービスが欲しい。 → Go(シンプルで速い)またはTypeScript(Webスタックの一部なら)。PythonのFastAPIも問題なく機能します。
- モバイルアプリを作っている。 → iOSならSwift、AndroidならKotlin — あるいは、TypeScriptに留まるためにクロスプラットフォームのWebベースのアプローチ(React Native)を検討しましょう。
- 生の速度やシステムレベルの制御が必要だ。 → Rust。ただし、本当に必要だと確認できた場合に限ります。ほとんどの人には不要です。
- すでに存在するサイトに手を加えている。 → それがすでに書かれている言語で。WordPressのプラグインならPHP、古いRailsアプリならRubyです。コードベースに合わせ、それと戦わないこと。
- とにかく学んで、何かを速く出荷したい。 → PythonかTypeScript。どちらも寛容で、どちらもAIが最もよく知る言語で、どちらにも尽きないチュートリアルと例があります。
- アプリがデータを保存する必要がある。 → 上で選んだ何かに加えて、データベース用の。両者から選ぶわけではありません。
メタ的な教訓: 迷ったら、人気の選択肢を選びましょう。TypeScriptとPythonは、個人のvibeコーダーがこれから作るものの大半をカバーし、AIアシスタントが最も確実に扱える言語です。vibe codingにとって「最良の」言語は、たいていAIが最もよく知っている言語 — つまり人気の言語です。風変わりな選択は、具体的な理由ができたときのために取っておき、いずれにせよ構文はAIに任せましょう。