プログラミングの『才能』とは何か?

      2017/10/15

プログラミングの才能とは何か?読者の方から、

「私にはプログラミングの才能があるんでしょうか?向いているでしょうか?」

という相談を受けることがよくあります。

「才能」という言葉はスポーツの世界でよく使われますよね。

「あいつはサッカーの才能がある」という場合、

  • 走るのが速くてスタミナがあるなどの身体的・フィジカルの素養
  • 狭い空間を通すスルーパスを正確に蹴る技術
  • 「あそこにパスを出すスペースが空いてるな」などと空間を把握する能力・センス

等があります。

これらを総合的に見て他の人より秀でてる人を「才能がある」と言いますよね。

では、「才能のあるプログラマーとはどういう人なのか?」について考えていきましょう。

プログラマーにおけるフィジカルな素養

まず、フィジカル的なものから考えてみます。

プログラマーに必要なフィジカル的な素養とは、「座ってコツコツと作業する力」です。

じっと座ってるのが苦手な人っていますからね。そういう人は体を動かす仕事の方が向いています。

コードを根気よく書いていくには、じっと座っていられるという身体的素養だけじゃなく、コツコツ作業を積み重ねることを苦としない精神的な素養も必要です。

ソフトウェアを完成させるまでには、長い道のりがあります。

頭に浮かんだロジックを打ち込んだら、一発で正しく動くコードが書けたとなることはめったになく、書いて動かしては、間違いに気づき修正してまた動かして動作を確認して…、という繰り返しによってソフトウェアは完成していきます。

このような作業を根気よくコツコツと続けられる心と体が必要なんです。

プログラミングのセンスとは何か?

頭の中にどれだけたくさんのロジックを積んで正確に再現できるかでしょう。

チームで開発するソフトウェアは規模的に一人で全てを把握するのは難しいですが、優れたプログラマーは、大量のプログラムロジックを頭の中で再現して「ここがおかしい」とか「ここを変えればもっと高速化できる」といった発見ができます。

このような能力は経験を積むことでも、身につけられますが、元々持ってる素養によるものもあるでしょう。

才能うんぬんより、一歩ずつ上達していけばいい

頭の中で大規模なロジックを再現できなくても、ソースコードをひとつずつ根気よく調べていけば、バグ修正や性能チューニングはできます。

世界のトップレベルになるとかでなければ、大抵の才能は、努力でカバーできます。

スポーツでもトップレベルのプロ選手になるのではなく、市内の大会で優勝するレベルであれば、努力すれば到達できそうですよね?

プログラミングも同じで、

  • 知識をひとつひとつ時間をかけて身につける
  • 時間をかけて一歩一歩作業をする

地道な努力を積み重ねることで偉大な仕事を成し遂げられます。

ですから、「自分にはプログラミングの才能があるかな?」と考えるよりもプログラミングが好きならプログラマーになればいいんです!

プログラミング初心者におすすめのサービス
1. 講師から対面で学びたい派なら

プログラマカレッジをおすすめします。ProEngineerという転職エージェントが運営しているプログラミングスクールです。20代限定なんですが、無料で受講できて、修了後、就職支援もしてくれるんです。最高過ぎですよ、これ!!就職の紹介料を企業からもらえるのでスクールを無料にできるんでしょうね。すばらしいシステムだと思います!

30代以上の方には

プログラマカレッジは20代限定なので30代以上の方にはWebCamp Proをおすすめします。受講料の返金保証がついているし、毎日11時〜23時まで通い放題なのでとてもいいと思います!

2. 自宅で学びたい派なら

「就職保証付き」オンライン就職予備校をおすすめします。Javaエンジニアコースでは就職保証がついているのでプログラマーとして就職したい方にはぴったりです。Javaエンジニアの求人ってめっちゃ多いし、求められる技術レベルもそこまで高くないのでちゃんとした教育プログラムなら就職保証できるだろうなとJavaエンジニア経験者の私も思います。

3. つまづいた時に質問したくなったら

プログラマー専用の質問サイトteratailをおすすめします。 つまづいた時にteratrailで質問すれば教えてもらえます。

これらのサービスを活用すれば、全くの初心者からでもプログラミングをばっちり出来るようになると思います!レッツトライです!

 - 勉強法 , ,