Photo by Naaman Saar Stavy
こんにちは、谷口です。
最近はプログラミングの勉強を始める人が多いですが、そのぶん「途中でつまずいて挫折してしまった…」という人も増えています。
プログラミング初心者は、どういった原因で挫折してしまうのでしょうか?また、どうすれば挫折せずに勉強を進められるのでしょうか?
今回は、プログラミング学習で挫折する人にありがちなことと、その対処法について考えてみました。
■プログラミング学習で挫折しちゃう人にありがちなこと
◆環境設定が大変
プログラミングを勉強するには、まず自分のPCに実行環境を作る必要がありますが、初心者にとってはこの環境設定が最初のハードルです。
技術書や解説サイトを見ながらやってもなかなか同じようにできないし…コードを書くところまで至らずに挫折した経験がある人も多いかと思います。
◆何から始めてどこまでやればいいかわからない
プログラミング言語やフレームワークは非常にたくさんあります。自分がどの言語から学ぶべきなのか、どれが何を作るのに向いているのか、そしてどこまで学べばどんなスキルが身につくのか……初心者が判断するのは難しいですよね。
◆わからないことを聞ける人がいない・調べ方がわからない
独学で勉強をしていると、「誰かに質問したい、でも聞ける相手がいない!」という状態に陥りがちです。友達に詳しい人やエンジニアでもいればよいのですが、そんな友達がいる人ばかりではないですよね。
わからないことを調べるにしても、どう調べたらよいのか・調べたら答えが見つかるのかどうかもわからない…。
結局一人で延々悩んで、何も解決しなくて、そのまま挫折してしまうケースもあります。
◆本を買っただけ・読んだだけで満足する
もちろん本を使って勉強するのはよいことなのですが、プログラミングは「本を眺めていればできるようになる」ものではありません。
自分で手を動かしてコードを書かないと、いつまでたっても身につかないです。本を使って勉強するにしても、「読みながら手を動かしてやってみる」実践が必須です。
◆本を見ながらのプログラミングがやりにくい
前述のとおり、本を使うのは悪いことではありません。
ただ、本を見ながらプログラミングをしようとすると、ぶ厚い技術書を開いて机に置いて、本とPC画面を見ながら写経をして、写経をしていたら閉じてしまった本をめくって、わからなくなったので前の章に戻って……みたいな状態になって、「面倒くさ!」と思った経験がある人も多いと思います。
特に初心者の場合、本を見ながら一つずつ手順を進めていこうとすると、何度も視線を移動させなければなりません。そのため、インプットとアウトプットがいちいち分断されて効率が悪くなりがちです。あと、地味にぶ厚い技術書ってPCの横に開いたまま置きづらいし…。
◆隙間時間でやりづらい・どれぐらい時間がかかるのかわからない
プログラミングを学ぼうと思ったら、どうしても「まとまった時間、PCに向かう作業」が必要になります。「空き時間に単語帳をながめる」みたいな勉強ではないため、まとまった時間がとれないと、なかなか先に進めません。
また、「一定のレベルまで進むのに一体どれぐらいの時間がかかるのか」がわかりづらいのも、初心者のハードルが上がってしまう一因かと思います。
◆本当に身についているのか・どれぐらい身についているのかわからない
なんとかで勉強を進めてみても、一人でやっていると本当に身についているのかわかりません。
初心者向けの練習問題でもないと、「自分はどこまで身についているのか?どこが足りないのか?本当にこの書き方で合っているのか?」を自分で判断するのは難しいですよね。
せっかくプログラミングに興味を持って勉強を始めたのに、上記のような壁にぶつかって挫折してしまうのは非常にもったいないことです。
ではどうすれば、挫折せずに勉強を進められるのでしょうか?
■挫折せずにプログラミングの勉強を進めるには
◆目的を考える
「ちょっと興味があるだけだから目的なんかない!」と思うかもしれませんが、目的を意識せずにやみくもに勉強を始めて、挫折せずに進める人はほとんどいないかと思います。
未経験からITエンジニアとして開発業務で通用するレベルになりたいのか、開発はしないけど仕事でエンジニアと関わる場面が多いのでスムーズに話せるようになりたいのか、作りたいものがあってそれを作れるようになりたいのか……。
「ちょっと興味があるから試しに軽く触ってみたい」という人は、最初から難しいところに手を出さずに、簡単なところからちょっとやってみて、そこで楽しいと思えば次の目標を考えればいいわけです。
たとえば、こちらの記事にもありますが、paizaの営業担当者(プログラミングまったくの未経験者)で「まずはpaizaのスキルチェック問題でDランクをとる」「エンジニアと同じ目線で話ができるようになる」という目的を持って勉強を進めていった人もいます。
まずは自分がなんのためにプログラミングを学ぶのかを整理してみましょう。
※paizaのスキルチェック問題について、詳しくはこちら
◆挫折の原因が起こりにくい学習サービスを使ってみる
せっかくプログラミングの勉強を始めても、前述のような原因で挫折してしまう人が多いので、paizaは動画でプログラミングが学べる「paizaラーニング」を作りました。
paizaラーニングは、初心者でも挫折せずに勉強が進められるように
・環境構築不要・ブラウザ上でプログラミングして実行できる
・ひとつの画面で音声つき動画を見聞きしながらプログラミングできて、効率よく学べる
・わからないこと・聞きたいことはプロのエンジニアに質問できる
・入門からWebアプリ開発まで、目的ごとにまとまった内容のコースがある
・動画はひとつ3~5分程度なので隙間時間でも進められる
・豊富な練習問題で、勉強した内容が身についたかどうかがわかる
といった特徴のある学習サービスです。
最近は、paizaラーニングに限らず、このような動画講座やブラウザでコードを実行できるなど、初心者でも挫折せずに学習を進められるサービスが増えています。
プログラミング初心者の方、プログラミングを学ぼうと思ったけど途中で挫折してやめてしまった経験のある方は、ぜひチャレンジしてみてください。
■まとめ
「勉強」というとインプットを意識しがちですが、プログラミングの場合、自分で手を動かしてコードを書くというアウトプットが非常に重要です。というかアウトプットを繰り返さないと、できるようにはなりません。
特にプログラミング初心者は、インプットだけでなくアウトプットがしやすい環境を使ったほうが、挫折せずに学び続けられるかと思います。
環境設定や難易度の高い内容の勉強は、いきなりぶつかって挫折したり嫌いになったりしてもつらいですし、最初からぶつかるよりは「やってみたい!」→「もっと深く知りたい!」になってから取り組んでみてもよいのはないでしょうか。(その頃には最初より知識も増えているでしょうし…)
paizaでは、4月15日(日)に24時間限定スキルチェック問題を出題します。
24時間以内にご回答いただいた方にはテストケースと解説を公開します。また、抽選でプレゼントも当たります!
4/15にご都合の合う方、自分のプログラミングスキルをはかってみたい方、ぜひチャレンジしてみてください。
「paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。
そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。