見出し画像

プログラミング初心者に送る言葉 2つの「ない」

仕事でコードレビューをしていると、プログラミングができる人とそうでない人に分かれます。
このプログラミングができない人からは「〇〇さんはどうしてそんなにプログラミングができるんですか?」とか「どうしたらできるようになりますか?」とか「僕、センスがないんですかね?」とか様々なことを聞かされます。
今回はそれは違うんだよっていうことをお伝え出来たらなぁと思っております。

■そんな甘い話はないということ

初心者ができないのは当たり前なんです。
なぜか…?
その答えはプログラミング習得には気が狂うほど幅広い知識が必要になるからです。

よくあるJava案件の話でいうと、「Java、Git、フレームワーク、ネットワーク、セキュリティ、OS、サーバー、ブラウザ」などの知識があり、かつ、それらの周辺知識が必要になってきます。そこまでできてようやくスタートラインです。
そして、そこから「脱初心者→中級者→上級者→神」とステップアップしていくにはさらなる学習が必要になってきます。間違いないです。

■プログラミングに特別な才能は関係ないということ

先程も述べた通り、一口にプログラミングと言っても非常に広範な知識が必要になってきますし、それらを使いこなせるようになるためにはインプットばかりでなくアウトプットも重要になってきます。
またプログラミングのアウトプットは意味不明なエラーが発生して、そのエラーを解決するのに2、3日かかったとか当たり前に起こります。

ちなみに私がある程度一人でプログラムを書けるようになるのに要した期間は約3年です。スタートラインに立つのにこのくらいかかりました。
就職するまでプログラミングなんてしたことなかった私が独立系のSIerに就職してからというもの、毎日、仕事で10時間、プライベートで3時間程度はプログラミング学習に費やしていました。
これは3年間で約3,000時間の学習をした計算になります。プログラミングばかりが仕事ではなかったとはいえ、1,000時間以上はプログラムを組んでいたんじゃないでしょうか。

だから「できない」とか「センスがない」とか言っている人は学習時間が単純に足りていないんだと思います。頑張りましょう。

■まとめ

プログラミングに関わらず、ほとんどの分野で言えることだと思いますが、圧倒的な努力に勝るものなしです。

・・・

これで締めようと思いましたが、これだとなんか挫折する人が多数出てきそうなので、挫折しないコツをお伝えして終わりにしたいと思います。

挫折しないコツ、それは「メンターを見つける」これに尽きると思います。
すでにプログラムができる人に相談、指導をしてもらえるのはかなり大きいです。

そういった意味ですと独学でできるようになってからIT業界に就職ではなく、IT業界にさっさと就職して死に物狂いで必死になって付いて行くの方が、辛い道かもしれないけど近道なのではないでしょうか。

あなたはどちらを選びますか?

ではまた(^_^)ノシ

記事を書く合間のコーヒー代、待ってます!(*´ー`*)