こんにちは。しすてくです。
プログラミングって勉強期間、長いですよね。
コードを自分で思い通りに書けるようになるには
最低でも半年くらいは掛かります。
この間に、いろいろな課題、いろいろな悩み、いろいろな苦難がやってきます。
これを跳ねのけないと、プログラミングスキルが身に付きません。
ただただ行動していれば良いわけではないんですよ。
このままでは途中で挫折しそうな感じがしてきましたね。
そんなわけで、挫折しないようにモチベを維持する方法を
話していきたいと思います。
そもそも、「モチベーション」って何なのか。
結構、何となくで言ってません?モチベって。
モチベーションは直訳すると「動機」です。
普段使っている意味合いだと、「やる気」、「意欲」になりますね。
あとは「動機付け」。
意味は分かったところで、次は「やる気」について。
これも意外と何なのか、説明できる人少ないと思います。
「やる気」というのは、
何らかのゴールへ向かう行動を駆り立てるもの、です。
「動機付け」も同じですね。
科学的な観点から言うと、
やる気は、脳から分泌される「ドーパミン」という神経伝達物質によってもたらされています。
つまり、ドーパミンが分泌されないと「やる気」が低下するということです。
ここまで来たら、やる気の出し方が分かってきますね。
ドーパミンを分泌するように行動すればいいんです。
では、「やる気」を出し続けるにはどうしたらいいのか?
についてですが、
「目標達成」をし続ける。
これです。
まずドーパミンは目標や仕事など何かを達成したときに分泌されます。
そして「やったぞ!」と快感・幸福感の気持ちになります。
すると、脳内ではその行動と快感が結びついて、再び快感を得られるように「やる気」が出てきて、行動を促します。
これを循環してやっていくと、やる気が続きます。
①目標達成 ←
↓ ↑
②ドーパミン分泌 ↑
↓ ↑
③「やる気」発生 →
目標を達成しながら、ドーパミンを出し、やる気を継続させる。
こんなイメージです。
別の言い方をするなら、
「自分が成長していることを感じる」です。
これを感じていると、勉強が捗りますよ。
じゃ、プログラミング学習ではどんな感じやればいいのかを
説明しますね。
まずは目標を立てる必要があります。
今回は「プログラミングの基礎をマスターする」をゴールにしましょう。
ここで注意なのは、
最初の目標を「プログラミングの基礎をマスターする」にしてしまうことです。
理由は、達成までに数か月かかるため、
やる気が途中で尽きてしまう可能性があるからです。
で、何をすればいいかと言うと、
目標(ゴール)を分割して、小さな目標を作ることです。
イメージはこんな感じ。
■ゴール:プログラミングの基礎をマスターする
・やること①:変数について理解する
・やること②;データ型について理解する
・やること③:if文を使ったことが書ける
・
・
・
小さな目標にすることで、達成するまでの期間が短くなり、
成長している感じが途切れず、やる気・モチベが維持できます。
私もプログラミングの勉強を始めたころは、
今日はif文のところ勉強しよー。
で、参考書読んで、サンプルコードを書いてみて、
if文ってこう書いたら、こう動くんだー、とか
if文でこう書いたら、エラーになるのか、とか。
そんな感じで学んでました。
時には、
ここにリストの変数入れたら、どうなるんだろと
いろいろ試してみて、処理の理解をしていました。
最初のうちは、こんな感じでもモチベ続きます。
サンプルコード書いて、動いたー(達成感)
ちょっとこれ試してみよー。あ、これはエラーになるのね。理解した(達成感)
参考書読んで、リスト変数に入ってる要素の存在を確認する場合はこう書くのか。なるほどねー。コード書く。納得。(達成感)
初めてなので、小さなことでもいろんな達成感を感じることができます。
(ある程度スキル身に付くと、当たり前になるので達成感をほぼ感じません。ドーパミン出ません泣)
小さな目標を設定することで、モチベが維持できるのです。
なので、プログラミング未経験の方でシステム作るんだーと言って、
基礎を飛ばして、長めのサンプルコードから学び始めると、ほぼ挫折です。
コード読んでも、具体的に何をやっているかわからない。
そして、作りたかったシステムが全然できない。
結果、目標達成できない。やる気なくなる。
目標は必ず、今の自分にとって、できそうだなと思える内容で
設定してください。
プログラミング未経験の方なら、
変数ってどう使うものだとか、データ型ってどんなものがあるのかとか
その辺からです。
基礎の理解ができたのなら、
50程度でできるコードを書いてみる。
自分でデータ処理も考えられて、100程度のコードが書けるのなら、
作ってみたいシステムのコードを書いてみる。
こんな感じで、少しずつレベルアップしながら、
目標設定するようにしたいですね。
目標設定する場合も、逆算思考が有効です。
こちらの記事もご覧ください。
モチベ維持する方法、わかりましたでしょうか。
目標設定の仕方がわからない。
僕の場合、私の場合は、どんな目標にすればいいかわからない。
そんな時はご連絡ください。相談に乗りますので。
プログラミング学習において、お役に立てれば幸いです。