SE,プログラマー

初めてプログラミングを学ぶ時スクールや本を買うよりも大切なこと3つ

この記事はこんな悩みの人に向けて
書いています。

  • プログラミング学びたいけど
    どうしたらスキルが身に着くの?
  • 何から始めたらいいか・・・
    とりあえずスクール入った方がいい?
  • どのプログラミング言語から
    始めたらいいんだろうか・・・。

この記事は、普段プログラミングに触れ仕事をしている私が

  • プログラミングが上手に作れる人の特徴
  • プログラミングスキルを身に着ける方法

を紹介しています。

 

もたろう
もたろう
今の時代は手に職をつける時代だ!!

 

なんて思い、IT業界に入った私ですが

  1. プログラミングが上手に作れる人と
  2. プログラミングが作れるけど下手な人

と、二種類のタイプに分類されます。

 

そんな私が、プログラミングが上手に作れると思った理由は

  • 何を作りたいのかハッキリしている人
  • フローチャートが描ける人
  • 「なぜ?」を追求できる人

この3つです。

 

1つずつ紹介したいと思います。

※あくまで私の考えなので、参考程度に読んでください。

何を作りたいのかをハッキリしている人

私の肌感覚になりますが、プログラミングで何かを作るということは

絵を描くのと似ていると思います。

 

絵を描く際には

「どんな絵を描くか」

を事前に考えたりイメージしながら描いていくでしょう。

 

でなければ絵は描けませんからね。

 

プログラミングも同じです。

 

自分がプログラミングで何を作りたいのか

プログラミングを使って何をしたいのか

 

これがハッキリしていないと、プログラミングを覚えるスピードも遅くなると思います。

 

逆に言ってしまえば

 

自分がプログラミングでどんなモノを作りたいのか

プログラミングで何をしたいのか

 

これがハッキリしている人は、プログラミングを覚えるのが早いと思います。

 

作りたいものは何でもいいんです。

 

Q:ホームページを自分で作ってみたい

A:言語はHTML/CSS、JavaScript、PHPあたりでしょう。

 

Q:スマホアプリを作りたい

A:iOS(iPhone)なら言語はSwiftでRubyとかJAVAがいいかも。

 

Q:今の仕事エクセルを使うから自動化したい

A:言語はExcelVBAで慣れてきたらAccessVBAでVB.netとかC#も良いかもです。

 

作りたいものによって、使用する言語が変わってくると思います。

 

ただ

 

もたろう
もたろう
作りたいものなんて何もない!

ただプログラミングスキルを身につけたい!

 

という人もいると思います。

 

そんなあなたにオススメしたい言語は

JAVA

です。

 

実は私は、技術者でありながらIT業界の営業活動も行っていた時期もあり

新規企業開拓に向けて飛び込み営業もやっていました。

 

そこで企業の営業担当や社長さんが9割型言うのが

「やっぱりJAVA使える技術者が欲しいね」

です。

 

それくらいJAVAはメジャーで使われている言語です。

 

なので、特に作りたいものがない人は

JAVA

を覚えておけば損はしないと思います。

フローチャートが描ける人

フローチャートとは、一連の動作を図で描いたものです。

例えば、カップ麺を作るまでをフローチャートにしてみたいと思います。

人間の場合

人間に対してフローチャートを描く場合は、こんな感じでしょうか。

おそらく初めてカップ麺を作る人も

フローチャートでこう描いてあれば作ることが出来るでしょう。

カップ麺に作り方が書いてありますからね。

ロボットの場合

続いてロボットにカップ麺を作ってもらう場合です。

先ほどのフローチャートを見てみましょう。

おそらく、このフローチャートでロボットにカップ麺を作ってもらうと

高確率でバグが出ます。

 

その原因は

  • カップ麺があるか確認する場所がどこか分からない
  • どのカップ麺を指しているのか分からない
  • カップ麺がない場合、どこから買ってくるのか分からない

などなど

人間だったら臨機応変に

 

もたろう
もたろう
カップ麺?そこらへんにあるでしょ?

 

もたろう
もたろう
カップ麺が無い?コンビニとかそこらへんのスーパーにあるでしょ?

 

なんて感じで少し考えればわかりそうなことでも

プログラミングを使用してロボットに作らせるようにした場合は

事細かく書かなければバグになってしまいます。

 

そのため、事前にフローチャートを描いて

  • こういう場合にはどういう処理が必要か
  • このケースは想定できるのか

など、自分が作りたいものをイメージしやすいように

フローチャートを描けるようになった方が良いです。

 

フローチャートが描けるようになると

 

もたろう
もたろう
あれ?こういう時どうなるんだっけ?

 

と、プログラミングを作っている時に分からなくなりにくいですし

もしプログラミングを書いていて

 

もたろう
もたろう
あれ?これってどうやるんだろう?

 

なんて時に、フローチャートを元にネットで質問したり

周りのプログラミングが出来るひとに具体的に質問が出来るようになります。

 

フローチャートが無いと

自分が今、なにを作っているのか分からなくなって

倍の時間がかかりやすくなりますよ。

「なぜ?」を追求できる人

最後に一番大切なことは

「なぜ?」と思えるかどうか

です。

 

初めてプログラミングを書いて

バグが出ないことは、ほぼ100パーセントあり得ません。

 

なんかしらのバグは出るものだと思っておいた方が良いでしょう。

 

そのバグを解決する方法は

「なぜバグが出たのか?」

 

と原因を追究しなければ、解決しません。

 

なぜ??

 

と思うことが、プログラミングを作るうえで最も大切なことでしょう。

何のためにプログラミングスキルを身に着けるのか?

あなたは今、プログラミングをこれから学ぼうとしていませんか?

 

仕事としてプログラミングスキルを身に付きたい

なんとなくカッコイイからやってみたい

面白いゲームを作りたいから学びたい

 

など、色んな理由があると思います。

 

そんなあなたが、効率よくプログラミングスキルを身に着けれるように

この記事に描いてあることを参考に勉強してみては、いかがでしょうか?

 

余談ですが、プログラミングスクールや本を買うよりも

自分の作りたいシステムやソフトを手さぐりで作った方が

スキルを身に着ける速度が速くなりますよ。

 

作り方はネットで検索すれば無料で調べられるので

  • 自分はプログラミングを通じて何を作りたいのか
  • 作るためにはどんなフローチャートが必要なのか
  • 実際に作ってみてバグが出たがなぜバグになったのか

これを繰り返していけば、プログラミングスキルを身に着けることができると思いますよ!