---
title: "AI時代に人はどうやって学べばいいのか、おしえてケント"
slug: "how-should-people-learn-in-the-ai-era-kent"
publishedAt: "2026-07-03T01:04:23.585Z"
updatedAt: "2026-07-03T01:04:23.853Z"
tags: ["AI","エンジニア","新人教育"]
excerpt: "ケント・ベックは新人を学習量で評価し、AIでは実装範囲を絞って人間が設計と確認を担うAugmented Codingを説く。絶対的な正解ではないが、この役割分担は他分野の教育にも応用できそうだ。"
canonical: "https://ishinao.net/how-should-people-learn-in-the-ai-era-kent"
---

[Hey, N00b, We Didn't Hire You to Complete Tasks](https://newsletter.kentbeck.com/p/hey-n00b-we-didnt-hire-you-to-complete)

ケント・ベックが、新人エンジニアはタスクを完了するために雇われているのではない、という記事を書いていた。新人が四十個のタスクを終えた。別の新人は二十個しか終えていない。さて、どちらが優秀か。これだけでは分からない、という話である。

会社が新人に期待しているのは、今すぐ大量の仕事を片づけることではない。そんなことだけが目的なら、慣れている人にやらせたほうが速い。新人を雇うのは、その人が今後もっと多くの仕事を扱えるエンジニアになることに期待しているからだ。だから見るべきなのは、終えたタスクの数ではなく、一つのタスクからどれだけ多くのことを学んだかである。というのが記事の中心的な主張だ。ここはまあ分かる。

この話はエンジニアに限らず、実践的な学習全般に広げられそうだ。何かを学ぶために練習課題が出る。その課題を正確に終わらせる。次は少し速く終わらせる。もちろんそれも経験ではある。しかし、その課題が単純作業ではないのなら、目の前の手順だけ覚えてもしょうがない。なぜこの課題が必要なのか。前後にはどんな作業があるのか。条件が少し変わったらどうなるのか。似た課題にも同じ考え方を使えるのか。そこまで見ながら周辺の知識を持ち帰れる人のほうが、将来性は高い。

課題を十回終わらせた人より、一回の課題から十個のことを学んだ人のほうが、その後は伸びるかもしれない。逆に、同じ種類の課題なら毎回きれいに終わらせるのに、条件が少し変わると急に動けなくなることもある。経験した回数が多いのに、経験値がほとんど入らない。ゲームならバグとして報告したくなる。

ただし、周辺を調べることに夢中になって、肝心の課題をいつまでも終わらせない人まで高く評価したいわけではない。まず課題はきちんと完了させる。そのうえで、そこから知識や考え方をどれだけ広く持ち帰れるか。元記事が言いたいのも、たぶんそういうことなのだろう。

そして今、この話にはAIが加わる。

AIに課題を渡せば、かなりのところまで勝手に終わらせてくれる。しかも単にコードを書くだけではない。複数の実装方法を比較する。テストを書く。小さな変更単位に分ける。周辺のコードを調べる。社内向けの説明文を書く。元記事が将来性のある新人の行動として挙げていることの多くを、AIが代替できてしまう。

完成した成果物だけを見ても、その新人が課題から多くを学んだのか、AIにそれらしい一式を作らせたのかは分からない。本人がきちんと理解しながらAIを使ったのかもしれないし、何も分からないまま生成されたものを提出しただけかもしれない。見た目は同じでも、そこから発生した経験値ポイントはだいぶ違う。

だからAIを禁止すればいい、という話でもない。実際の仕事ではAIを使うのだから、教育だけAIの存在しない昔の作業方法に戻してもしょうがない。電卓を使う仕事のために、電卓禁止の計算だけを延々と練習するようなものになりかねない。

かといって、好きにAIを使って完成品だけ出してください、とすると、本人が何を理解したのか分からなくなる。課題を終わらせる能力と、AIへ課題を終わらせてもらう能力と、AIが出したものを理解して責任を持つ能力は、それぞれ少し違う。

では、AI時代の学習課題はどう作ればいいのか。AIに任せていい部分と、自分で考えなければ身につかない部分をどう分けるのか。AIで三時間の調査を二十分に短縮できたとして、浮いた時間を次のタスクではなく学習へ使わせるにはどうするのか。完成品ではなく、本人が持ち帰った知識をどう評価するのか。

これは新人エンジニアだけの話ではない。作文、調査、外国語、数学、プレゼンテーション、デザイン。今まで成果物を見れば、本人がある程度は作業したと推測できた分野のほとんどで、同じ問題が起きている。

AIを使って課題を速く終わらせる能力は必要である。でも、速く終わらせた結果、何も学ばなくなるのでは困る。反対に、AIを使えば今まで一つしか試せなかった方法を五つ比較できるし、自分一人では届かなかった周辺知識まで調べられる。使い方によっては、学習量を大きく増やすこともできる。

ケント・ベックはAIを無視している人ではない。今回の記事には書かれていないが、別の記事ではAIを使った開発方法についてかなり詳しく書いている。

[The Bet On Juniors Just Got Better](https://newsletter.kentbeck.com/p/the-bet-on-juniors-just-got-better)

この記事では、AIによって新人の学習を加速できると主張している。今まで三時間かけて調べていたAPIの候補をAIに出してもらい、二十分で比較する。余った時間で別の実装方法、コードを単純化する方法、設計上のトレードオフ、追加のテスト、性能限界などを調べる。単に次のタスクを早く終わらせるのではなく、一つのタスクから得る学習量を増やす。

さらに、Augmented Coding: Beyond the Vibesでは、自分でB+ Treeを実装したときの具体的なAI利用方法を紹介している。

[Augmented Coding: Beyond the Vibes](https://newsletter.kentbeck.com/p/augmented-coding-beyond-the-vibes)

ケント・ベック流のAugmented Codingでは、AIにコードを書かせるが、コード自体をどうでもいいものとしては扱わない。人間が設計、複雑さ、テスト、カバレッジを気にする。AIが出したものをそのまま動かして、エラーが出たらまたAIへ投げるだけのVibe Codingとは、そこを区別している。

実際の進め方も、いかにもケント・ベックである。まず失敗するテストを書き、それを通す最小限のコードを作り、通ったら構造を整える。いわゆるRed、Green、RefactorのTDDを守る。機能を変える変更と、コードの構造だけを整理する変更を分ける。これはTidy First。変更とコミットは小さく保つ。

AIには次のテスト一つだけを実装させ、人間は途中結果を見る。AIが同じところを回り始める。頼んでいない機能を追加する。テストを削除して成功したことにする。そういう兆候が出たら止める。AIにかなりの作業を任せながら、開発の方向と品質は人間が管理する。

これは新人だけに使わせる補助輪ではない。長く育てるコードでは、ベテランも含めてこのやり方でAIを使う。新人はまだ判断できる範囲が狭いので、AIへ任せる単位も小さくする。経験を積んだら、設計が固まった範囲をもっと大きく任せられる。違いはAIを使うかどうかではなく、どこまで任せられるかである。

そう考えると、今回の新人教育の記事にAIの話がないことを、それほど不思議がる必要はなかったのかもしれない。「新人はタスクの完了数ではなく学習量で評価する」という今回の話に、別の記事で書かれているAugmented Codingを組み合わせれば、ケント・ベックなりの答えはだいたい完成する。

ただし、これはAIコーディングの絶対的な正解というより、ケント・ベック流の教義である。もともとTDD、Tidy First、小さな変更、人間による設計判断を重視してきた人が、その価値観の中へAIを組み込んだ。筋はかなり通っている。通りすぎていて、宗教としての完成度が高い。

AIを使った開発には、ほかの方法もありうる。仕様と自動評価だけを厳密にして、実装はAIへ大きく任せる方法。人間はモジュールの境界だけを設計し、内部をAIへ任せる方法。複数のAIに実装とレビューを分担させ、人間は最終結果だけを見る方法。今後AIがさらに賢くなれば、人間が一つずつテストを指示しなくても、複雑さを管理できるようになるかもしれない。

何にしろ、ケント・ベック流がAI時代の絶対的な正解だとは思わない。それでも、一つの方法論としてはかなり真っ当だろう。AIへ全部丸投げするのでも、AIを禁止して昔のやり方を守るのでもない。AIへ任せる範囲を区切り、人間が設計と確認に責任を持つ。少なくとも、何を考えてこの方法を選ぶのかは分かりやすい。

では、この考え方はプログラミング以外の教育にも使えるだろうか。プログラムにはテストがあり、同じ入力に対して同じ結果を返す部分が多い。AIの仕事が正しいかを比較的確認しやすい。文章、デザイン、外国語、調査などは評価に主観が入りやすく、そのまま同じ方法を移植するのは難しそうだ。

それでも、利用箇所を限定する。全体の設計と目的は人間が決める。AIが出したものを人間が確認する。そして、誰がやってもある程度似た結果へ収束しやすい作業はAIへ任せる。この役割分担なら、ほかの分野にもある程度は流用できる気がする。

文章なら資料の整理、表記の統一、複数案の生成をAIへ任せ、何を主張するかと出典の確認は人間が持つ。デザインならサイズ違いの展開や案出しを任せ、目的と採用判断は人間が持つ。外国語なら練習問題や添削を任せ、最終的に何を伝えるかは本人が考える。そういう切り分けはできそうだ。

おしえてケント、と思って調べてみたら、プログラミングについての答えはすでにだいたい書いてあった。それは唯一の正解ではないけれど、一つの筋の通った答えではある。

そして、その考え方をほかの教育へどう持ち込むかは、まだこれからみんなで考えるところなのだろう。
