「プログラミングを始めたい」と思って検索すると、HTML、JavaScript、Python、Git、GitHub、フレームワーク……と、知らない言葉が一気に出てきます。ここで最初の失敗が起きます。学ぶ順番を完璧に決めてから始めようとすることです。
初心者の最初の目標は、学習計画を完成させることではありません。小さくてもいいので、自分が書いたコードで何かが動く経験をつくることです。
まず決めるのは「言語」ではなく「小さく動くもの」
Web制作から始めるなら、たとえば次の程度で十分です。
- 自分のプロフィールが表示される1ページ
- ボタンを押すと文章が切り替わるページ
- 入力した名前を画面に表示するページ
「SNSを作る」「ECサイトを作る」のような大きな目標は、最初の一歩には大きすぎます。最初は、1画面・1つの動きまで小さくしてください。
作りたいものを、まず1文にします。
「私は、○○するために、△△ができる小さなページを作る」
ここまで決まると、必要な学習が絞れます。
最初の7日:1日1つだけ前へ進む
最初の7日は「学ぶ→使う」を往復する
1日目:作りたいものを1文で決める
完成形を細かく考えず、「誰が・何をできるか」だけ決めます。
2日目:似た画面を観察する
普段使うWebサイトを見て、「見出し」「文章」「ボタン」「入力欄」などに分けてみます。まだコードを書けなくても構いません。
3日目:HTMLで骨組みを作る
見出し、文章、ボタンなどを置きます。デザインは後回しです。「画面に要素が出た」で合格です。
4日目:CSSで見た目を1か所変える
色、余白、文字サイズのどれか1つを変えます。全部きれいにしようとしません。
5日目:JavaScriptで動きを1つ足す
ボタンを押したら表示が変わるなど、結果が目で確認できる小さな動きを作ります。
6日目:見本を見ずに1か所変更する
文章、色、条件、表示内容のどれかを自分で決めて変えます。ここから「写す」から「作る」へ移り始めます。
7日目:自分の言葉で説明する
「HTMLは何を担当したか」「CSSで何を変えたか」「JavaScriptで何が起きたか」を短く説明します。説明できない部分が、次に学ぶ場所です。
分からなくなったら、勉強を増やす前に問題を小さくする
初心者は、つまずくと「基礎が足りない」と考えて別の教材へ移りがちです。でも必要なのは、追加の教材ではなく問題の切り分けかもしれません。
止まったら次の4つを書いてください。
- 何をしたかったか
- 今は何が起きているか
- 直前に何を変えたか
- どこまで自分で試したか
この4点があるだけで、検索もしやすくなり、人やAIにも質問しやすくなります。
CodeNestが合うのは「次の課題と質問先を一人で決め続けるのが大変」な人
CodeNestの現行公開情報では、理解度に合わせた学習ルート、課題、AIチューターとの対話を使いながらプログラミングを進める学習体験が案内されています。
ここで大切なのは、AIに完成コードを作ってもらうことではありません。自分で手を動かし、分からないところで支援を使い、また自分のコードへ戻ることです。
AIの回答は常に正しいとは限らないため、出てきた答えは実際に動かして確かめる必要があります。学習の主役は、あくまで自分です。
今日やること
7日分を全部準備する必要はありません。今日は次の1文だけ書いてください。
「私は、○○するために、△△ができる小さなページを作る」
そして、最初の見出しを1つ表示してみる。プログラミング学習は、計画を完成させた瞬間ではなく、最初の1行を動かした瞬間から始まります。
次に読む: 作りたいものが決まらない時の3つの質問 / HTML・CSS・JavaScriptの学習順 / 学習ゴールを成果物に変える方法 / エラー文を読む3ステップ