プログラミングを学んでいるけどなかなか上達しない
なんで上達が遅いのかわからない
どうすれば早くプログラミングが上達するのか知りたい
プログラミング学習を始めたばかりの人には、こういった悩みを持っている人も多いはず。
そこで今回は、
・プログラミングが上達しない人の特徴
・プログラミングの上達が早い人の特徴
・プログラミングを上達するためのコツ
をご紹介します。
プログラミングがなかなか上達しないと悩んだ時は、ぜひこの記事を参考にしてみてください。
プログラミングが上達しない人の3つの特徴
プログラミングが上達しない人には、実はある共通する特徴が見られます。中でも、特にプログラミング初心者にありがちな3つの特徴についてご紹介します。
1つのプログラミング言語を完璧に理解しようとしている
「まずこのプログラミング言語をすみからすみまで完璧に理解しよう!」
という考え方は、学校での成績が良かった人や完璧主義な人に非常にありがち。ですが、プログラミングにおいて細部まで完璧に理解しようとする勉強法はNGといえます。
なぜなら現役でバリバリ働くエンジニアであっても、1つの言語を完璧に理解しているということはまずないからです。
しばらくPHPだけでコードを書いていて、久しぶりにJavaScriptでコードを書こうとしたら細かい書き方を忘れていた!なんてことも普通にあります。
プロのエンジニアでもそうなのですから、初心者ならなおのこと。1つのプログラミング言語について、細かいところまで完璧に覚える必要は全くありません。
プログラミング学習においては「必要になった時に必要なところだけ勉強する」ことが効率のいい方法なのです。
プログラミング本を最後まで終えようとしている
プログラミングを始めようと思って購入した本を、まずは最後まで終えようとしていませんか?プログラミング本は分厚いものも多く、初心者がいきなり最後まで終えるのは至難の技です。
また、プログラミングは「必要になった時に必要なところだけ勉強する」ことが効率のいい勉強法です。
今は必要のない知識まで勉強していると、なかなか理解も進まず時間だけがどんどん無駄に過ぎてしまいます。
いきなり難しいプログラミング言語に挑戦している
「ゲームやAndroidアプリが作りたい!」というあなた。いきなりJavaやC言語の勉強を始めていませんか?
いくら目的に合った言語だったとしても、今まで全くプログラミングをしてこなかった初心者がJavaやC言語から始めるのはかなり難易度が高いです。
最初に難しい言語から始めてしまうと、理解できない部分が多く挫折してしまいがちです。
プログラミングが上達する人の3つの特徴
では、プログラミングの上達が早い人はどんな人なのでしょうか?プログラミングがするすると上達する人に見られる3つの特徴についてご紹介します。
プログラミングを学ぶ目的がはっきりとしている
プログラミングはあくまで「手段」であり「目的」ではありません。
プログラミングを学んだ先にどうなりたいのか・何がしたいのかをはっきりと明確にできている人は、自分の進むべき道も見えているためそれだけ上達が早くなります。
例えば、
・エンジニアに転職したい
・プログラミングで副業をしたい
・自分のWEBサービスを作ってみたい
などです。
目的をはっきりさせることで、
・自分が何を学ぶべきか
・いつまでの期限で達成すべきか
など、今やるべきことがはっきりと見えてくるはずです。
目的さえ達成できれば、細かい言語仕様やわからなかった部分の理解など、今はやらなくていい後回しにするべき部分に気づくはずです。
プログラミング学習自体を楽しんでいる
何においても言えることですが、楽しめる人はそれだけ上達が早いです。
嫌々やってしまうと、プログラミング学習自体に気が乗らなくなってしまい、上達も遅くなってしまいます。
プログラミングの上達が早い人は、プログラミング自体を楽しんでいることが多いです。
でも、「プログラミングって難しくてとても楽しいとは思えない」という人もいるでしょう。そういう時はプログラミングを学ぶ目的を明確にすることが大事です。
目的さえ明確になっていれば、多少の辛いことも「目的までの道のり」だと思えきっと楽しめるはずです。
疑問点を言語化することが得意
プログラミングを学習していると、エラーが発生したり、思ったように動かなかったりと、次々にわからないことが出てきます。
そういう時はまずググって検索するのですが、自分の求める答えが見つかるように検索キーワードを入力しなければなりません。
疑問点を言語化するのが得意な人の場合、Googleで検索してすぐに答えを見つけることができます。
ですが、プログラミング初心者の場合
・自分が何に困っているのか
・どうしたら答えが見つかるのか
を言語化するのが難しいことが多いです。
初心者がプログラミングを学習する中でつまずくようなことは、必ずすでに誰かがつまずいています。
検索すればその答えも見つかるはずですが、初心者の場合「どんなキーワードを入れて検索すればいいか」に悩み、時間を無駄にしてしまうのです。
プログラミングが上達するための7つのコツ
プログラミングの上達が遅い人どんな人か、また上達の早い人がどんな人かおわかりいただけたかと思います。
では、具体的にどうすればプログラミングの上達が早くなるのか知りたいですよね?そこで、プログラミングが上達するために欠かせないコツを7つご紹介します。
プログラミングを学ぶ目的を設定する
プログラミング学習を始める前に、
・何のためにプログラミングを学習するのか
・プログラミングを学んだ後にどうなりたいのか
など、必ず目的をはっきりとさせておきましょう。
プログラミングを勉強する上で、一番の障害となるのが「挫折」です。初心者が初めて触れるプログラミングは、今まで知らなかった言語や概念にあふれています。
ですが、最初に目標を明確にしておくことで
・何を勉強するべきか
・何を優先させるべきか
を改めて確認することができます。日々こなすべきことも明確になり、挫折もしづらくなるでしょう。
また、目標を設定して終わりにせず、毎日内容を再確認するようにしましょう。
再確認することで、プログラミングを学ぶことが「手段」から「目的」にすり替わってしまうこともなくなるはずです。
プログラミングを学ぶ期限を決める
プログラミング学習を始める前に、具体的な期限も決めましょう。
また、できるだけ細かいタスクに分解し、それぞれのタスクに期限を設けることがおすすめです。
具体的な期限を決めることで、今何をやるべきなのか、何を優先するべきなのかもはっきりと見えてきます。
学習を継続して習慣化する
プログラミングは一朝一夕で習得できるものではありません。短期間で身につけることはまず無理で、継続して学習することでようやく身につくスキルです。
プログラミングの基礎を習得するには最低でも「300時間」必要だと言われています。1日2時間ずつ勉強する場合、5ヵ月ほどかかります。
1ヵ月や2ヵ月で習得するのはまず無理な話なので、まずは継続して学習することを意識してみましょう。
いきなり長時間が難しいという人は、1日30分からでも自分の生活の中に取り入れてみましょう。大事なのは、必ず「毎日」やることです。
毎朝顔を洗ったり歯を磨いたりするように、自分の生活の中で「当たり前」の行動になれば、継続するのも難しくないはずです。
まずはコードを書いて動かしてみる
独学でプログラミングを始める場合、「まずは入門本を購入して1冊読んでみよう」という人も多いのではないでしょうか。
そして1冊読み終えたら次の本を購入し、また読みふけるというパターンに陥りがちです。入門本を見ること自体は悪くありませんが、同時に必ず手を動かすようにしてください。
プログラミングは、ただ本を読んでいるだけでは絶対に上達しません。自分で手を動かし実際にコードを書くことで、初めて身につくのです。自分の作りたいWebサイトやWebアプリを、自分の手で作ってみるとより上達が早くなります。
「作りたいものがない」「何を作っていいかわからない」という場合は、まずは入門書や学習動画のコードをそのまま書き写しましょう。
ただ書き写すだけで意味があるの?と思う人もいるかもしれません。
ですが、書き写すことで
・どういう動作をするか確認できる
・タイプミスしがちなポイントがわかる
・エラーを解決できるようになる
など、プログラミングを上達するために欠かせない能力が身につきます。
ただし、コピー&ペーストは厳禁です。必ず自分の手でコードを打ち込みましょう。
書き写すうちに体がコードを覚え、自分の力でプログラミングできるようになります。
Twitterで仲間を探してみる
プログラミングを学んでいると、解決できないエラーや知らない用語など、いろんな壁にぶち当たります。
1人で孤独に勉強していると、辛くて心が折れてしまいそうになることもあるかもしれません。そんな時は、一緒にプログラミングを学ぶ仲間を見つけましょう。
プログラミング初心者の仲間が見つかれば、辛い時に励ましあえたり、情報を共有することもできます。
Twitterであれば登録も簡単で、短い文章で気軽に発信することができます。
「#プログラミング初心者」「#プログラミング学習」などのハッシュタグを使えば、仲間を見つけることも簡単です。
いいね機能のおかげで他人の反応ももらいやすく、モチベーションも保ちやすくなります。
簡単なプログラミング言語から始める
今までまったくプログラミングをしてこなかったという初心者なら、まずはHTML・CSSがおすすめです。
HTML・CSSは、正確にはマークアップ言語といいプログラミング言語ではありません。
ですが、
・テキストエディタがあれば書ける
・ブラウザですぐに表示が確認できる
と、学習を始める難易度も低く、初心者でもモチベーションを維持しやすいです。
他にも、PHPやRubyなどの言語も習得難易度が低いです。
初心者はHTML・CSS、PHPやRubyなどの易しいプログラミング言語から始めましょう。
作りたいものを決める
プログラミングを学ぶ目的にも通じることですが、まずは何を作るのか具体的に決めてしまいましょう。
例えば
・Webサイト
・ECサイト
・日記アプリ
・TODOリスト
・SNS
など。作るものを決めることで、
・どんな機能が必要か
・機能を実装するにはどんな技術が必要か
・そのために学ばないといけないのはどのプログラミング言語なのか
とやるべきことが次々にはっきりとしていきます。
その時に大事なのは、「完璧を目指さない」ということです。必要最低限の機能を実装させ、まずは完成を目指しましょう。
完成した制作物をTwitterで共有すれば、他の人からの反応ももらえて、さらにモチベーションがアップするでしょう。
まとめ
今回は、初心者のプログラミング学習について、
・プログラミングが上達しない人の3つの特徴
・プログラミングの上達が早い人の3つの特徴
・プログラミングを上達するための7つのコツ
をご紹介しました。
「プログラミング学習をしているけど最近伸び悩んでいる」「プログラミングを学ぶのが辛い」という方の助けになれば幸いです。