プログラミング道場Top

プログラミングに才能は必要なのか?

更新日:

プログラミングを少し勉強し始めたのですが、サッパリ理解できません。
プログラミングを学ぶためには、才能は必要なんでしょうか?

こういった疑問にお応えします。
プログラミングに限った話ではなく、何かを始めるさいに、覚えが良い人と悪い人がいることは事実です。
でも、最初に覚えが良くても、良い結果に繋がるとは限りません。
プログラミングを学ぶ上で、才能をどこまで意識する必要があるんでしょうか?

今では私も10年ぐらいの経験がある(多分)立派なエンジニアですが、私の苦い経験も踏まえて、説明していきたいと思います。

本記事の内容

  • 学生の頃の苦い経験
  • 研修時代の苦い経験
  • あなたの目指すゴールは何か?
  • 目指す職種によって、才能は異なります。

学生の頃の苦い経験

私は大学時代に農学部に所属していたのですが、2単位だけITに関するものがあり、VBという言語を勉強しました。
ところが、私にとってプログラミングはチンプンカンプンでした。
先生とアシスタントの人がいるにも関わらず、全くわかりません。
特に難しかったのは「for」と「関数」だった記憶があります。
また、内容は楽しそうなweb業界とは違って、情報処理に偏っていました。
大学の講義なので、当然と言えば当然です。
「モンテカルロ法」を習って、「なんのこっちゃ?」と思った記憶があります。
基本情報処理のアルゴリズムに出てくる問題で、最初に学ぶ内容としては、難しい部類に入ります。

一年目は単位を落としました。
それが必須でなければ二度と勉強するはずもなかったのですが、必須なので逃げることはできません。
二年目も落として、ようやく単位が取れたのは三年目でした。
ホントに泣きそうだった記憶があります。
他の生徒達に比べて、明らかに才能の欠片も感じられませんよね?(笑)

研修時代の苦い経験

大学を卒業後に社会人になり、営業として働き始めたのですが、営業は嫌になって辞めました。
次に入社したのが、派遣系の会社です。
一ヶ月間のLAMP研修を受けたのですが、ここでもサッパリわかりませんでした。
LAMPとは、Linux、Apache、MySQL、PHPの頭文字をとったものです。
初心者のための研修でしたが、同期はすでに基本情報処理を取得しているような人達が多く、ここでも敗北感を味わいました。
非常に辛かった記憶があります。
当時、自分に才能があるなんて思ったことは一度もありません。
社内ニートと呼ばれながら、必死に勉強していました。

あなたの目指すゴールは何か?

当時、友人と話していた時に言われて、印象に残っている言葉があります。
「プログラミング言語の習得は10代の頃が一番よくて、20代後半からプログラミングを始めても優秀なエンジニアにはなれない」と言った内容です。
それを聞いて、「そうかもしれないな〜」などと思いながらも、頑張って積み重ねていけば、食べていけるはずだと願っていました。
習い事全般に当てはまる話ですが、私が今から何かを始めても、決してトップクラスにはなれません。
でも、才能がなくても、それなりのレベルにはなれます。
もし30代になって野球を始めたら、楽しめるレベルにはなれます。
でも、プロにはなれません。
それは囲碁や将棋といったゲームでも同様です。

ただし、このような裾野が狭いジャンルとプログラミングを決して一緒にして考えるべきではありません。

なぜならば、エンジニアの需要は年々、上昇しており、あなたが日本や世界のトップクラスのエンジニアになれなくても、お金を稼ぐことができるからです。
あなたのゴールが、プログラミングで食べていくことならば、それで十分なはずです。
つまり、私の友人の発言は事実ではあるにしろ、全く意味のない発言でした。
自分の目指すゴールと、それに求められる才能がなにかを改めて考えるべきです。

ちなみに、IT企業がここ20年間でどう成長してきたのかを知りたい方には、こちらの記事をオススメします。

目指す職種によって、才能は異なります

ここまで読んだところで、それでも心配な人はいると思います。
その場合は、文系でもエンジニアになれますか?という記事を読んで、エンジニアごとに必要となる基礎能力を確認してみて下さい。
デザイナー、フロントエンジニア、バックエンドエンジニアに求められる基礎能力と才能は異なります。
この業界で一人前になるために、特別な才能が必要だとは決して思っていません。
でも、自分の向き不向きを考えて職種を選ぶことは大事なことです。

そのためにも、まずは少し勉強をしてみて、手応えを確認してみましょう。
最初に勉強を始める時は、Progateのようなブラウザベースの学習サービスを使うと捗るかもしれません。

もしくは、こういった無料のプログラミングスクールを利用するのもいいと思います。

Good luck for your engineer life!

-プログラミング初心者

Copyright© プログラミング道場 , 2018 All Rights Reserved Powered by AFFINGER4.