プログラミング独学の目標の立て方|学ぶ範囲が決まる1行の書き方

公開

/ 最終更新

記事タイトル画像:プログラミングの目標設定 — 到達点・期限・測り方の3要素で決める

「プログラミングができるようになりたい」は、目標として機能しません。何を学べば達成なのかが決まらず、どこまでやっても終わりが来ないからです。独学で挫折する人の多くは、意志が弱いのではなく、終点が定義されていない状態で走り出しています。

この記事では、学習範囲がそのまま決まる形の目標の書き方と、そこから何を学び何を飛ばすかを判断する手順を解説します。目標が思いつかない場合の探し方も扱います。

曖昧な目標が学習を止める仕組み

目標が曖昧だと、次の判断がすべてできなくなります。

決められないことその結果
どの言語を選ぶか比較記事を読み続けて、着手が遅れる
どこまで学べば十分か入門書を何冊も買い、前半だけを繰り返す
何を作るか教材の課題以外に手を動かす機会がない
進んでいるかどうか手応えがなく、続ける理由がなくなる

とくに最後の項目が効きます。終点が見えていれば「半分まで来た」と分かりますが、見えていなければ何時間やっても同じ場所に立っている感覚になります。学習時間そのものの目安は独学の期間はどれくらいかで扱っています。

プログラミング学習の目標を構成する3要素の図GOAL STRUCTURE要素 1到達点何ができれば良いか具体的な行動で書く要素 2期限いつまでにやるか短く区切って置く要素 3測り方達成をどう判定するか数えられる形にする「エンジニアになる」は目標ではありません。到達点・期限・測り方の3つが揃って初めて機能します。
プログラミング学習の目標を組み立てる3つの要素。到達点、期限、測り方が揃って初めて目標として機能する。

目標は「誰の・何を・どうする」の1行で書く

使える目標には共通の形があります。対象・作業・結果の3つが入っていることです。

目標として弱い目標として機能する違い
Pythonを覚える毎月手作業でまとめている売上表を、自分で実行するだけで作れるようにする終点が判定できる
Webサイトを作れるようになる自分の名前で自己紹介ページを公開し、スマホでも崩れない状態にする完成の条件が明確
アプリ開発を学ぶ家族で使う買い物メモを、2人が同時に開いても内容が揃うように作る必要な機能が導ける
転職できる実力をつける求人3件の応募要件に載っている技術で、動くものを1本公開する要求水準が外から与えられる

右側の書き方であれば、「これができたら達成」と自分以外の人にも判定してもらえます。判定できない目標は、達成感も得られません。まずは紙に1行で書いてみてください。書けない場合は、目標がまだ決まっていないということです。

目標から学ぶ範囲を決める

1行で書けたら、そこから必要なものを機械的に引き出せます。目標ごとに範囲はまったく違います。

目標学ぶ必要があるもの学ばなくてよいもの
手作業の集計を自動化する言語の基礎、ファイルと表計算の操作Web、データベース、公開の手順
自己紹介ページを公開するHTML、CSS、公開の手順サーバー側の言語、データベース
複数人で使うメモを作る言語、データの保存、公開の手順高度な設計、負荷対策
仕事として通用する水準上記に加えて設計、テスト、バージョン管理、共同作業—(範囲は広い)

右の列があることが重要です。目標が決まっていれば「今は学ばない」と判断できる領域が生まれ、学習量が現実的な大きさに収まります。決まっていないと、すべてが「いつか必要かもしれないもの」に見えてしまいます。

言語選びについてはプログラミング独学ロードマップのSTEP 1で、目的別の対応を整理しています。

目標は3層に分けて置く

1つの目標だけだと、達成まで遠すぎて手応えがありません。大きさの違う3つを同時に持つと、日々の判断がしやすくなります。

期間の目安役割
大目標3か月〜1年買い物メモアプリを公開し、家族が実際に使っている状態学ぶ範囲を決める
中目標2〜4週間入力した内容が画面に一覧表示されるところまで動かす順序を決める
小目標1回の学習入力欄に打った文字を、そのまま下に表示させる今日やることを決める

手応えを生むのは小目標です。1回の学習で終わる大きさに切っておけば、毎回「できた」で終われます。逆に大目標しかないと、数か月間ずっと未達成のまま過ごすことになります。

小目標は「30分〜2時間で終わる」大きさが目安です。終わらなかった場合は、目標が大きすぎたと考えてさらに割ってください。「ログイン機能を作る」は大きすぎ、「入力したパスワードを画面に出さずに受け取る」くらいまで割ります。

「転職したい」を目標にする場合

転職は目標としては大きすぎるうえ、達成の判定が自分の手を離れています。学習の目標としては、次のように分解します。

手順やることこの段階での判定
1実際の求人を3件選び、応募要件を書き出す必要な技術が名前で分かる
23件に共通して出てくるものだけに絞る学ぶ範囲が確定する
3その技術を使って、動くものを1本作る完成して公開できた
4作った理由と工夫した点を文章で説明できるようにする他人に伝わる形になった

1番目を飛ばさないでください。求人を見ずに学習を始めると、実際には求められていない技術に時間を使うことになります。逆に要件を先に見ておけば、学ぶ範囲は想像より狭いことが分かる場合もあります。

作ったものを公開する手段としてはGitとはVPSとはが入口になります。

目標が思いつかないときの探し方

「作りたいものが特にない」という状態は珍しくありません。その場合は、ゼロから発想するのではなく、すでにある不便から引っ張り出します。

探す場所問いかけ出てきやすい題材
毎週の繰り返し作業同じ操作を毎回していないかファイルの整理、集計、名前の付け替え
手書きや表計算での管理紙やシートで我慢している記録はないか家計簿、読書記録、在庫の管理
既存サービスの不満「この機能さえあれば」と思うものはないか自分専用の簡易版
家族や同僚の困りごと周りが手間をかけていることはないか共有メモ、予定の調整
調べるのが面倒なこと毎回同じサイトを何件も開いていないかまとめて表示する道具

題材は小さいほど良い結果になります。「自分だけが月に数回使う道具」で十分です。規模の大きい構想は、完成しないまま学習が終わります。

当サイトの無料ツールは、いずれもこの「自分が面倒だったこと」から作ったものです。1つの画面で完結する程度の大きさでも、作りきると学ぶことは多くあります。

目標を見直すタイミング

目標は固定するものではありません。次の状態になったら、変えるべき合図です。

状態判断やること
2週間、まったく進んでいない中目標が大きすぎるさらに小さく割る
調べても手がかりが出てこない難易度が現在地と合っていない手前の段階に戻る
作っているうちに興味が別に移った問題ない目標を書き換える。今までの学習は無駄にならない
完成したが、誰も使っていない想定していた不便が本物でなかった次の題材へ。完成させた経験は残る
目標を達成した次の大目標を1行で書く

途中で目標を変えることを、失敗と考える必要はありません。学んだ内容そのものは次の題材でもそのまま使えます。問題になるのは、目標がないまま漫然と教材を消費し続ける状態だけです。

よくある質問

Q. 目標を決めないと本当に始められませんか。
入門書を1冊やり切るところまでは、目標がなくても進みます。詰まるのはその後です。文法を一周した時点で「次に何をするか」が出てこなくなるので、遅くともそこまでには決めてください。

Q. 目標が大きすぎるかどうか、どう判断しますか。
作るものを画面や機能の単位に書き出してみてください。項目が10個を超えるなら、最初の目標としては大きすぎます。そのうち1つだけを取り出して作りきるほうが、確実に前へ進みます。

Q. 仕事で使う予定はありませんが、それでも目標は必要ですか。
必要です。趣味であっても「何ができたら満足か」が決まっていないと、続ける理由が薄くなります。むしろ趣味のほうが、自分の不便を題材にしやすい分だけ目標を立てやすいはずです。

Q. 目標を人に話すべきですか。
話せる形になっているかどうかが、目標が具体的かの検査になります。説明して相手が「それは何ができるものか」と聞き返してくるなら、まだ曖昧だということです。

Q. 教材の課題を作品にしてもよいですか。
学習としては有効ですが、目標の達成にはなりません。教材どおりに作ったものは、仕様を自分で決める工程が抜けているためです。同じ題材でも、機能を1つ足すだけで自分の作品に変わります。

目標を機能させる記録の付け方

目標を書いただけでは、数日で意識から消えます。毎回目に入る場所に置き、進んだ分を残す仕組みが必要です。難しい道具は要りません。

記録するもの書き方役割
大目標1行。学習を始める画面の見える場所に貼る迷ったときの判断基準になる
今週の中目標週のはじめに1つだけ決める今週やることが確定する
その日できたこと日付+1行。「〜が動いた」「〜の原因が分かった」進捗が目に見える
詰まっていること1行。翌日はここから再開する思い出す時間が減る

「その日できたこと」は、学習時間より重要な記録です。時間だけを残すと、詰まって止まっていた時間まで成果に見えてしまいます。1行も書けない日が3日続いたら、目標の大きさか難易度が合っていないサインです。

記録はテキストファイル1つで十分です。凝った管理ツールを導入すると、その使い方を覚えることが目的にすり替わります。道具選びに時間を使い始めたら、目標から外れています。

独学とスクールで、目標の立て方は変わるか

変わりません。むしろスクールに通う場合こそ、自分の目標を先に決めておく必要があります。

目標がある場合目標がない場合
独学学ぶ範囲を自分で絞れる教材を渡り歩いて時間を失う
スクールカリキュラムのどこが必要かを判断できるカリキュラムを終えても何も作れない

スクールが提供するのは、カリキュラムと質問できる環境です。「何のために学ぶか」は誰も代わりに決めてくれません。受講を検討している段階でも、先に1行を書いてから相談したほうが、自分に必要なコースかどうかを判断できます。

費用をかけずに詰まりを解消する方法としては、エラーが解決できないときの調べ方プロンプトの書き方のコツが使えます。

目標を他人に説明できる形にする

書いた目標が本当に具体的かどうかは、他人に説明してみると分かります。

相手の反応意味やること
「それは何ができるものですか」と聞かれるまだ抽象的具体的な動作を1文で足す
「誰が使うんですか」と聞かれる対象が不明確使う人を明記する
「それって既にありませんか」と言われる題材としては問題ない既存のもので満たせない点を書く
「面白そうですね」で終わる伝わっているそのまま進める
相手が使い方を想像して話し出す十分に具体的最良の状態

最後の状態が目標です。説明を聞いた相手が「じゃあこういう機能もあると便利ですね」と話し始めたら、それは相手の頭の中に完成形が浮かんでいる証拠です。

説明する相手がいない場合

声に出して読み上げるだけでも効果があります。あるいは、生成AIに「この目標で何を作ろうとしているか説明してください」と投げて、返ってきた説明が自分の意図と一致するかを見てください。ずれていれば、書き方が足りていません。

AIへの伝え方はプロンプトの書き方のコツにまとめています。

この記事で使える無料ツール

まとめ

目標は「誰の・何を・どうする」の1行で書けたときに、はじめて学習範囲を決める道具になります。書けないうちは、何を学ぶべきかも、いつ終わるかも決まりません。

大・中・小の3層を置き、小目標は1回の学習で終わる大きさに切る。題材は自分の不便から引っ張り出し、小さいものを選ぶ。この形にしておけば、毎回「できた」で終われるので続きます。全体の進め方はプログラミング独学ロードマップ、必要な時間の見積もりは独学の期間はどれくらいかを参照してください。