プログラミングをやる前に知っておくべきこと5選
プログラミングをやる前に知っておくべきことについてお伝えしたいと思います。
この投稿は、これからプログラミングを始める方とか、今、プログラミング勉強してて、これからエンジニアになりたいっていう方に向けた投稿なので、そういった方はぜひ参考にしてみてください。
1つ目は「専門家になれ」ですね。
これはどういうことかっていうと、まず1つのこと、例えば、プログラム言語だったら、JAVAであったり、パイソンだったり、なんでもいいんですけど、まず、1つの言語1つのことに対して深く勉強しろっていうことです。
たまにね、twitterとかで見かけるのがproggateのjava、パイソンとか、javaスクリプトをなんか全部やるみたい。
3ヶ月以内に全部終わらせようみたいに宣言してる人いるんですけど、それは正直あんまり意味なくて、プログラミングで重要なのは、その各言語の書き方を覚えること、文法とかを覚えることじゃなくて、プログラミングの根底にある考え方とか、プログラミングでは何ができるかみたいな、大まかな把握っていうのが、やっぱり重要になってくるからなんですよね。
なので、皆さんはまず1つの言語とか、1つの技術に対して深く知識を深くもてるようにしてください。
例えば、WEB開発するのであれば、WEBの仕組みであったり、javスクリプトとか選んでWEBの仕組みに対して深く勉強する。
iosアプリの開発をしたいんだったら、iosアプリの知識、iosアプリに対して勉強するというようなことをしていただけたらいいと思います。
最近よく初心者の方でも、AWS学んでみたりする方結構いるんですけど、その技術自体を勉強することっていうのは、いいことで、絶対いつかはやるべきなんですけど、1つのことに対して大した知識もないのに、上辺だけの知識を身につけていっても、土台がしっかりしていないと、その上に何を積み上げてもいずれ崩れてしまうんです。
なので、まず、1つのことに対して1つの技術であったり、プログラミング言語を極めるようにしてください。
2つ目は「完璧に勉強する必要はない」っていうことですね。これはいろんなとこで聞いてる方が多いと思います。
皆さん1度は聞いたことあると思うんですけど、先ほど1つの技術を極めろって言いましたが、もちろん完璧にする必要はないです。
この完璧にっていうのは、例えば全ての書き方、文法を暗記したり、WEBだったらWEBに対する技術を全て網羅しようみたいなことってほぼ不可能に近いんで、そういったことはする必要ないんですけど、勉強してる時に、例えばノートにまとめて書き方を暗記してみると、 なんか、大学受験の勉強みたいに、何かを暗記するみたいなことはあんまり必要ないです。
それよりもプログラミングで何ができるかとか、その1つの技術WEBであったら、apiの開発のフローであったりとか、tcp通信はどうやって行われてるとか、tnsサーバーの仕組みであったりとか、クライアントサーバーで何が行われているかみたいな、そういった基盤となる全体に通ずるような知識をたてていくことが必要だと思います。
次に3つ目はこちら、「しんどい時期は必ずある」です。
これはね、初心者の方全員が意識した方がよくて、プログラミングってやっぱりやればやるだけ伸びるって ことはなくて、他の勉強、英語とかでもそうなんですけど、やればやるだけ1次関数的にプログラム力が 伸びていくかっていうと、そういうことではなくて、ちょっとやって伸びて、伸びない時期が来て、で、また伸びて伸びない時期が来るみたいに、やっぱりね伸びない時期っていうのはあるんです。
なんですけど、プログラムをする人って、その認識がまずできてないんですよね。
やればやるだけ、伸びると思ってる人が多いです。
なので、なんかいっぱいやってるのに全然伸びないとか、自分にはセンスがないんじゃないかみたいに思ってやめてしまうんですけど、、伸びないのは当然なんですよ。
でも、伸びない時期っていうのは絶対あるんで、やったから伸びるっていうわけではないです。
その伸びない時期に、しんどい時期でも、継続して勉強し続けた人だけエンジニアになること できるんで、これを見てる皆さんはね、しんどい時期っていうのは、必ずあるっていうことをまず認識してください。
その上で、全然伸びなくて、しんどいなっていう風に思ったりした時は、自分には才能がないと思うんじゃなくて、1度客観視して、ああ、今は伸びない時期なんだ。と考えると、だいぶ気持ちが楽になって、継続できるかなと思うんで、ぜひ、皆さんしんどい時期に割り切るっていうことを、覚悟しといてください。
そして、次の4つ目が「googleを使い倒せ」ということです。
やっぱり、プログラム初心者とエンジニアの1番の違いって何かっていうと、僕はここだと思っていて、そのgoogleまgoogleっていうか、なんでもいいですけど、初心者の方って検索する力がやっぱり弱いんです。
よくあるのは調べれば絶対わかるやんみたいなことを質問してくる人とか。
1回調べたけど、その調べたとこでわからんことが出てきて、嫌になって調べるのやめるみたいなパターンが初心者の人に多いんですけど、やっぱりそのままじゃエンジニアにはなれないです。
エンジニアっていうのは、調べる時間っていうのは、めちゃめちゃ長いんですよね。
例えば、プログラムでエラーが出た場合に、そのエラーの処理をするために、何が原因であるかの仮説を立てて調べて、で、そこでわからないことが出てくれば、また調べてで、そこでもまたうまくいかなければ、もう1回調べるといったように、やっぱりググリ倒していきます。
ただ、先ほども言ったように、初心者の方っていうのは、圧倒的にこのググる回数とか、調べることに対する考え方が甘いっていうのが結構あります。、
もうgoogle側もびっくりするぐらい使い倒してください。
で、やっぱり始めはできないっていうのは当たり前なんですよ。もし、今これを見てる方が全然ググれないとか、 ググっても解決できないっていう方いると思うんですけど、それは当たり前なんです。
でも、それでも諦めずに調べ続けてください。
プログラミングで1番重要なことは、何かって言われた時によく言われるのが学び方を学べっていうことなんですよね。
なので、始めできなくても当たり前ですから、どういう風にすれば、エラーが解決できるだとか、1回調べて、わからない時に、その分からないものをどうやって解決していくか、みたいなところを意識して、googleは使い倒すようにしましょう。
そして、最後の1つは「とにかく開発しよう」です。
これもね、よく言われることだと思うんですけど、とにかく開発しましょう。
やっぱり、プログラム言語の書き方とか、プログラミングの知識は先ほど言ったようなWEBの知識を学んだとしても、構造を書かないと、プログラミング能力 っていうのは上がらないですね。
なので、皆さんは自分で作りたいものであったりとか、なんでもいいと思うんですけど、とにかく開発をするっていうことを意識してください。
アプリケーションを開発したりすることで、それをポートフォリオに使ったりもできますし、実際の業務開発の流れっていうのを掴んだりできるので、本当にプログラミング力を上げたいなら、今すぐ 開発をして、継続するようにしましょう。
完璧じゃなくてもいいんですよ、自分の作りたいものなんでもいいです。
なんでもいいんで、とにかく手を動かしてコードを書くっていうことを意識すれば、プログラム力は自然と上がってくると思うので、ぜひ皆さん意識してみてください。