React でアプリを作るにあたって、環境構築をAIに一気にやってもらいました。
自分で一行ずつ調べながら組む、という進め方をしていません。
動く状態を先に作ってもらって、後から一つずつ読み解いています。
学習中の身でこれをやるのは怠けに見えるかもしれません。自分でも少し引っかかっていたので、なぜこうしたのかを書いておきます。
環境構築は、初見で自力でやる学習効率が特に悪い
理由の中心はこれです。
環境構築という領域は、情報の鮮度が異常に早く落ちます。
- 雛形(
create-viteなど)の中身が、バージョンによって変わる - 使うプラグインの推奨構成が入れ替わる
- 設定ファイルが減ったり、書き方が変わったりする
実際、自分が作ったプロジェクトでも、Viteの雛形に入っていたリンターが以前と違うものに変わっていました。
ネットの記事を見ながら手を動かしていたら、記事どおりにならなくて詰まっていたはずです。
そして詰まったときに一番きついのが、「自分の手が悪いのか、情報が古いのか」が判断できないことです。
知識がない状態だと、この切り分けができません。延々と自分を疑うことになります。
動く正解が先にある状態なら、この問題が起きません。
目の前のものは動いているので、あとは「なぜ動くのか」を追うだけです。
ただし「読むだけ」は分かったつもりで止まる
とはいえ、生成されたコードを眺めて「なるほど」で終わると、たぶん何も残りません。
読めば分かった気になるのが、この方式の一番の落とし穴だと思っています。
なので、読むときに1つルールを決めました。
このファイルを消したら何が壊れるかを、予想してから読む
予想して、外れたら、そこが自分の理解の穴です。
当たったら理解できている。
「なんとなく分かる」を「合っている/外れている」に変換する作業と言ってもいいかもしれません。
読むだけだと自分の理解度が測れませんが、予想を先に出しておけば答え合わせができます。
読み解いたら、雛形の「やりかけ」が見つかった
やってみて、想定していなかった成果がありました。
生成された設定ファイルを一つずつ確認していたら、雛形に入っていたまま使われていない設定が見つかったんです。
中途半端に残っている記述もありました。
これは自力で組んでいたら、たぶん一生気づきませんでした。
自分で書いたものは「書いた覚えがある」ので疑わないからです。
他人(AI)が用意したものを読むという構図が、疑って読む姿勢を自然に作っていたのかもしれません。
見つけた内容は別途技術記事にまとめました。
本当の答え合わせは、まだ済んでいません
正直に書いておくと、この学び方が機能したかどうかは、まだ分かりません。
読み解いて、腑に落ちた感覚はあります。ただ「読んで分かった」と「自分で再現できる」は別物です。
前者だけで満足するのが、この方式の最大のリスクだと思っています。
検証の方法は決めていて、次のアプリ(Next.js)の環境構築を自力でやってみることにしています。
- 自力で組めたら、この学び方は機能している
- 組めなかったら、読み解きが足りなかったか、方式そのものが甘い
結果が出たら、この記事に追記します。うまくいかなかった場合も書きます。そのほうが記録として価値があるので。
「丸投げ」と「任せる」の線引き
最後に、自分の中での整理を書いておきます。
これは「AIに丸投げしている」のではなく、AIに任せる部分と自分で理解する部分を意図的に分けているつもりでいます。
- 任せる: 動く状態を作ること(情報の鮮度が問題になる領域)
- 自分でやる: なぜそれで動くのかを説明できるようにすること
ただ、この線引きが正しいかどうかは自分では判定できません。「意図的に分けている」と言いながら、実質は楽をしているだけかもしれない。
だから答え合わせの工程を先に決めました。言い訳ではなく学習設計だと言うなら、検証まで含めて設計されているべきだと思ったので。
同じように学習中でAIを使っている人は、たぶん似た引っかかりを持っていると思います。
自分の場合は「任せる範囲を決めて、検証方法も決めておく」で折り合いをつけました。結果はまた書きます。
