こんにちは、ITベンチャー企業で働いていたおしま狩人です。
プログラミング学習が一種のブーム(?)のようになっていますが、あなたはしっかりと目的を持って学習に取り組めている or 取り組もうとしていますか?
プログラミングでいう目的とは、わかりやすくいえば
いちごの収穫をロボットにさせるためのシステムを開発する!
というものです。
このように明確な目的があれば、プログラミング言語の習得などを順序立てて実行しやすいです。
ですが、
とくに作りたいものはないけど…プログラミングって勉強してたら役に立ちそうじゃない?
時間があるからプログラミングに挑戦してみたい!
というような、プログラミングをどう使うかがはっきりしていない状態で学習を開始する方が多いように感じます。
このようなモチベーションでプログラミング学習すると…途中で挫折してしまう人が少なくありません。
ということで、明確な目的がない場合は、目標を目的化することでモチベーションを維持する方法を紹介していきますね。
目的と目標とは
目的とは到達したい地点のことあり、目標とは目的に到達するための手段や方法のことです。
簡単にいってしまえば、プログラミングを学習すること自体を目的化することで、目標→目的へすり替えてしまおうということです。
前にも話しましたが、理想は以下のような目的と目標の設定です。
- いちごの収穫をロボットにさせるためのシステムを開発する…目的
- プログラミング言語の習得が必要…目標
ですが、山のないところに登山する人はいません。
明確な目的がないのであれば、プログラミング学習を目的とすることで、登るための山をイメージしてみてはいかがでしょうか。
目的を達成した後にみえてくるものがある
いちごの収穫をロボットにさせる明確な目的を富士山とし、プログラミング言語の学習を地元の標高が低い山と置き換えてみます。
富士山を目指す人でも、最初からいきなり富士山に登る人はそういないでしょう。
まずは近場にある山で慣らすなどのトレーニングが必要です。→目標
富士山に登る目的がなくても、とりあえず地元の山に登ってみようとした人はその山を登ること自体が目的になります。→目標の目的化
そして標高の低い地元の山を登ったあとに
おれ、富士山に登ってみたい!
と思い立つかもしれません。
比喩がすこし極端になってしまいましたが、
標高の低い山を登る目的を持つことで、目的を達成した後に新たな目的が見えてくるということがよくあります。
なにか目的に向かって進んでいく中で学び、気づくことも多いですしね。
あれこれと悩むのもいいですが、こじつけでもいいので方向性を決めて、行動することがとにかく大事だと思っています。
まとめ
プログラミング学習の意味や目的が見出せずに迷っている人が多いので、その解決法を紹介しました。
目的や目標という概念的な話でわかりにくい部分があったかもしれませんが、参考にしていただけると幸いです。
これから明確な目的を持たずに
プログラミングを学んでみたい!
と思っているのであれば、将来性の高いプログラミング言語・Pythonを学習してみるといいですよ。
AIや機械学習、IoTなどを開発したり、簡単なデスクトップアプリもPythonでつくることができます。
おしま狩人でした。