プログラミングスクールに行くべきか、独学か【現役エンジニアが解説】
プログラミングスクールか独学かで悩んでいる方に。
この記事を読まれている方は、
- プログラミングスクールに行くべきか、独学のどちらが良いか知りたい
- 自分にとっての最適な学び方を選択したい
おそらくこのように考えている方が多いと思います。
この記事を書いている私は、
プログラミング未経験から転職を果たした現役のWeb系エンジニアです。
エンジニア歴は3年ですが、本業とは別にフリーランスの副業で月10万円ほど、多いときで20万円ほどの収入があります。
また、ITベンダーにて開発部グループ長として面接官もしています。
この記事では、現役のエンジニアが、プログラミングスクールに行くべきか独学が良いかということについて、解説します。
もくじ
プログラミングスクールに行くべきか独学か
結論から言うと、自分がものわかりが良い方だと思うなら独学、そうでない方ならプログラミングスクールを選ぶべきだと思います。
理由は単純で、独学の場合、相談できる・頼りになる相手がいない限り、わからないところで躓いてしまうからです。
プログラミングって学びはじめの頃は結構初歩的なところで引っかかる方が多いのですが、いくら探しても答えが見つからない(本当は違う)ことが多々あります。
そういうときに相談相手がいないと壁に当たったまま、そのまま挫折してしまう人が多いんですよね。
もちろん知恵袋やteratailなどで質問することもできるのですが、無料のため回答者は完全なボランティアさんです。
そのため、必ずしも回答が得られるかわからないのと、回答が来たとしてもその内容がきちんと理解できるとも限りません。
したがって、「自分はものわかりがよく教われば大体一回で覚えてしまう」とか「会社にExcelVBAを教えてくれる人がいる」とか「ボランティアの講師と直接コネクションを持っている」とか、そういう人でない限り、独学はちょっと厳しいかなと思います。
ここで私の体験談を少し紹介します。
私も未経験でWeb系エンジニアに転職を果たした身ですが、前職で業務上ExcelVBAに触れる機会があり、先輩方が教えてくれた部分もあったので、独学で通すことができました。
といっても、転職先でも社内開発の部署に入れてもらい、初歩から色々と教えて頂いたという経緯もあったので、プログラミングスクールに通っているのと似たような環境でもあったかと思います。
そのため、独学もプログラミングスクールも両方という選択肢もありだと思います。
プログラミングに必要なのは自分から学ぶ姿勢
私は自分の所属する会社でプログラミングの講師もしているのですが、伸びる人伸びない人色々な人を見てきました。
伸びない人たちにはある共通点があることにきがつきました。
それは自分から学ぶ姿勢がないということです。
「とりあえず講習会(スクール)に参加してみるか」とか「先生がなんとかしてくれる」というような受動的な方というのは、あまり上達しないようです。
会社に言われ、無理やり参加している人も、当然のことながら自分のものになっていません。
学習においては、アクティブラーニング(能動的学習)の方が受動的学習よりもはるかに効果が出ることがわかっているので、自ら学んでいくタイプでないとプログラミング学習も成果が出ないのでしょう。
プログラミング学習におけるアクティブラーニングとは、具体的には以下のとおりです。
- 自分が作りたいものを作る
- いろいろなことに好奇心を持って試してみる
- たくさん課題を解く
最後のたくさん課題を解くというのは大事で、これは講師(スクール)側が配慮すべき点でもあるのですが、
単に基礎的なことを聞いておしまいではなく、課題や練習題を解くことで知識を確立させましょうということです。
そのため、私は講習を行うときは先に課題を配り、自分たちで調べさせ、各課題に対し後で解説を加えていくという形を取っています。
こうすることで自分でなんとか回答を出さざるを得なくなり、ある程度受講者を追い込み、主体的に学習させることができるのです。
このアクティブラーニングの環境をつくるということがプログラミング習得では特に重要になってきます。
そういう意味では、転職保証をしているようなスクールはこの点が徹底していると思います。
でないとスクール側が赤字になってしまいますからね。
とりあえずWeb系プログラミングをやってみよう
プログラミングスクールか独学かで迷っているなら、とにかく今すぐにでもプログラミングを始めてみましょう。迷うと貴重な時間がなくなったり、始める時間が遅くなったり、結局何もしないまま諦めてしまうことが多いです。思い立ったが吉日です!
それに独学であればほぼコストが0ですから。
例えば、ネットで入門サイトを検索して試しに書いてみたり、プログラミングの動作する環境だけでも作ってみるとか。
それだけでもアクティブラーニングの火は付けられるかもしれないですよ。
オススメのプログラミング言語はWeb系のPHP
私はプログラミング初心者であれば、ExcelVBAかPHPのいずれかから始めることをオススメしています。
理由はどちらも学習のハードルが低いからです。
ExcelVBAはExcelさえあれば動きますし、PHPはローカル環境であればXAMPPなどが、インターネット上であればレンタルサーバーを借りれば、何の準備も必要なく動作する環境を得ることができます。
ただ、ExcelVBAに関しては、普及しすぎていて単価が安いので、就職するまでにはWeb系プログラミング言語のPHPに切り替えることをオススメします。
Web系の言語を学ぶメリットとしては「身近」ということです。
機会があれば自分のウェブサイトを作って公開、なんてこともできますよね。
また、Web系は本業だけでなく「副業」でも稼ぎやすい分野です。
ランサーズやクラウドワークスなどのサイトでは、アプリ系の仕事よりもWeb系の仕事の方がはるかに多いです。
将来フリーランスで活動なんてことも十分に視野に入ってきます。
Web系ではHTMLとCSSを先に学ぶ必要がある
PHPはWeb系の分野なので、純粋にPHPの他に、HTMLやCSSも必要になってくるのですが、これらは画面を装飾するためだけの言語なので、プログラミング言語ほど難しくなく、覚えゲーです。
HTML+CSSが先かPHPが先かについては、HTML+CSSを先に学習するのが理想的です。
理由は単純で、PHP(プログラム)が出力する対象がHTMLだからです。
「PHPだけじゃないじゃん!」って思われるかもしれないですが、画面を別の言語で作らなければいけないのはどのプログラミング言語も共通なので、ココは我慢して耐えてください。
たとえば、Androidアプリであればプログラミング言語はJavaですが、画面はXMLで作ります。Windowsアプリであれば.NET Frameworkを使うならプログラミング言語はC#かVB.NETで、画面はXAMLなどで作ります。
したがって、ちょっと面倒かもしれませんが、以下の順番で習得するようにしましょう。
HTML⇒CSS⇒PHP⇒JavaScript
プログラミング重視であれば、HTMLとCSSはさらっと学べばOKです。
JavaScriptは画面上で動的な処理を行う目的で使われることがほとんどなので、順序の最後でも問題とないと思っています。未経験者枠の就職であれば、JavaScriptは簡単に知っていれば問題ないと思います。
プログラミングスクールの記事のリンクを貼っておきますので、スクールに通いたい方はご覧になってください。
現役エンジニアがオススメするプログラミングスクール3選【無料体験あり】
「一からきちんと学べるオススメのプログラミングスクールを知りたい。プログラミングの効率的な学び方を知りたい」←こういった疑問に答えます。本記事内容:まずはどのプログラミング言語を選ぶべきか/現役エンジニアがオススメするプログラミングスクール3選/プログラミングスクールにプラスして行うべきこと
また、プログラミングの基礎について解説している記事もありますので、興味があれば読んでみてください。
【プログラミング入門】現役エンジニアが解説するプログラミングの基礎
「プログラミングの基礎を知りたい。プログラミングのコツや効率的に学ぶ方法があれば知りたい」←このように考えている方向けに、現役エンジニアがわかりやすくプログラミングの基礎を解説しています。