「教材が難しい」の正体は、潜る深さだった

Next.jsの公式チュートリアルを進めていて、3章の途中で手が止まりました。
これは難しい、と思いました。

このペースだと止まりそうだな、とも思いました。5月から6月にかけて、
動画教材を通しているあいだに2ヶ月ほど止まった経験があります。
その感覚が戻ってきた。怖かったです。

ところが記録を見返したら、遅れていませんでした。

目次

体感と数字がズレていた

学習にかかった時間は毎回メモしています。見積と実績を並べてみました。

項目 時間
1〜3章の見積 1.5時間
1〜3章の実績 約2時間(他のことをしていた時間込み)

30分オーバー。ただしこの2時間には、集中が切れて別の作業をしていた時間も入っています。
実作業だけなら、ほぼ見積どおりでした。遅れていません。

進んでいないという感覚だけがあって、数字のほうはそう言っていない。
このズレが何だったのかを考えていくうちに、原因が教材の側ではなく
自分の進め方のほうにあると分かった、というのがこの記事で書きたいことです。

教材が求めていた深さと、自分が潜った深さ

3章は画像の最適化を扱う章です。教材が求めていたのは、実質これだけでした。

<Image src="/hero-desktop.png" width={1000} height={760} />

コンポーネントを置いて、幅と高さを渡す。それだけです。

自分が実際にやっていたのは、こういう流れでした。

1. Image の型定義が気になって node_modules を開く
2. image.d.ts を読み、そこから image-external.d.ts へ Cmd+クリックで辿る
3. ブラウザの検証ツールで、出力されたHTMLを確認する
4. ついでに元画像の解像度まで調べる

教材が指定した深さを、3階層ぶん超えて潜っていました。

難しかったのは、章の内容ではありません。自分が勝手に深くまで潜っていたからでした。
体感速度を決めていたのは難易度ではなく、深度のほうです。

潜るのをやめたら、翌日に1.75時間で2章進んだ

翌日から進め方を変えました。疑問が湧いてもその場では調べず、
1行のメモに送ってから先へ進むという、それだけのルールにしました。

結果は4章と5章を合わせて1時間45分。
完了判定にしていた条件もクリアして、基礎学習のフェーズはそこで終わりました。
納期に置いていた08-07に対して5日早い着地です。速すぎて拍子抜けしました。

面白いことに気づきました。3章の時点で「ファイル構造が頭に描けない」と詰まって、
自分で調べて埋めようとしていた部分が、そのまま4章の内容だったのです。

自力で解決しようと潜っていた疑問に、教材は次の章で答えるつもりでいました。
先に進むだけで解けた。それをその場で解こうとしていたわけです。

疑問を持つことと、その場で解くことは別

疑問が湧くこと自体は悪くないと思っています。
node_modules を辿ったおかげで、型定義ファイルの読み方は少し分かりました。
収穫はありました。

問題は、それをその場でやったことです。

1作目のアプリを作ったときは、詰まったら1行メモに書いて先へ進むという運用が
自然にできていました。作りながら調べる流れだと、止まっている時間が
そのまま進捗の遅れとして目に見えるからだと思います。

学習中はそれが見えません。潜っている時間も「勉強している時間」に見える。
だから歯止めが効きませんでした。

記録がなければ「自分は遅い」で終わっていた

一番の収穫はこれでした。体感と数字がズレていたと分かったことです。

記録を取っていなければ、「難しくて進まない」という感覚だけが残って、
そこから「自分には向いていないのかもしれない」まで行っていた気がします。

実際には見積どおりでした。遅く感じた原因は、自分の潜り方にあった。
原因が分かれば対処できるもので、次の章からは、その場では潜らないと
決めておくだけで済みました。

学習の時間を測っておくと、こういうときに助かります。
感覚は簡単にブレます。記録はブレません。

目次