髙妻智一やってはいけないプログラミング学習のアンチパターンツイートシェアはてブLINEPocketエンジニアに転職したいけど何をどうやって勉強すればいいんだろう?今現在プログラミングスクールに通っているけど学ぶこと多すぎて何をしたらいいかわからないな。いった方の疑問に答えます。本記事の内容は未経験者が陥るプログラミング学習のアンチパターンについて初心者がやるべきこと実は僕も社会人になる前にプログラミングの勉強は少ししていましたが全く身にならなかった経験があります。エンジニア歴6年弱で、リードエンジニアも経験しましたし、今はブロックチェーン企業に転職して仮想通貨をスマホアプリで管理できるサービスを作っています。社会人になってからプログラミングを学び始めてエンジニアになった僕がこれまでの経験を正直に書くのでプログラミングを学んでいる人の参考になればと思います。この記事でWEB系企業で必要となるプログラミングについて話します。未経験者が陥るプログラミング学習のアンチパターン手当たり次第いろんな言語に手を出す何を学べばいいか分からないからこそだと思いますが、初心者ほどいろんな言語に手を出してしまっていると思います。プログラミングは範囲が広く、深めようと思えばいくらでも勉強できるので、かなりの時間泥棒です。社会人でこれから学ぼうと思っている人は何を学ばないかを決めるのは必須です。そのためにもエンジニアにどういった種類があり、何を学ばないといけないかしっかり把握しておいてください。エンジニアもサーバエンジニア、フロントエンジニア、ゲームエンジニアと様々なので職種別に要点をまとめた下の記事を参考にしてください。>>ITエンジニア|プログラマの職種別で学ぶべきことと必要なスキル買った本を読むだけ、写経するだけとりあえず本を買って読むだけの人が多いですね。手を動かしてアウトプットしないと身につかないのでどんどんコードを書きましょう。本のサンプルコードを真似するところから始めて、そのサンプルコードを自分流にアレンジできるようになると理解度が一気に上がります。最初は本じゃなくても無料で質の高い学習サイトはたくさんあるのでそこから始めるのがいいとおもいます。下に無料で学べる学習をサイトをまとめたので読んでみてください。>>プログラミング初心者が独学かつ無料で学べるおすすめサイトコードを暗記しようとする小学校の漢字ドリルみたいに何度も書いてコードの書き方を暗記する必要は全くありません。6年近くエンジニアしている自分でもfor文の書き方調べます。プログラミング言語によって書き方が全然違って覚えてられないですもん。それよりもドキュメントを読んで理解できる力の方が重要です。これできるとどの言語もすぐに使えるようになります。1つのプログラミング言語を習得したら他の言語もすぐ使えるようになるというのはこういうことです。深くまで完璧に理解しようとする最初は原理とかオブジェクト指向とかポリモーフィズムとか難しいことを深く理解する必要ないです。理解すべきは、自分の書いたコードがどんな順番で処理されているか理解でき、さらにそれが意図した結果になるかが大事です。これを何度も繰り返してどう動くか把握できたら深く学べばいいと思います。動作もさせてないし、どう動くかも分からない物を深く学ぼうとしても効率が悪いだけなので気をつけて下さい。初心者がやるべきことアンチパターンをつらつらと書いてきたわけですが、初心者がすべきことも書いておきます。エンジニアになるか考える給料、自由な勤務体系、サービス作りなどありますが最初にここをはっきりさせとくといいですね。サービスを作りたいのに自社サービスがない会社に入ってしまったり、自由な勤務体系だと思ったら客先常駐で予想で全然違ったなどたくさんあります。あと趣味プログラミングは全く稼げないのでやるなら全力でやらないと高級取りには慣れないですね。人材が足りないと言うのはできる人材が足りないという意味なのであまり期待しないように。効率化する方法を考える学生ならいいですが、すでに社会人の方がこれからプログラミングを習得するには勉強方法もしっかり考えて下さい。下の記事に最速でエンジニアになる方法をまとめたのでぜひ読んで下さい。>>プログラミング未経験から最速でエンジニアになる学習方法エンジニア市場を理解する今のエンジニア市場でどういったプログラミング言語、スキルが求められているか把握することが非常に重要です。C言語とかCOBOLとか学んでもほぼ意味ないです。やるならRuby、Golang、PHP(また使われ始めてる)、Java、Pythonなどでしょうね。Golangはここ数年でかなり注目度が上がってきていて、言語の流行り廃りはこのスパンで変わっていきます。Golangの前はNode.jsだったんですが今は日本だとそんなに使われてないですね。エンジニアの職種別の単価も把握しとくといいと思います。2018年現時点では機械学習AIエンジニア、ブロックチェーンエンジニアの需要が高まっているので単価が高かったりします。>>ブロックチェーンエンジニアへの転職とか求人について>>ブロックチェーンエンジニアになるには何をすべきかこれも数年で変わると思うので、その時々でキャッチアップしましょう。まとめ何はともあれ、とりあえず手を動かしてどんどん学んで下さい。遠回りも、無駄なこともするでしょうがそうやって効率化されていくと思います。ここに書かれたことを守れるとより効率化できると思うのでプログラミング学習を頑張って下さい。スマホゲームを作る子会社に所属し、サーバーサイドのエンジニアを担当。2年目の終わりから新規子会社の立ち上げに参加し、サーバーサイドのエンジニアリーダーとしてサービースのリリースから運用までを担当。Incにブロックチェーンエンジニアとして入社。コメントをキャンセルメールアドレスが公開されることはありません。(onCall)のテストコードの書き方RECOMMENDこちらの記事も人気です。