どもども~、あべしんです!
- プログラミング学習で何度も心が折れる…
- 少し学習しただけで一気に疲れる…
- 一度頑張っても次の一歩がなかなか踏み出せない…
このような挫折経験がある人は多いはず。
当てはまる方、そもそも挫折に繋がる学習をしていませんか??
もしそうなら何度も挫折してしまうのは当然です。
僕も初学者の時は同じ間違いをして何度も挫折した経験があります!
今回は、「今すぐやめるべき挫折に繋がる学習」について詳しく解説します。
この記事で下記のことがわかります。
- 挫折しやすい学習の進め方とその理由
- 学習の負担を減らすコツ
挫折しやすいプログラミング学習
最初に結論を書きます。
- 暗記
- 必要以上のインプット
- 学習計画に固執する
順番に見ていきましょう。
暗記
プログラミング学習において、暗記は恐ろしく非効率です。
プログラミングには専門用語やルールが星の数ほどあります。
- 言語ごとの規約やスタイル
- ライブラリモジュールの名前や使い方
- エラーの種類や原因
それらを片っ端から暗記するのは無理があるし、そもそも暗記する必要性もありません。
学校の勉強や試験とは違いますからね!
やる意味が無いので、暗記は絶対にやめましょう。
と思う方もいるかもしれませんが、頻繁に使うものは意識しなくても使ってるうちに体で覚えたりするので問題ありません。
最初から暗記することに労力を費やす必要はないんです。
大事なのは頭で覚えることではなく、「必要な情報を必要な時に引き出せること」です。
要するに自分専用のカンペを作ればOK。
プログラミングはカンペが重要
学校と違って、プログラミングはカンニングOKです。
むしろできる人ほどカンニングが上手いです。
上手くカンニングするためには、日頃からちゃんとカンペを作っておくこと。
- エクセルで学習項目ごとにシートを作ってメモする
- ソースコードにコメントを書いておく
- 学習した内容をWebサイトに載せて公開する
ちなみに僕はソースコードにコメントを書きまくってます。
別に仕事じゃないので好きにメモっても怒られませんし、実際に動いたソースコードと一緒にメモした方が後から見返した時にわかりやすいからです。
(おすすめですよー^^)
せっかく学んだのに、後になってまた同じように調べ直すのは効率が悪いですよね。
カンペを作っていない方は是非作りましょう。
情報の引き出しが楽になると学習も捗ります。
必要以上のインプット
インプットももちろん大事です。
ただ、必要以上に延々とインプットしても意味がありません。
インプットばかり必死で、アウトプットが少ないというのはあるあるのパターンです。
では、なぜみんなインプットばかりに時間を割くのか。
結論、楽だからです。
- 読む
- 聞く
- 眺める
このようにインプットは受動的なものなので楽なんです。
だから辛さも無くいくらでもできます。
しかし、楽な事ばかりやっていてももちろん成長はしませんよね。
よく目にする「アウトプットしないと成長しない」はその通りです。
特にプログラミングにおいては、「知っている」と「プログラミングができる」は別物です。
知っているだけではプログラミングそのものの成長が感じられず、挫折するのも当然です。
インプットとアウトプットはセットで行う
アウトプットできる状態でのみインプットしましょう。
具体的には、エディタが開いてあってすぐにコードが書ける状態です。
こうすると無駄なく労力と時間を使えます。
よくインプット何割、アウトプット何割みたいな話がありますが、僕は正直意識する必要はないと思っています。
あえて言うなら「1:1」でいいです。
「使うかわからない知識を詰め込んで、そのうえでバランスも意識して…」
こんな学習をしていてはしんどくなるのも当然です。
バランスなどは気にせず、インプットしたら2秒後にアウトプットするくらいのスタンスでやってみましょう。
- インプット
- アウトプット
- カンペに残す
このサイクルを回しまくった方が、結果的に成長できます。
「楽しくないから挫折する…」という方、無駄なインプットを延々とやっていませんか?
もしそうならそれをやめるだけでもかなり負担が減るはずです。
学習計画に固執する
学習計画に固執しすぎるのも挫折要因の1つです。
なぜなら、プログラミングでは計画通りにいかないことばかりだから。
ある程度プログラミング経験がある人ならわかることですが、
プログラミングは、うまくいかないものを解決する作業が大半を占めます。
- 環境構築が上手くいかない…
- エラーがなかなか消えない…
- 動くようになったけど期待する動きと違う…
慣れるまでは、ほぼ間違いなく計画通りにいきません。
それなのに計画に固執するというのはあまり意味のない行動ですよね!
また、人によっては他にもデメリットがあります。
- 計画を立てて満足してしまう
- 不要な労力・時間を使ってしまう
- 計画通りいかないとネガティブになる
ある程度慣れるまでは、計画にそれほどメリットはありません。
特に「とりあえず計画を立てる」は絶対におすすめしません。
その日どこまでやるかだけを意識する
長期間の計画ではなく、その日1日でどこまでやるかだけを決めるというのがおすすめです。
要は1日分の目標。
- 1つの関数を作りきる
- 書籍の1章分のコードを書いて動かす
この方が無駄なく、且つメリハリもつけれます。
「その日だけ全力でやる」を繰り返すイメージですね!
そもそも、長期間の計画を立ててその通り遂行できるのであれば、ある意味プログラマーレベルであると言えます。
学習時点でいきなりその域に挑戦する必要はありませんよね。
最後に
学習のやり方は人それぞれなので、今回の内容が必ず全員に当てはまるわけではありません。
ただ、僕はこれらのことをやめてから実際挫折しなくなりました。
今回紹介した内容に当てはまった方、一度学習の進め方を見直してみましょう。
コメント