スポンサーリンク

プログラミングをやってみたいけど、覚えられるか不安。やれば誰でもできるものなの?

 

事務員の友達にもプログラミングに興味を持つ子が増えて、ちょいちょいこんな質問をされます。

私自身も30歳過ぎてからIT業界へ転職したので、そりゃあ苦労しました。

その経験を踏まえ、

  • プログラミングは誰でも習得できるのか
  • どうやって学べばいいのか

を解説します。



挫折しないプログラミングの勉強方法

巷でよく囁かれている

”プログラミングの挫折率は9割”

あながちウソではありません。

 

マジかよ。これじゃあ俺が勉強したところで無理じゃないか

 

ちょっと待ったーーー!!

挫折率が低い習い事なんてあるのかな?

ピアノだってテニスだって職業レベルまで持ってくなら挫折率9割なんじゃない?

 

そう考えたら、プログラマーの方が現実的かもしれませんよ。

 

とはいえ、挫折する人が多いのも事実です。

でもね、それは挫折するような勉強法だっただけかもしれない。

こんなポンコツの私でもなれたんだから、誰にでもチャンスはあると思うなぁ。

 

私のプログラミング学習はゆる~く入りました。

今思えば、それが功を奏したのだと思います。

 

いきなり難しいプログラミング言語を選ばない

今までやったことないんだから全部難しいんじゃないの?
どれ選んでも一緒でしょ?

 

確かにどのプログラミング言語を選んでも難しく感じると思います。

今まで自分の中になかった概念を理解しなければならないからです。

 

例えば「=(イコール)」の意味なんかそうですね。

イコールは、左辺と右辺が等しいと表す記号として理解していた。

1 + 1 = 2

 

うんうん、間違いない。

では、これは?

a = 2

いきなり意味がわからなくないですか?

aと2が等しいわけがない。

「ちょ!待てよ!」

って言いたくなりますよね。

 

ちなみに「a = 2」は、aという変数に2を代入するという意味です。

代入くらいならそこまでハードルが高くないかもしれません。

では、これはどうでしょう?

a = 2
If a = 2 Then
MsgBox "OK"
End If

 

同じイコールでも「代入のイコール」と「判定のイコール」と意味の異なるイコールです。

ややこしく感じる人もいるのではないでしょうか。

 

それでもこのあたりはそこまで難しい話でもないので、慣れればなんてことないです。

 

では、どこで躓くのか?

 

初心者にとって最も壁となるのは、プログラミング自体ではなくオブジェクト指向だと思います。
※オブジェクト指向については後述

ですので、基礎を学ぶならオブジェクト指向の簡単な言語から入ると学びやすいと思います。

 

具体的にはExcelマクロですね。

ややこしい環境構築もいらないし、Excelが入ってるPCなら今すぐ始められますから。

プログラミングの基礎
  • 定数
  • 変数
  • 分岐処理(IF文)
  • 繰り返し処理(LOOP文)
  • メッセージ表示

 

Excelマクロでも、プログラミングの基礎は十分に学べますよ。

教本のみはNG!実際に手を動かしプログラミングしてみる

本を読んだだけでプログラミングを理解した気になるのは危険です。

本を読むとなんとなくできるような気になっちゃうんですよね。

では、本を閉じて実際にソースコードを書いてみてください。

 

うおっ!まったく書けない!
読んでる時はわかってたのに、なぜだ・・・

 

あるあるです。

それどころか、教本通りに書いててもエラーが出ることがある。

なにそれ?って思うかもしれませんが、やってみればわかります。教本通りに書いてるつもりが、どこか間違えてるんですよね。

 

そして、プログラミングに慣れていない初心者は、エラーを見つけることができません。

「.」と「,」が違うだけでエラーになるんだけど、最初は見つけられず目がショボショボしちゃうかも。

 

でも、エラーを潰すのもプログラマーにとって必要なスキル!

落ち着いて自分が書いたソースコードを見直してみてください。

そして、自分はどんな構文エラーを出しやすいのか確認しましょう。

 

プログラミングは実践あるのみです。

本を読むだけではなく実際にプログラミングして覚えてくださいね。

 

エンジニアへ就職したいなら「独学+スクール」がおすすめ

趣味でプログラミング学習するなら、独学のみでいいと思います。

しかし、プログラミングを習得してその道へ就職したいのなら話は別です。

新卒ならまだしも転職ならなおのこと。

 

ある程度のスキルを身に付けてから転職しないと自分が辛くなるだけです。

転職組は未経験でも即戦力が求められますから。

と言うことで、なぜ独学とスクールのセットがいいか解説します。

 

ポイント

厳密には『独学 ⇒ スクール ⇒ 転職』の流れがベストです。

 

独学をすすめる理由

最初からスクールに入ってプログラミングを教えてもらえば済む話じゃないの?

 

それでもいいけど、エンジニア職へ転職する前提で考えるならば、スクールのみはおすすめしません。

なぜなら、IT業界で生き残るためには、自分で勉強する力が必要だからです。

 

ITの世界は技術の進歩がとにかく速い。

今使っている技術がすぐ古くなります。

いつまでも同じ仕組みを使うわけにはいかない。

 

プログラミングに終わりはないのです。

 

だから、教えてもらうのが当たり前の考え方がある人はどんどん置いていかれます。

自分で学ぶ力をつけるためにも、勉強する癖をつけないと。

 

スクールをすすめる理由

とは言っても、独学だけで学べたら挫折率9割とは言われません。

独学でモノにできる人はほんの一握りです。

 

通りすがり
プログラミングなんて簡単だよ。一ヶ月もあれば楽勝

 

なんて豪語するネットの意見は無視です。

本当に習得できたか不明だし、もし本当だとしたらただの天才ですから気にしなくていいです。

 

前述の通り初心者が躓くのは、プログラミング自体ではなくオブジェクト指向だと思います。

オブジェクト指向とはただの概念であって、明確な説明がありません。

なんとなくこうかなって理解で曖昧なんです。

 

試しにオブジェクト指向がどんなものかググってみてください。

ストンと腑に落ちる説明はありませんから。

 

そんな中でオブジェクト指向を独学するには限界がある。

 

教本にありがちなのがこれ。

Carクラスを作ったら"車を作ってみましょう"って例題。

ワクワクしながら読み進めると

Car car = new Car();

ってやつ。

は?なにこれ?

これで車が作れたとか意味不明ってなりません?

 

だから独学でなんとなく基礎を覚えたら、スクールでオブジェクト指向の言語を学んでください。

代表的なオブジェクト指向の言語
Java、C++、C#、Ruby、PHP、Python

 

スクールの最大のメリットは、何度でもわかるまで聞けることです。

 

最初は鬼のようにエラーが出ます。

初心者がググるだけでエラーを潰せるかっていうとかなり厳しい。

 

概念やソースを書くコツ、エラーの潰し方までプロが教えてくれます。

一人ぼっちで勉強するより、教えてくれる人がいる方が挫折しにくいですよ。

とりあえずプログラミングがどんなものか試してみてはどうでしょうか。

 

 

スポンサーリンク

まとめ

プログラミングは誰でも覚えられるとは限りません。

しかし、入り口のハードルを低くして、難関はプロに教えてもらうことによりかなり楽に覚えられると思います。

 

会社に入ってしまうとほぼOJTで学ぶことになるので、ますます挫折率が高くなる。

就職する前にできるだけ自分の手を動かしてプログラミングに触れてみてください。

そうすれば、プログラマーという職業が自分に合っているか判断できるし、土台を作ってから職に就けます。

 

スポンサーリンク
おすすめの記事