Programming

【朗報】プログラミングにセンスは不要です【必要なのは2つだけ】

プログラミング センス
プログラミング学習で困っている人
プログラミング学習で困っている人
プログラミングにセンスって必要なのかな…。

最近プログラミングが理解できなくて、辛くなってきたな…。

この記事では、上記のような悩みを解決していきます。

 

この記事の想定読者

想定している読者は、次のとおりです。

  • プログラミングを勉強している人
  • でも、プログラミング学習で挫折しそうな人
  • プログラミングで本当に必要なものを知りたい人

 

この記事では「プログラミングにセンスは不要で、代わりに必要な2つのこと」について書いていきます。

プログラミングに取り組んでみたけど、全然理解できなくてセンスがないのか気になりますよね。

 

この記事を読み終えれば、プログラミングにセンスが不要であることが分かります。

さらに、センスの代わりに大事なことを2つ紹介していくので、具体的な解決策も見つかるようになっていますよ。

 

プログラミングにセンスは不要です【エンジニアの現実を紹介する】

プログラミング センス

プログラミングにセンスは不要です。ITエンジニアとして働いているボクが、業界の現実をお伝えしていきます。

 

業界の現実① : IT会社のエンジニアが、めちゃくちゃデキるわけではないです

 

IT会社のエンジニアが「めちゃくちゃデキる人なのか」と聞かれると、そんなことありません。

なぜなら、人手が足りなすぎてプログラミング未経験で入社している人も多いから。

 

これをいうと少し怒られそうですが、先輩社員もめちゃめちゃデキるかと言われれば、そんなことはありません。

でも、これは割と現実的な話で、スキルの高い人はあまり会社にいないですね。

なぜなら、スキルが高ければフリーランスとして戦っていけるので、会社に残らないからです。

メルカリとかDeNAとか、Web系の企業だとイケてるエンジニアが大量です。

 

IT業界の構造

IT業界 構造

上の図のとおりで、IT業界は「下請けの下請けする」といった、メンドイ構造になっています。

そして、下請けになればなるほど儲けが減るわけで、そうすると自分たちの給料が減りますよね。

なので技術力の高いエンジニアは、どんどん上の階層に行くか、マージンが取られないようにフリーランスとして直接契約します。

 

自分にはセンスがないかも…。」と思いつつプログラミング学習している方は、IT業界はスキル高い人で出来上がっているわけではないので気にする必要ナシです。

 

業界の現実② : IT現場はググりながら仕事しています

 

2つ目の業界の現実として、IT業界ではググりながら仕事をしています。

なぜなら、誰もプログラミングを完璧に覚えていないからです。

 

たとえば仕事のときは、次のような手順で進めていきます。

  • データベースを移行する → 移行の方法をググりながら作業する
  • 実装したい機能がある → 実装したい機能をググりつつ作業する
  • 自分の専門外の言語を扱うことになった → 他の社員は仕事しているので自分でググりつつ作業する

こんな感じで、分からないことがあればググるだけです。

そういった意味では、プログラミングに必要なのは、センスではなくてググる力だと思います。

 

なのでプログラミングの学習段階で、理解不能だったり、文法が覚えられなくても問題ないです。

Pythonでfor文の書き方が分からなくなったなら、Python forで調べるだけですよ!

 

業界の現実③ : 新卒と先輩社員の違いは「時間をかけたか」だけ

 

IT業界の新卒と先輩社員の違いといえば、「時間をかけたか」だけです。

 

たとえば、1年目と3年目だったら圧倒的にかけてきた時間が違いますよね。

  • 1年目 : 大学でちょこっとやったかやってないかくらい
  • 3年目 : 3,000時間くらいは仕事している

こんな感じで、3,000時間くらい差があるわけなので「先輩社員はできて当たり前」です。

 

単純に時間の差があるだけであって、センスの差は大してないです。同じ人間ですし。

なのでプログラミングを勉強している方で、「自分にセンスがないかも…。」と思っている方は、時間の差だけなので気にしなくて大丈夫ですよ。

 

【センスは不要】プログラミングに必要なのは2つだけです

 

プログラミングで必要なのは、センスではなくて「目的」と「時間」だけです。

これだけだと投げやりなので、少し深掘りしていきます。

 

プログラミングに必要なこと① : 目的を再確認しよう

 

プログラミングを勉強していて「センスがないかもしれない」と挫折しそうになったら、目的を再確認しましょう。

僕から少し質問させてください。

あなたはなぜプログラミングの勉強をしようと思ったのですか?

 

プログラミングを始める動機

  • 将来が不安だから
  • 自由に生きたいから
  • 副業したいから

おそらくプログラミングを始める動機は、こんな感じではないでしょうか。

なお、プログラミング学習をする動機は、なんでも良いと思っています。

 

プログラミング学習の動機はともかく、大事なのは「目的を持って行動していること」ですよね。

  • 将来が不安だから → 挫折したら現状が変わらないので頑張ろう
  • 自由に生きたいから → 挫折したら海外リモートできないので頑張ろう
  • 副業したいから → 挫折したら収入が少ないままなので頑張ろう

こんな感じで、モチベーションを保つために目的は有効活用できます。

僕の場合は、1年以内にフリーランスエンジニアとして独立して、高級取りになるのが目的でした。

 

自分にはセンスがないかも…。」と挫折する前に、もう一度目的を確認してみてください。

目的を見失わなければ、プログラミング学習を継続できるはずですよ。

 

プログラミング学習に必要なこと② : 時間をかけよう

 

目的を再確認したら、あとは時間をかけてプログラミングを勉強するだけです。

プログラミングはセンスではなくて、「勉強時間をとったかどうか」で差が開きます。

 

スキル習得には時間がかかる件

  • 大学受験 → 少なくとも1年の勉強
  • 寿司職人 → 何年かは皿洗い
  • オリンピック選手 → 何十年も練習

寿司職人やオリンピック選手は、多少センスが絡んでくるかもしれませんが、だいたい圧倒的な時間をかけてスキルを習得していますよね。

プログラミングは大学受験に近いイメージで、時間をかければ次第に理解できるようになってきます。

 

藤原和博さんの「必ず食える1%の人になる方法」では、1つの分野で一流になるためには1万時間を費やす必要があると書かれています。

プログラミングはセンスかもしれないと考えている方は、どれくらいの時間を費やしてみましたか?

まだ1万時間取り組んでいなかったら、おそらく時間が足りていないので、もう少し頑張ってみましょう。

 

どうしても理解できなければ、プログラミングスクールがおすすめ

もし途中で、プログラミングが理解できなくて挫折しそうになったら、プログラミングスクールを使ってあげましょう。

スクールを使うと秒速でメンターに分からない部分を質問できるので、挫折しないでプログラミング学習できます。

なお、おすすめのスクールについては下記の記事でまとめています。まずは無料体験からお試しあれ。

プログラミングスクール おすすめ 選び方
プログラミングスクールおすすめ5社比較【月80万エンジニアが解説】『プログラミングスクールの数が多すぎて、どのスクールを選べば良いのか分からないな...。おすすめのプログラミングスクールと選び方を教えて欲しい!』このような悩みを解決する記事になっています。おすすめのプログラミングスクールと、選び方を知りたい人は必見です。...

 

まとめ : プログラミングには、「完璧」も不要です

 

というわけで、プログラミングにセンスは不要です。

それよりも、しっかりと「目的」を持って「時間」をかけて勉強するだけですね。

 

もしかすると、プログラミングを勉強する過程で、完璧に覚えようと考えている方がいるかもしれません。

でも、完璧にしようとする試みすら不要です。

先ほどIT業界のリアルをお伝えしたとおり、エンジニアは誰も完璧に覚えていません。

代わりに必要なのは「ググる力」で、完璧に覚えようとするとプログラミング学習が進まなくなります。

 

完璧を目指してプログラミングを勉強している方へ

FacebookのCEOでスーパーエンジニアである、マークザッカーバーグの言葉を紹介します。

Done is better than perfect.

完璧よりも大事なことは完了である」です。

世界トップ企業のエンジニア兼CEOが言っているので、間違えではないですよね。

 

プログラミングの勉強は、完璧を目指すのではなく、挫折しないように完了していきましょう。

目的を忘れずに、時間をかけてコツコツとです。

 

おすすめの記事