どうも。ジョーです。
僕はもともと営業職をやっており、プログラミングはおろか、HTMLやCSSが何なのかも全くわからないほどのド素人でした。それでも、いろいろと試行錯誤しながらプログラミングを学んだことで、今では簡単なウェブサイト作成や、サイトのカスタマイズなどができるようになりました。
なので、プログラミング初心者が陥りがちな挫折なんかは身をもってよく理解しています。初心者が陥りがちな挫折パターンに関しては以下の記事参照。
関連記事:プログラミングで挫折する7つのパターンとその解決法
さて、最近プログラミング初心者と話していると、「どうやったらプログラミングを早く習得できるか?」「上達するためのコツは何?」と聞かれることが多いです。プログラミングを学びたいけど、それでも自分にできるか、自信がなくてスタートできない方って多いんですよね。
そこで今回は、かつての僕のようなプログラミン完全初心者を対象に、プログラミングを最速で上達させるシンプルな方法を話していきます。
- プログラミングを圧倒的スピードで習得したい
- 時間が限られている社会人だけど、効率的にプログラミングを習得したい
- プログラミング学習に興味がある
上記いずれかに当てはまるプログラミング初心者の方は読んでみてください。初心者では理解できない小難しいプログラミングの話ではなく、シンプルでいて効果的な方法を取り上げます。
Contents
プログラミングが上達しない理由
プログラミングを最速で身につける方法に入る前に、初心者が陥りがちなプログラミングが上達しない理由を話しておきます。ここを理解しておくと、自ずと「何をすればプログラミングを効率的に身につけられるか」が自ずと見えてくるんですよね。
プログラミングを学ぶ目的が曖昧
第一に、プログラミングを学ぶ目的が曖昧だと、プログラミングは上達しません。
ひたすらコードを覚えたり、無我夢中にコードを入力していると、多くの初心者はまず挫折します。なぜなら、プログラミング初期の勉強はあまりに見慣れないものが多い上に、単純作業が多いから。
そんなときに、「あれ?そもそもなんで自分はプログラミングをやってるんだっけ?」と思ってしまうと、プログラミングは上達しません。というか、学習自体が全く進まなくなってしまう。
僕自身も、プログラミング学習で挫折しかけていたとき、「あれ?そもそもなんで自分はプログラミングを学んでるんだっけ?」と思ったことがあり、ハッとしたことがあります。
プログラミングはあくまで手段であり、その先に自分が何を叶えたいかが大事。その目的をはっきりさせることは、プログラミングを上達させるためには絶対条件だと個人的に思っています。
これは方法というよりはスタンスの問題です。ぶつかる壁の数がとにかく多いプログラミング学習においては、この部分を明確にしていないと、結局頑張れなくなる人が僕の周りでも多いんですよね。せっかく時間を使っているのに勿体無い。個人的にはそう思います。
独学でやっている
第二に、プログラミングを独学でやっていると、プログラミングはなかなか上達しません。
初心者のプログラミング学習において、僕は「独学完全反対派」です。絶対反対。
プログラミングで挫折する7つのパターンとその解決法の記事でも取り上げましたが、プログラミング学習で多い挫折のパターンは壁にぶつかる回数が多いにもかかわらず、「わからないことを聞く人がいない」「参考書がわかりづらい」という点なんですよね。
そのため、プログラミング学習初心者の段階においては、「いかに挫折しないか」を考えることが重要であり、結果として挫折しないことこそが最短の道だと個人的には思っています。
なので、初心者が独学でプログラミングを学ぶことは避けてほしい。特に社会人など時間が限られている方であれば、よほど忍耐強くない限り、独学をしても続かないと思います。自分で試行錯誤して考えるフェーズは、中級者以上になってからで良いと個人的には思いますね。
実践しない
第三に、プログラミングは実践しなければ上達しません。
プログラミング学習の初期段階では、頭でコードを覚えようとしてしまいがち。でも、記憶することは実はそんなに重要ではない。むしろ、頭で理解するより、実際に手を動かしながら覚えていったほうが全然早いです。
加えて、頭で覚えただけの知識は全く役に立ちません。僕も当初は参考書を眺め、知識をとにかく蓄えようとしましたが、驚くことに、実践で全く手が動かなくて、ショックを受けたことがあります。実践で使えない知識こそ不要なものはないし、何より実践で使えない知識を得るために消費した時間こそが無駄の極みだと、個人的には思います。
初心者がプログラミングを最速で上達させる方法
目的を明確にする
なぜプログラミングを学ぶか、その目的を明確にしましょう。
「プログラミングを学んで、そのあとにどんな世界に行きつきたいか」、その世界があなたにとって魅力的であればあるほど、プログラミング学習は継続するし、上達も早いです。
何事も目的ありき。「なんでそれを学ぶ必要があるか」「それを学んだら自分はどんな素晴らしい世界に行き着くか」月並みですが、これがとにかく大事。そう思います。
プロに教えてもらう
初心者がプログラミングを学ぶなら、独学はやめ、プロに教えてもらうこと。これがプログラミング上達の最短の道です。
プログラミング完全初心者だった僕は、最初は独学でプログラミングを身につけようとしていました、参考書を読み漁り、そこに書いてあることを隅から隅まで覚えようとしました。でも、後から振り返るとこれがいけなかった。
独学で学んで限界を感じた僕はその後、プロのエンジニアから教えてもらえるオンラインプログラミングスクールのテックアカデミーを受講しました。その方に言われた言葉が「そんな知識をつけても実践では何も役に立たないよ。随分遠回りしてるんだね」
この一言があまりに衝撃的すぎて、それから僕は独学をやめました。
プログラミング初心者の独学の問題点は、実務を知らないあまり、「必要な知識」と「必要でない知識」の見分けがつかないこと。本来学ばなくて良いことに多くの時間を割いても全て無駄です。それなら、その時間を必要なことに使ったほうが、上達の速度が何倍も早くなることは、もはや歴然です。
なので、無駄に時間や労力を使いたくない初心者は独学はやめましょうと個人的には言いたいです。「時間は無限にあるし、遠回りでも全然大丈夫!」という方は、独学でも良いと思います。
実践で使える知識を、実践を通じて身につける
プロに教わることと同時に、とにかくコードを書くこと。実際にサービスを作ってみること。これが大事です。
かつての僕のように、参考書を読んで知識を詰め込むことばかりだったり、記憶しようとしていたら、いつまでたっても上達はしません。
結局、サービス開発までプロに教わりながらやるのが一番良いんですよね。テックアカデミーであれば、カリキュラムの最後にオリジナルサービスの開発があります。こういうのをうまく活用しながら学習を進めると、プログラミングは驚くほど早く上達します。あなたが文系でも、営業マンでも、プロに教わりながら実践を繰り返せば、最短一ヶ月くらいでプログラミングの基本は身につくんですよね。
TechAcademy(テックアカデミー)を完全初心者が1ヶ月受講した感想
まとめ
僕は、プログラミングを学んでから自分でウェブサイトを作ったり、サイトのカスタマイズができるようになりました。今ではそのサイトから収入を得ることもできており、学んだ時間やかけたお金は回収して余るほどになりました。
プログラミングが上達すると、人生の選択肢は大きく広がります。リモートワークや在宅勤務などフレキシブルな働き方ができるし、フリーランスエンジニアなら会社員の平均収入の2倍、3倍も十分目指せます。オリジナルサービスを開発し、起業や複業することもできます。
もしプログラミングが上達し、その先に行きつきたい世界があるならば、本気で目指す価値があると僕は思います。
▼未経験からエンジニアを目指したいなら、続きはこちらをどうぞ▼