【誰でもできる】プログラミングが上達する学習方法5選
日々プログラミングを学習しているのに、上達する実感がわかないことって多いし、モチベーションも低下していきますよね。
しかし、上達するコツがさえわかれば、学習効率もよくなりプログラミングも楽しくなります!知っていればできるのに、その方法を知らないだけで挫折する人が多くいます!非常にもったいないと感じます!
そこで、誰でもできるプログラミングが上達する学習方法5選をまとめました!
今回紹介する方法は、誰でも実践できて、再現性がある方法、
そして、エンジニアとして必須な"自走能力"が高まる方法になっています!
僕の経験上と、周りで上達が早い人に共通した特徴をまとめています!
あなたのプログラミング学習と今後の未来に少しでも貢献できたらなと思って書きました!ぜひ、参考にしていただけると嬉しいです!
1,基礎から早い段階で次のステージにいくこと
基礎の学習がある程度終わったら、次のステージに早い段階で進みましょう!
なぜなら、いつまでも基礎をやっているとできる自分に酔ってしまい、そこで成長は止まってしまうからです。
たとえば、ProgateのHTML/CSSの基礎が終わったら何周もせずに(2周まで)、応用や発展的な内容を学んだり、簡単なWebサイトを作ってみたり、写経するなど次のステージに進みましょう。
以下のサイクルでの学習がおすすめです!
基礎学習を終える(理解度4割くらいでOK)
↓
応用や発展的な内容に進む(問題を解くor簡単なアプリを作る)
↓
分からない時、つまずいた時に基礎に戻ったり調べて復習する
↓
理解する
↓
応用・発展内容に進む
↓
つまずく
↓
復習する、調べる
↓
理解する
・
・
・
早い段階で基礎学習から卒業し、次のステージに進み、つまづいたら復習するというサイクルが理解度が上がります!
2,アウトプットすること
学んだ内容をQiitaやnoteや自身のブログ、周りの人にアウトプットしましょう!
なぜなら、アウトプットすることで学んだ内容に対して自分の思考が整理されるので、記憶に残るからです。
たとえば、教材や参考書の中で自分が得た気づき、つまずいた部分を解消した方法などを共有するのもいいかと思います!
自分がつまずいた箇所って他の人もつまづく可能性ありますし、同じエラーが起きたらアウトプットした内容を見返せば大丈夫ですよね!
文章よりも「人に話すこと」がおすすめです!
自分の耳は自分が一番聞いているので、圧倒的に記憶に残りやすいです!
もし間違った内容だったとしても、「あれ?いま言ったこと違ったかな?」と自分で気づきますし、わかったつもりの内容でも、いざ声に出してみると案外理解が薄かったことに気づけるので、そのたびに成長できます!
できればプログラミングを学習している仲間同士でアウトプットし合うのが1番いいです!
教える方も教えられる方もwinwinの関係を作れるし、お互いにフィードバッグをし合うのも効果的です!
インプット:アウトプット=3:7の割合で、アウトプット重視の学習をしましょう!
3,とにかく、手を動かすこと
本や参考書を読んで知識を入れずに、とにかく、手を動かしましょう!
なぜなら、実際に手を動かしてコードを書くことによって、どんな挙動が起きて、どんなエラーが起こるかわかるからです。
わからないままでも手を動かしてやってみると、自分が何を理解していて何がわかってないか体系的にわかります。
簡単なアプリを作ってみるのがいいです!
簡単に実装できるサイトやアプリで問題ないです!
実際に動くプログラムを作ることでより実践的なスキルを身につけることができます。
HTML,CSSであれば、自分の好きなサイトや簡単そうなWebサイトのほんの一部分だけ作ってみたり、Rubyであれば、簡単なアルゴリズムやレビューアプリなどです!
どんなものを作ったらいいかわからないという場合は、インターネット上のサービスを真似て、同じようなものを実際に作ってみるといいでしょう。
インプットが多いとついわかったつもりになりがちです。
ある程度基礎を学んだ後は、手を動かしてみましょう!理解度もプログラミングをどうやって書くのか体感しやすいと思います!
4,いつでも質問できる環境で学習すること
分からない時やエラーが発生した時に、いつでも質問できる環境で学習しましょう!
なぜなら、プログラミングは疑問やエラーの連続だからです。
参考書や学習サイトに書いてあるものですべて理解できるのなら別ですが、それはかなり難しいと思います。
そして、いつまでも解決できない状態だと、モチベーションも下がり挫折率が上がります。
僕も実際に、最初は独学していましたが、周りに誰にも質問できる人もおらず挫折しかけました。 なので、プログラミングスクール(TECH CAMP)に通い、いつでも質問できる環境で学習しました!
次々と浮かんでくる疑問点やエラーをメンターに質問し、1つ1つ疑問を払拭しながら学習できたので、独学よりも理解度が向上しました!
いつでも質問できる環境で学習することによって、不明点を払拭しながら学習できるので、独学よりも上達のスピードは早いです!
5,問題を解くこと
問題や課題をたくさん解きましょう!
なぜなら、問題集を解くと内容をきちんと理解できているかどうかをチェックできるからです。
教科書だけでは分かりにくい部分を問題を解くことにより、理解度のギャップを埋めることができます。
仮にそのとき解けなくても、ググったり、参考書で調べて覚えることができます。
もし、問題を解かず一気にインプットするだけだと全てが薄い理解で終わってしまう可能性がありますので、参考書や学習サイトで学習するなら、最後に問題があるものを選んだほうがいいかと思います!
たとえば、Progateで言うところの「道場編」です!
僕自身、あれを最初やった時を鮮明に覚えています。
意味がわからなすぎて全く解けませんでした。
しかし、もがきながらも解けなかったところ(ほぼ全部ですが。笑)を徹底的に調べて1日かけて解きました!
その結果、圧倒的にHTML,CSSの苦手意識を克服することができたと思います!
問題を解いて、自分の理解度のギャップをうめましょう!
まとめ:アウトプットが大切
それぞれに共通することは、「アウトプットを重視する」 ということです!
プログラミングは新しい知識や技術を学ぶことも多いので、インプットももちろん大切ですが、学んだことをアウトプットすることで知識が定着し、理解度が増して結果的に上達も早くなります!
ぜひ、プログラミング学習で伸び悩んでいる方は参考にしてみてください!
最後まで読んで頂きありがとうございます!
この記事が少しでもあなたの役に立てたら嬉しいです!
これからも一緒にプログラミング楽しんでいきましょう!
Discussion