去年、以下のような記事を書かせて頂いたのですが、
今年も書かせていただこうと思います!🤗
自己紹介
3行で自己紹介します。
- 現在29歳(2021年12月)
- 約2年ほど独学した後、WEBエンジニアとして自社開発企業に内定をもらった
- 独学期間中に、N予備校プログラミング入門コース(2019年版)をやった
現在働いている会社では
- フロント:TypeScript、Next.js、WebRTC
- バック:Express(TypeScript)、TypeORM、MySQL、Redis
- 共通:Websocket
- CI:GitHub Action
- インフラ:AWS ECS、Docker
という感じで比較的モダンな環境で仕事させて頂いています。
もともとフロント志望で入ったのですが、小さい会社なので「バックもやってね」と言われてる感じです。最高です。
そんなわけで、
- 技術スタックも最高で、
- 会社で開発しているサービスも気に入っていて、
- フルリモートで出社しなくていいし、
- 働く時間も決まってなくて、
本当にこの会社に入れてよかったなーと思っているのですが
そもそも自分がWEB業界に入れた要因は「N予備校をやったおかげ」というのが大きいので、今年もプログラミング入門コースの良さを布教するために記事を書かせてもらおうと思った次第です!
(ちょうどアドベントカレンダーが開催されてたので!)
何を書くか
何を書こうか迷ったのですが、
「プログラミング入門コースに挑戦する場合の注意点 」
を書くことにしました!
というのも、2年近く独学してレベルアップした今の自分から見ても「入門コースって大体の人が挫折するよなー」と感じるからです😞
それではあまりにも勿体ないので、挑戦する上でのいろいろな注意点を書いてみたいと思います!
ちなみに前回の記事でも「これからN予備校やる人へ」という項目を書いているので、よかったらこちらもご覧ください。
入門コースに挑戦する場合の注意点など
初心者向けではない
まず、大前提としてプログラミング入門コースは難易度がめちゃくちゃ高いです😱
今見直してもドン引きするくらい難しいです。
というのも、入門コースは「未経験者がインターンシップなどで最低限働ける入門レベルになるための教材」らしいので、決して”初心者向け”ではないからです。
一言で言うなら「最低限働ける入門レベル」になるための”最短のロードマップ”みたいなものなので、初心者が誰でもこのロードマップを辿れるわけではないのです。
例えるなら、すでにそのゲームを知り尽くしている人が「こうやったら最短でクリアできるよ」なロードマップとして作られたのが入門コースなので、初心者からすると「でも俺初めてだし最短でプレイなんてできねーよ」って話なのです。
最初からある程度知識がある人は「これは覚える必要ない。これは多分後回しでもいい」などと判断できますが、初心者の人はそれができません。なのでずっとそこで詰まってしまってクリアすることを諦める・・・みたいなことになってしまいます。
Udemy+本と並行してやるといい
ただし、学習のロードマップとしては超優秀なので、これを活用しない手はありません💪
そんな入門コースを有効に活用するのにオススメなのが
- JavaScript
- Linux
の知識を事前に吸収しておくことです。
というのも、入門コースの”詰みポイント”は、この2つの知識があればクリアできる可能性が高くなるからです。
私は入門コースをやった後に
- WEB系の技術書を40冊以上読んだり、
- Udemyの講座を10以上受けたり、
してきたのですが、「この教材を読んだ後に挑戦しておけばスムーズだっただろうな」と思うことが何度もあったので、たぶん間違ってないと思います。
具体的に言うと、各章で以下のような感じの前知識があると躓きにくくなると思います。
- 1章:なし(前知識がなくても進める)
- 2章:Linux、HTTP
- 3章:Linux、HTTP、JavaScript
- 4章:Linux、HTTP、JavaScript(前知識があってもキツイ😣)
これらの知識を体系的に吸収できる教材がこちら👇です。
本:
- 「改訂新版JavaScript本格入門」を読んだ感想 ←内容は少し古いけどこれ本以上に分かりやすくまとまっている本がない
- 「新しいLinuxの教科書」を読んだ感想 ←自分はこの本で一気にLinuxの知識が増えた。神本。分かりやすい。
- WEB技術を支える技術 ←内容が少し古いし難しくて読むのがキツいけど、HTTPを理解するには最適な本だと思う
Udemy:
- 【JS】ガチで学びたい人のためのJavaScriptメカニズム ←これやるだけでJavaScriptはOK。(最後の方は難しいのでやらなくてOK)
この4つの教材をやっておくだけで、理解度がぜんぜん違うと思うのでオススメです。
ちなみにUdemyは通常時に買うとクソ高いですが、セール時に買うと激安(1200円とか)になります。なので絶対にセール時に購入した方が良いです。しかもセールは超頻繁に行われいるので、少し待てば絶対に安く買えます。
HTML、CSSはやらなくていい
入門コースは
- HTML
- CSS
の知識がほとんどなくても完走できます。
なので勉強する必要はありません。1章の内容で十分です。
ただ、最終的にWEBエンジニアを目指す場合なら1章の内容だけでは全く足りないので、いずれ勉強しましょう!
参考:「HTML5&CSS3デザイン 現場の新標準ガイド【第2版】」を読んだ感想 ←ちょい難しいかもですが読むならこの本オススメです!
完走した後のこと
入門コースを完走した後は、以下のロードマップの順に進むといいと思います。
ロードマップ和訳の完全版です
・フロントエンド
・バックエンド
・DevOps非エンジニアの方もざっくり言葉の意味を理解しておくと、エンジニアとのコミュニケーションに役立つと思います。
英語読める方は元の英語版も見てください!#プログラミング #ロードマップ #プログラミング初心者 pic.twitter.com/NtjhRuaq8F
— Tetsu Kinomura (@TetsuKinomura) March 29, 2020
最新版(英語ですが)はこちら👇なのですが
このサイトは「こういう風に進むと誰でもWEBエンジニアになれるお」をロードマップとして公開してくれてるサイトです。なのでこれを理解できれば絶対にWEBエンジニアになれます。
このロードマップを見ると分かると思うのですが、WEBエンジニアは大きく分けて
- フロントエンドエンジニア
- バックエンドエンジニア
- インフラエンジニア
の3つに分類できます。(ちなみに全部できる人をフルスタックエンジニアと言ったりします)
そして、完走した人なら分かると思うのですが、N予備校の入門コースはこれら3種類のWEBエンジニアになるために最低限必要な知識を満遍なく学べるコースなのです!
なので逆に言うと「入門コースさえやっておけばWEBエンジニアになれる」というものでもありません。
例えば、フロントエンドなエンジニアになるためにはフロントエンドフレームワークの知識が必須ですが、入門コースには「フロントエンド側のフレームワークについて全く解説がない」という欠点があります。
具体的にいうと、以下のようなフロントエンドのフレームワークについての解説がありません。
- Vue.js
- React.js
- Angular.js
まぁこれらの解説も入れちゃうと、おそろしい分量になってしまうので仕方ないと思うのですが
これらのフレームワークは、モダンなWEB系企業だと当たり前のように使われているので、たとえばフロントエンドエンジニアを目指すなら、これらのフレームワークを習得しましょう!
「俺はバックエンドに行くつもりなんだけど」みたいな人もいるかもしれませんが、バックエンドの人もフロントのことをある程度知っておいたほうが良いと思われるので、最低限チュートリアルくらいはやっておいたほうが良いんじゃないかと思います。
たとえば私が働いているような小さな会社では、1つのリポジトリでフロントもバックも管理していて「全員がフロントもバックもそこそこできる」のが前提になってたりします。(大きい会社だと縦割りがあると思うので、両方触れる機会はあまりないと思いますが・・)
ちなみにフロントエンドのフレームワークはすべて覚える必要はなく、どれか一つだけでOKです。
日本ではVueの勢いが強いみたいですが、世界的に見ると圧倒的にReactです。なのでフロントエンド志望だった自分はReactだけ勉強してきました。
まとめ
というわけで色々書きましたが、
これから入門コースに挑戦される方は頑張って下さい!!!💪💪💪
WEBエンジニアめちゃくちゃ楽しいよ!!!😄😄😄
おわり
コメント