# Software 3.0とは？1.0・2.0との違いやバイブコーディングを分かりやすく解説！

> Software 3.0とは、ふだんの言葉でLLMに指示を出して動かす、新しいソフトウェアの考え方です。本記事では、アンドレイ・カルパシーが広めたSoftware 1.0・2.0・3.0の違いや、バイブコーディング、これからの人の役割を図解で分かりやすく解説します！

- URL: https://toukei-lab.com/software-3
- 公開: 2026.11.06
- サイト: スタビジ（https://toukei-lab.com）

:::talk{who="umatan"}
当サイト【スタビジ】の本記事では、「Software 3.0」について分かりやすく解説していきます！Software 1.0・2.0との違いから、バイブコーディング、これからの人の役割まで見ていきましょう！
:::

こんにちは！ウマたんです！

ChatGPTに「この文を英語にして」と頼むと、すぐに英語にしてくれる。

Claude Codeに「ToDoアプリを作って」と話しかけると、AIがコードを書いて、アプリを形にしてくれる。

プログラミング言語を一行も書かずに、ふだんの言葉だけでコンピューターを動かせる時代になってきましたよね。

この変化を、ソフトウェアの歴史の大きな流れとして説明したのが「**Software 3.0**」という考え方です。

:::talk{who="man" side="left"}
Software 3.0って最近よく聞くけど、1.0や2.0と何が違うの？
:::

:::talk{who="woman"}
AIがコードを書く時代に、人は何をすればいいのか知りたい！
:::

本記事では、次の4つを順番に解説していきます。

:::point
**・Software 1.0：人がコードを書く**\
**・Software 2.0：データから学ばせる**\
**・Software 3.0：言葉でAIを動かす**\
**・これからどうなる？（使い分けと人の役割）**
:::

以下のYouTube動画でも解説していますので、あわせてチェックしてみてください！

::youtube{#UTTk9sFq8Rg}

## Software 1.0：人がコードを書く

まずは、Software 1.0から見ていきましょう！

### 「Software 1.0・2.0・3.0」を広めたのはカルパシー氏

この「Software 1.0・2.0・3.0」という呼び方を広めたのは、**アンドレイ・カルパシー氏**（Andrej Karpathy）です。

テスラやOpenAIで、AI開発の中心にいた研究者なんです。

カルパシー氏は、ソフトウェアの作り方の変化を「1.0 → 2.0 → 3.0」というバージョンになぞらえて説明しました。

### ルールを一つずつ書いていく、これまでのソフトウェア

**Software 1.0は、人がプログラミング言語で、ルールを一つずつ書いていく、これまでのソフトウェアのこと**です。

「もしこうなったら、こうする」という手順を、人がぜんぶ考えて書き込みます。

たとえば、ネットショップの送料を決めるプログラムなら、こんな感じです。

```python
def shipping_fee(total):
    if total >= 5000:   # 5,000円以上なら
        return 0        # 送料は無料
    return 500          # それ以外は500円
```

ルールがはっきりしているので、<mark>同じ入力なら、いつでも同じ答えを確実に返してくれる</mark>のが1.0の強み。

計算や手続きのように、ルールがはっきりした仕事には、ぴったりなんです。

### ルールで書けない判断もある

でも、Software 1.0には苦手なこともあります。

たとえば、写真に写っているのが猫かどうか、のような判断です。

![「耳がとがっていたら猫？」のように、猫かどうかをルールで書くのはとても難しい](/wp-content/uploads/2026/11/software-3-rules.jpg)

「耳がとがっていたら猫」と書いても、犬にも耳がとがった種類はいますよね。

「ひげがあったら」「目が丸かったら」とルールを足していっても、写真の角度や明るさが変わるだけで、すぐに例外が出てきてしまいます。

<mark>人が見ればすぐに分かるのに、ルールとして書き出すのはとても難しい</mark>。

これが、Software 1.0の限界なんです。

## Software 2.0：データから学ばせる

そこで登場したのが、Software 2.0です！

### プログラムの正体は「重み」

カルパシー氏は2017年に、「Software 2.0」という考え方を発表しました。

Software 2.0では、人はルールを書く代わりに、**大量のデータと、「こうなってほしい」というゴールを用意します。**

あとはAIがデータから学んで、自分で中身を作り上げるんです。

![大量のデータとゴールを用意すると、AIが学んで中身を作る。プログラムの正体は「重み」という数字の並び](/wp-content/uploads/2026/11/software-3-weights.jpg)

猫の例なら、「猫の写真」と「猫ではない写真」を大量に集めて、「猫を当てる」というゴールを決めておく。

すると、ニューラルネットワークが写真の特徴を自分で学んで、猫を見分けられるようになります。

このとき、<mark>プログラムの正体は、人が読めるコードではなく、ニューラルネットワークの膨大な数字、つまり「重み」</mark>なんです！

人は「なぜ猫と判断したのか」をコードで読み取ることはできません。

その代わり、ルールで書けなかった判断ができるようになりました。

ニューラルネットワークやディープラーニングの仕組みについては、以下の記事で詳しく解説しています。

<https://toukei-lab.com/deep-learning>

### テスラの自動運転で起きたこと

実際に、カルパシー氏がAI部門を率いていたテスラの自動運転でも、この変化が起きました。

はじめは人が書いたルールで判断していた部分が、少しずつニューラルネットワークに置きかわっていったんです。

![テスラの自動運転では、人が書いたルールが少しずつニューラルネットワークに置きかわっていった](/wp-content/uploads/2026/11/software-3-tesla.jpg)

それにつれて、エンジニアの仕事も変わっていきました。

<mark>コードを書くことから、データを集めて整えることへ</mark>。

![エンジニアの仕事が、コードを書くことから、データを集めて整えることへ変わった](/wp-content/uploads/2026/11/software-3-tesla-work.jpg)

Software 2.0では、AIの出来を決めるのはデータです。

どんなデータを集めるか、正解のラベルをどう付けるかが、そのままプログラムの質になるんです。

コードを書く仕事が、データを育てる仕事に変わる。

これがSoftware 2.0なんです！

## Software 3.0：言葉でAIを動かす

続いて、いよいよSoftware 3.0を見ていきましょう！

### プロンプトそのものがプログラムになる

2025年、カルパシー氏は講演の中で、さらに新しい「Software 3.0」を紹介しました。

Software 3.0では、プログラムを書くための言葉が、なんと**英語や日本語のような、ふだんの言葉**になります。

![1.0はコード、2.0は重み、3.0はふだんの言葉。プログラムを書くための言葉が変わってきた](/wp-content/uploads/2026/11/software-3-three-eras.jpg)

LLM、つまり大規模言語モデルに、言葉で指示を出すだけで、AIが仕事をこなしてくれる。

つまり、<mark>プロンプトそのものがプログラムになる</mark>ということなんです！

![「この文を英語にして」というプロンプトが、そのままプログラムになる](/wp-content/uploads/2026/11/software-3-prompt.jpg)

たとえば、こんな一文がそのまま「翻訳プログラム」になります。

```text
次の文を英語にしてください。
「明日の会議は10時からです」
```

Software 1.0で翻訳プログラムを作ろうとしたら、単語や文法のルールを山ほど書く必要があります。

Software 2.0でも、大量の対訳データを集めて、モデルを学ばせる必要があります。

それがSoftware 3.0なら、一文で済んでしまうんです！

ちなみに、Software 3.0の土台になっているLLMも、中身はデータから学んだニューラルネットワーク、つまりSoftware 2.0のかたまりです。

<mark>2.0で作られた賢いAIを、3.0ではふだんの言葉で動かしている</mark>、というイメージですね。

LLMの仕組みについては、以下の記事で詳しく解説しています。

<https://toukei-lab.com/llm>

### 同じ仕事を1.0・2.0・3.0で作ると

違いをイメージしやすくするために、「お客さんからの問い合わせを、返品・配送・その他に分ける」という仕事を、それぞれのやり方で作ってみましょう。

| | 作り方 | 人がやること |
|---|---|---|
| Software 1.0 | 「返品」という言葉が入っていたら返品、のようにルールを書く | キーワードと分け方のルールを、ぜんぶ考えて書く |
| Software 2.0 | 過去の問い合わせと、正解の分類をセットで学ばせる | 大量のデータを集めて、正解のラベルを付ける |
| Software 3.0 | 「次の問い合わせを、返品・配送・その他に分けて」とLLMに頼む | やってほしいことを、言葉で分かりやすく伝える |

同じ仕事でも、人がやることがまったく違いますよね。

3.0では、<mark>「何を、どうしてほしいのか」をうまく言葉にできるかどうか</mark>が、プログラムの出来を左右します。

LLMへの指示の出し方のコツは、以下の記事でまとめています。

<https://toukei-lab.com/prompt-engineering>

### バイブコーディング

さらにカルパシー氏は、「**バイブコーディング**」という言葉も生み出しました。

「バイブ（vibe）」は、英語で「雰囲気」や「ノリ」のこと。

<mark>作りたいものを言葉で伝えて、細かいコードはAIに任せながら、ノリよくアプリを作っていくスタイル</mark>のことです。

![「ToDoアプリを作って！」と話しかけると、AIがコードをどんどん書いてくれる](/wp-content/uploads/2026/11/software-3-vibe-coding.jpg)

たとえば、「ToDoアプリを作って！」と話しかけると、AIがコードをどんどん書いてくれる。

動かしてみて気になるところがあれば、「ボタンをもっと大きくして」「終わったタスクに線を引いて」と、また言葉で頼むだけ。

今では、**Claude Code**や**Cursor**のような、AIといっしょにコードを書くツールも登場しています。

<mark>プログラミングの経験が少ない人でも、アプリを形にできるようになってきた</mark>んです！

Claude Codeの使い方については、以下の記事で詳しく解説しています。

<https://toukei-lab.com/claude_code>

## これからどうなる？1.0・2.0・3.0の使い分けと人の役割

最後に、これからどうなるのかを考えていきましょう！

### 3.0が出ても、1.0や2.0はなくならない

大事なのは、<mark>3.0が出てきたからといって、1.0や2.0がなくなるわけではない</mark>ということです。

それぞれに、得意なところがあります。

![1.0は計算・決まった処理、2.0は画像・音声の認識、3.0は言葉で柔軟に。1つのアプリの中で組み合わせる](/wp-content/uploads/2026/11/software-3-combine.jpg)

| | プログラムの正体 | 人がやること | 得意な仕事 |
|---|---|---|---|
| Software 1.0 | コード | ルールを一つずつ書く | 計算のように、ルールがはっきりした処理 |
| Software 2.0 | ニューラルネットワークの重み | データとゴールを用意する | 画像や音声の認識 |
| Software 3.0 | 言葉（プロンプト） | 言葉で指示を出す | 言葉で柔軟にこなしたい仕事 |

たとえば、計算のようにルールがはっきりした処理は、同じ答えを確実に返せる1.0に任せたほうが安心です。

これからは、<mark>それぞれの得意なところを、1つのアプリの中で組み合わせて使っていく時代</mark>なんです。

:::box{title="組み合わせの例：経費精算アプリ"}
**・レシートの写真から、お店の名前や金額を読み取る**（2.0：画像の認識）\
**・読み取った内容から、何に使ったお金かを判断して、説明文を作る**（3.0：言葉で柔軟に）\
**・金額を合計して、ルールどおりに精算する**（1.0：決まった処理）
:::

### AIが作ったものを確かめるのは人の仕事

そして、AIがコードを書く時代だからこそ、人の役割も変わってきます。

![AIが書いたコードが、ちゃんと動くか、安全かを確かめるのは人の仕事](/wp-content/uploads/2026/11/software-3-check.jpg)

AIが作ったものを、そのまま信じてはいけません。

:::warn
**・ちゃんと動くか**：思ったとおりに動くか、おかしな入力で壊れないか\
**・安全か**：パスワードや個人情報の扱いに穴がないか\
これを確かめるのは、<mark>人の仕事</mark>です！
:::

カルパシー氏も、AIにどこまで任せるかを、人が調整できるようにすることが大切だと話しています。

つまみ（スライダー）を回すように、簡単な作業はAIに多めに任せ、大事なところは人がしっかり確かめる。

そんなふうに、任せる度合いを選べることが大切なんです。

### 「何を作りたいのか」を言葉にする力

そしてもうひとつ。

Software 3.0では、言葉がプログラムになります。

だからこそ、<mark>「何を作りたいのか」をはっきり言葉にできる力</mark>が、これからますます大切になるんです！

「いい感じのアプリを作って」と頼むより、「誰が、どんなときに使う、何ができるアプリなのか」を伝えたほうが、AIはずっと思いどおりのものを作ってくれます。

:::good{title="AIに伝えるとよいこと"}
**・誰が使うのか**（例：忙しい会社員が）\
**・どんなときに使うのか**（例：通勤中にスマホで）\
**・何ができればいいのか**（例：やることを登録して、期限が近いと知らせてくれる）
:::

## Software 3.0のまとめ

最後に、今回のポイントをおさらいしましょう！

:::point
**・Software 1.0は、人がコードでルールを書くソフトウェア**\
**・Software 2.0は、データから学ばせて、ニューラルネットワークの重みがプログラムになるソフトウェア**\
**・Software 3.0は、ふだんの言葉で指示を出して、LLMを動かすソフトウェア**\
**・3.0が出ても1.0・2.0はなくならず、得意なところを組み合わせて使う。AIが作ったものを確かめるのは人の仕事**
:::

:::talk{who="umatan"}
要は、プログラムを作る主役が、コードからデータ、そして言葉へと広がってきた、ということなんです！ぜひ、言葉でAIに頼むところから、Software 3.0を体験してみてください！
:::

生成AIやデータサイエンスを体系的に学びたいのであれば、当メディアが運営するスクール「**[スタアカ](https://toukei-lab.com/achademy/)**」がオススメです！

:::box
**[業界最安級のAIデータサイエンス特化スクール「スタアカ」](https://toukei-lab.com/achademy/)**
:::