HIROBIRO

読者です 読者をやめる 読者になる 読者になる

HIROBIRO

金銭的、精神的自由を目指すブログ。

私が独学プログラミングの挫折を乗り越えられた3つの理由

f:id:hirokun1735:20170209221631j:plain

 

 

 初心者がプログラミングを学ぼうと決意しても、様々な原因によって途中で挫折することはありがちです。私はプログラミングに対する意欲は昔から強かったのですが、独学での学習はモチベーションが続かず、何度も途中で挫折しました。

 

今では仕事でプログラミングをすることもあり、ある程度はできるようになりました。この記事ではプログラミングで挫折を乗り越えられた理由とアドバイスを書きました。

 

理由1  ExcelのVBAから始めた

一番最初の敵は環境設定

初心者がプログラミングで一番最初につまづく壁は環境設定だと思います。実際私が何度もプログラミングに挫折した一番の原因がこれです。

 

ネットで検索すれば環境設定のやり方が書かれた記事が見つかるのですが、なぜかその通りにやっても上手くいかないことが多いです。バージョンが新しくなったために記事の通りに進まなかったり、自分のパソコンの設定の問題で上手くいかなかったりします。

 

ある程度経験のある人であれば、そういうときにどこを見てどう設定を変えればいいか思いつくでしょう。しかし全くの初心者にはかなり厳しいです。

 

環境設定いらずのVBA

プログラミング初心者の一番の壁である環境設定が必要のない言語がありました。それがExcelのVBAです。Excelが入っているパソコンであれば誰でもすぐに使えます。

 

最初こそ少々設定をいじる必要はありますが、他の言語の環境設定の複雑さに比べれば屁のようなものです。これまで他の言語では何度も環境設定に失敗した私でも驚くほどすぐに使えるようになりました。

 

またプログラミングは初心者でもExcelは普段家や仕事で使っているという人は多いでしょう。VBAを学ぶことによってExcelの作業を驚くほど効率化することができるため、プログラミングを学ぶことでどういうメリットがあるか分かりやすいのも特徴です。

 

仕事ですぐに活かすことができた

私は仕事でExcelによるデータ処理を行うことが多いです。私が以前行った仕事は、ある条件の下で求めた数百個のデータに対し、平均値や分散値を求めてグラフを作成するという内容でした。

 

VBA無しで作業を1回行うのにかかる時間は1分程度です。しかし、その作業は千回ほど行う必要がありました。仕事が完了するまでにかかる時間を見積もると18時間ほどかかることが分かりました。私はそのときVBAをかじったばかりでしたが、VBAを使えばこの作業を一瞬で終わらせられるのではないかと考えました。

 

Excel上での計算をボタン一つ押すだけで全て完了してくれるプログラムを作れば、データの取得に多少時間がかかっても1回の作業が10秒もかからず終わるはずです。そうすれば18時間かかる作業が1/6の3時間で終わるはずです。15時間以内にプログラムを完成させれば早く仕事が終わります。

 

そのとき私はまだVBAについてそれほど詳しくなかったので色々調べながら作り始めたのですが、結局5時間ほどで完成しました。一度プログラムを作成しておけば今後似たような作業が出てきたときも対応できるので非常に楽になります。

 

理由2  プログラミングで作りたいものが見つかった

プログラミングはあくまでモノづくりの道具

プログラミングについて学び、if文やfor文や配列を知ったところで結局それらを使って何ができるか分からなければ面白くありません。当然モチベーションも上がらないでしょう。モノづくりをしようと思ってノコギリやドライバーの使い方を学んでも、作りたいものが思い浮かばなければ飽きてしまうのと同じです。

 

私もずっとそのような状況でした。プログラミングの本やネットの記事を見ると簡単な計算のプログラムや適当な文章を色々いじって表示するだけのプログラムがたくさんあります。初心者相手に説明するためのサンプルだということは分かっていても、そのような意味のないプログラムを作ったところで面白くないのです。

 

趣味に使えるプログラム

私が心から作りたいと思えるプログラムが見つかったのです。私は投資が趣味なのですが、投資のための分析プログラムを自作している人が意外とたくさんいると聞いたのです。

 

調べてみるとVBAで投資用のプログラムを作成するために参考になる本があったので買いました。それがこちらです。

 

 

この本を使ってこのようなことができるようになりました。

1. Yahooファイナンスから過去数十年分の株価のデータを取り出してグラフを作成

2. 手に入れた株価のデータを元に、自分で考えた売買ルールの検証

3. 売買ルールについて条件を細かく変えながら検証し、最適な条件を求める

 

自分の勘で売買するよりも、過去数十年分のデータに裏付けされた売買ルールに従う方が安心感があります。まだ利益には結びついていないのですが、この本のおかげでVBAに関してはかなり力がついたと思います。

 

初心者向けの本ではあまり役に立つプログラムが載っていないので、基本的なところを抑えたらすぐに実践的な内容に踏み込んだ方が上達が早いと思います。

 

理由3  自分より詳しい人に質問できた

上達の一番の近道

初心者がプログラミングで躓いたとき、一体何が原因なのか見当もつかないことがあります。これが原因だと思っても全く見当外れの箇所を見ていると、時間を大きく無駄にします。そういうときすぐに聞ける人が身近にいてくれるとかなり助かります。

 

理由1で環境設定の難しさについて書きました。自分でネットを駆使して色々調べても上手くいかないことが、詳しい人に実際に調べてもらうと一瞬で上手くいくことがあります。

 

また上級者からプログラムを見せてもらうと参考になります。そのプログラムを一文一文しっかり理解していけばかなり勉強になるでしょう。もちろん上級者向けの本を読んでもいいのですが、分からないことをプログラムを作成した本人に直接聞けると非常に楽です。

 

まとめ

私が独学でのプログラミングの挫折を乗り越えられた理由は次の3つです。

理由1 ExcelのVBAから始めた

理由2 プログラミングで作りたいものが見つかった

理由3 自分より詳しい人に質問できた

 

VBAで環境設定の壁を突破し、投資用の分析プログラムを作りたいというモチベーションが生まれ、さらに詳しい人に質問できたことで私のプログラミング能力はかなり向上しました。