こんにちは、retroidです。
今回は「挫折しないプログラミングの始め方」ということで書かせていただきます。
挫折した過去
いまじゃブログで(初心者に毛が生えた程度にもかかわらず(笑))プログラミングについて紹介しているretroidですが、私自身、過去に1度プログラミングに挑戦し、挫折した過去があります。
私が挫折したのは、言わずとしれたC言語でした。
なにに役に立つかわからない辛さ
プログラミングの辛いところは、選択言語によっては、基礎学習のときは、学んだ知識が何に役に立つのかわかりにくい点だと思っています。
PythonやRubyなどのプログラミング言語と比較して、C言語はとっつきづらく、基礎学習として学ばなければならないことが欠点です。
基礎学習の長い言語は、「この技術はこれに役に立つ!」と分かるまで時間がかかります。
これが大変つらいのです。
この理由で僕はC言語に挫折しました。
プログラミングへのモチベーションってなんだろう?
プログラミングを始める人にまず考えてほしいのは、「自分がプログラミングをしたい理由はなにか?」ということです。
プログラミングを何でやりたいのか、そのモチベーションを自分に問うてほしいのです。
おそらく大抵の人は、「パソコンで行う作業を自動化して楽したいから」とか「仕事のキャリアアップに利用したいから」でしょう。
要するに、 プログラミングを学ぶことによって、現状の生活をより良いものにしたいと思っている わけです。
では、こういう人が、基礎学習の時間の長い言語から学び始めたらどうでしょう?
おそらく、多くの人が「これ、何に役に立つかわからん、やめた」となるでしょう。
したがって、プログラミングを始める際、言語選択で重要なのは、できるだけ早く実践に使えるような言語を第一言語に選択することだと思います。
早く実践できれば、それだけプログラミングを始めたことによる効果を早く実感できますし、それがモチベーションになって学習がどんどん進みます。
そんな意味で、PythonやRubyはおすすめできる言語だと思います。
やる気の賞味期限を伸ばすには?
新しいことにチャレンジするとき、そのモチベーションというのはなかなか長続きしないのが常ですよね?
プログラミングも例外ではありません。
そのなプログラミングへの学習意欲を長続きさせるコツは、「ところどころで、プログラミングにチャンレジすることによる恩恵を受ける」ことだと思います。
Rubyはやってないのでよくわからないですが、Pythonを学べば、ちょっとしたファイル整理の自動化から、Office(Word、Excel、PowerPoint)操作の自動化、ウェブアプリケーションの作成、統計処理の自動化、書類管理システムの作成(Sphinx)など、多種多様なことができます。
このようなことは、学び始めてから1日〜1週間でできるものもあれば、数ヶ月単位時間をかけなければいけないこともあります。
学ぶと恩恵の受けられることが、学習をはじめて比較的初期でできることから、かなり時間がかかることまで用意されている、これがPythonなどの言語を第1言語に選ぶメリットだと思います。
本などで基礎を学習するついでに、これらの簡単にできそうなものから挑戦してみれば、プログラミングのメリットを少しずつ享受することができます。
すると、その度にやる気が再装填されます。
気づいたらプログラミングは、自分の日常生活の一部になっているでしょう。
これが、やる気の賞味期限を伸ばす方法です。
ようするに、 最初の言語選択を間違えるな と、 こまめに挑戦しろ 、ということです。
作りたいものを先に決めて始めるのが最善手だとおもふ
必要性ほど人を駆り立てるものはありません。
では、どんな時に人はプログラミングに必要性を感じるのでしょうか?
それは、作りたいものが決まっているときです。
これは、具体的であれば具体的であるほど良いです。
なぜなら、具体的に作りたいものが決まれば、あとは根気強くネット、書籍を漁って組んでいけば、ある程度のプログラムは組めるからです。
僕の以前作った書類管理システムもそんな感じの過程でできました。
僕がこれまでに作ったプログラムの中では、例えば、
- 日本語の英訳をGoogle翻訳で大量に自動でやりたい
- Markdownを使って、簡単にきれいなPDF資料を作成したい
- Markdown を使って、簡単にPowerPoint資料を作りたい
といったことを頭の中に具体的に思い描きました。
その結果、どのプログラムも形にできました!
今はGoogleでちょっと工夫して検索すれば、知りたい知識は殆ど手に入るようになっています。
やる気次第でどうにでもなります。
でも、やる気を出す対象があやふやでは頑張れませんよね?
ということで、 対象を具体化するためにも、作りたいものを決めるのはとても大切 です。
そして、自分が便利だと具体的に思ったものを作り続けることが、プログラミングを続けるコツだと思います。
↑いまでは、プログラミング関係の本をこんなに読むようになりました(^^)↑
実はちょっとC言語の学習も再開しました!
Pythonで慣れているおかげで、学習した内容の定着も良好。。。な気がします。。。!(笑)
まとめ:なぜ挫折しなくて済んだのか?
まとめ?というのにふさわしいかどうかはビミョーですが、挫折しなくて済んだのは、
- 選択した言語が適切だったから(すぐに結果の出る言語だったから)
- 作りたいものを具体的に描き、挑戦し続けた結果、絶えずやる気が充填されたから
の2点かな?と思います。
Rubyもいいですけど、ひとまずPythonからプログラミングを始めてみてはいかがでしょうか?
あとでPython初心者へおすすめな本を紹介しようと思うので、気が向いたら読んでみてください。
それでは今日はこのへんで失礼します。