「プログラミングができるようになりたい!」
「でもやりたいことがないんだよな、、、」
「結局プログラミングに挫折してしまった、、、」
プログラミングを学習している人でこういったお悩みを抱えている方は多いんではないでしょうか。
私はプログラミング学習で挫折しまくってきたので、この気持ちすごくわかります。
この記事の内容
プログラミング学習において
- 目的の大切さ
- 必要性について
- 目的も必要性もない場合の解決策
この記事を書いている人
- プログラミング学習に何度も挫折してきた
- 大学で少しだけプログラミングをかじった
- スキルアップのためにプログラミングを勉強中
この記事を読むことで、プログラミング学習における行き詰りを解決する糸口が見つかるかもしれません。
また、この記事は5分程度で読み終わります。プログラミングスキルを身に着けたい方はぜひ最後まで読んでみてください。
目的の大切さ
何事においても目的は重要だとよく言われますよね。
とりわけ、プログラミングにおいては目的がとても大切です。その理由についてまとめていきます。
プログラミングは手段
プログラミングは手段です。目的ではありません。
「プログラミングができるようになりたい!」と思ってプログラミング学習を始める人もいるかと思います。私もその一人でした。
しかし、プログラミングはあくまでコンピュータに命令をだすための”言語”であり、目的を達成するための手段です。
私は漠然と”プログラミングできるようになりたい”と思って、webアプリの作り方を勉強したり、スクレイピングを軽く触ってみたりしました。しかし、肝心である”目的”がなかったため、長続きしませんでした。
それに、興味のないことをプログラミングでちょこちょこ触っていたので、1か月後には勉強したことのほとんどを忘れていました。目的を達成するために1つのことをじっくりやることで、プログラミングスキルを自分のものにすることができるんだと今では痛感しています。
このように、”プログラミングができるようになる”という目的を達成するためには、また、別で目的を探す必要があります。
何をしたいかを考える
目的を探すときの方法として”何をしたいかを考える”というものがあります。
やはり、自分の興味があることを目的にした方がモチベーションが上がります。
プログラミングでやりたいことが明確にある人は良いんですが、そうでない人もいますよね。
私はなんとなく、「アプリを作れたらいいなー」「ゲームとか作れるんだろうか?」とか考えていて、本を読みながら勉強してました。しかし、プログラミングの難易度と、完成品のクオリティの低さにやる気をなくしてしまいました。
このようにやりたいと思ったことに挑戦してみても、やってみるとそれほど楽しくないことに気づいて、途中でやめてしまうことになる人もいるかと思います。
しかし、プログラミングでやりたいと思ったことを”とりあえずやってみる”ことは良いことです。やってみて楽しかったら続きますし、そうでなかったら続かないだけです。
必要性について
プログラミングを使う”必要性”があったからプログラミングが得意になったという人が多いと思います。
私も少しではありますが、必要性があったためにプログラミングスキルが上達した経験があります。
業務で必要
一般的なものは仕事の業務でプログラミングを使う必要がある場合です。いわゆる”プログラマー”と呼ばれている人たちです。
彼らは仕事でプログラミングを使わないといけない環境にいるために、実務経験の中でプログラミングスキルを上げることができます。
私は仕事ではないんですが、大学院にいたときに、実験データを解析するためにプログラミングを使う必要がありました。
プログラミング手法と統計学や数値解析を勉強しながら、亀みたいな速度でしたが、なんとか自分でコードを書いてデータ解析を行いました。
このように、必要にかられて、プログラミングを使う機会があれば、嫌でもプログラミングスキルが身につきます。
目的を達成するために必要
目的を達成するためにプログラミングが必要になる場合があります。
この記事を読んでいる人のほとんどが目的を見つけて、それを達成するためにプログラミングを使う必要性を作ることになると思います。
しかし、自分で作った”必要性”は強制力が弱いため、あまり役にたたない場合が多いです。
私はプログラマーではないので、プログラミングスキルを身につけるためには基本的に仕事時間外で努力しなければいけません。
そのために、目標設定をしてきました。webアプリ、スクレイピング、ゲーム、データ解析、自動処理、いろんなことにトライしては挫折を繰り返してきました。
やっぱり、自分1人で始めたことは1人でやめられるんです。
このように、プログラミングを使う必要性を作っても、強制力が弱いため、結局は続かない場合が多いです。
(目的を作ることで自分に合ったものを見つけられる可能性もあります。)
目的も必要性もない場合
プログラミングでやりたいことがなく、仕事などで使う機会もない場合はどうすればいいかについてまとめていきます。
やりたいこと(目的)を探し続ける
やりたいことを探し続けるということが1つ目の手段です。
数を撃てば当たるじゃないですけど、興味があることを1つ1つ実行していったら、いつかプログラミングで本当にやりたいことが見つかるかもしれません。
しかし、途中で心が折れて、プログラミングを嫌いになる可能性もあるので個人的にはあまりおすすめしません。
私は興味のあることを1つ1つやってみましたが、どれも途中で投げ出してしまいました。
やっぱり、自分で作った目的は長続きしませんでした。(私がそういう人間だと言ってしまえばそれまでですが、他の人にも当てはまる部分もあるかと思います。)
コンテストに参加する
私が現在やっていることはコンテストに参加することです。コンテストではプログラミングを使って出したスコアや作品で競い合います。
コンテストはそれ自身が目的になります。
例えば、アプリを作りたい場合はどんなアプリを作るかを考える必要があります。そして、そのアプリを作ると次のアプリのアイデアを考えます。
しかし、コンテストではテーマがあり、そのテーマに沿ってプログラミングを行います。1つのテーマが終わったら新しいテーマに挑戦することができます。
また、コンテストの良いところは他の参加者がいることです。コンテストで順位がでたり、掲示板に書き込んだりすることで、他の参加者がいることを実感できるため、孤独な学習ではなく、オープンな経験を積むことができます。
まとめ
今回はプログラミング学習における目的の大切さをメインに私の経験にもとづいて思うところをまとめました。
正直、プログラミング学習は難しいです。しっかりとした目的があれば、継続することができるかもしれません。
目的のないプログラミング学習は相手のいない英会話学習と同じです。
ぜひ、工夫を凝らしてプログラミング学習に取り組んでみてください。
以上です。