プログラミングを勉強してるけどなかなか上達しない?アウトプットの仕方を意識してみよう!

皆さんこんにちは(^ ^)

WEBエンジニアでプログラミング講師でブロガーのをしょーじ(@swmi_pg)です!

本日も当ブログを見ていただき、本当にありがとうございます!!

 

 

早いもので、僕がエンジニアとして転職をしてから半年ほどが経ちました。転職したのと同じ時期にプログラミング講師の仕事もスタートしたのですが、これまでに数多くの生徒さんにプログラミング学習のアドバイスをさせていただきました。

ほとんどの方が未経験からの挑戦になるので、最初はつまずく事も多いのですが、その中でも特に多い悩みが、

勉強してるんですがなかなか上達しません!!という悩み。

 

この記事を読んでいるプログラミング初心者の方にも当てはまるかもしれません。

実はこの悩み、僕自身も味わってきた事でもあります。

学習を始めた当初は、

  • HTML?CSS?聞いた事あるけど一切書けないよ
  • コマンドって何?
  • ブラウザ?ホームページの事?

こんなレベルでスタートしました。分からなすぎて辛かった 笑

 

今でこそ思う事ですが、プログラミング上達の鍵は、ずばり「アウトプットの方法」にあるのではないかと考えています。

そこで本記事では、プログラミング講師として生徒に教える事で気付いた、プログラミングが上達するために重要なアウトプットの方法について書いていきます。

ではいきましょう!

 

 

最も記憶に定着するアウトプットの方法は〇〇こと!

そうは言っても、参考書を読んだり、コードを書いてアウトプットしてるよって方。

確かにそれもアウトプットの一つです。ただ今回僕が提案したいのは、

  • 自ら体験する
  • 人に教える

この2つのアウトプット方法です。

 

まずはこちらをご覧ください。

こちらは、経験の円錐という図です。

僕も聞いた時???となったので、簡単に引用したものを書いておきます。

経験の円錐とは

エドガー・デール Edgar Dale が、その著書”Audio-Visual method in teaching (学習指導における聴視覚的方法, 1946) で提唱した学習経験の分類図、「経験の円錐:Dale’s Cone of Experience」が元である。

抽象なものから具体的な次元に沿って「経験」を11の段階に分類した。「学習」は「経験」の一般化にあると定義して、そのためにはもっとも直接的で具体的な経験から、さまざまな抽象化の段階を経て、最後にもっとも抽象的な言語象徴つまり概念化に至ることを説いたものである。

引用:デールの「学習のピラミッド」は「経験のピラミッド」が元

 

いやーわかりづらい 笑

要するに、同じアウトプットでもやり方によって記憶の定着度が全然違うってことみたいです。

ここでもう一度図を見てください。

  • 自ら体験する
  • 人に教える

 

「講義」が5%、「読書」が10%なのに対し、「自ら体験する」は75%、「人に教える」に関しては90%と、

記憶への定着度が段違いに高いのです。

 

これをプログラミング学習に置き換えてみると、このようになります。

定着度が低い———————————

  • 講義を聞く
  • 参考書を読む
  • 誰かがコードを書いているのを見る

 

定着度が高い———————————

  • 自分でコードを書く
  • 人に教えてあげる

 

では、自分でコードを書いたり、人に教えてあげるにはどのような行動を起こせばよいのでしょうか?

次に、具体的な行動案について書いていきます。

 

 

定着しやすいアウトプットをする環境とは

ここからは具体的に、こんな環境なら定着度の高いアウトプットができそうだな〜と思ったことを書いていきます。

 

勉強会に参加してみる

未経験者向けの勉強会であれば、「最近プログラミングの勉強を始めたんですけど全然分かってないです…」みたいな人も来るので、ある程度基礎を触った人なら「ここはこうで、こうなるんだよ〜」と教えることができます。

人に教えるという最も定着度の高いアウトプットをすることもできますし、コードを書きながら自分自身の復習にもなります。

プログラミング仲間ができれば、自身のモチベーションアップにもつながるのでいいことづくめですね(^ ^)

 

プログラミングスクール

正直スクールに入ってしまえば、アウトプットし放題です。

  • 授業で発言する
  • 同期に教えてあげる
  • オリジナルサービスをつくる

などなど、逆にここでアウトプットしなかったらどこでするのくらいのレベルです 笑

 

ちなみに僕はスクールでプログラミング講師の副業もしているのですが、

エンジニアとして学んだことをそのまま生徒さんに教えるので、最強のサイクルで定着しているのではないかと考えています。

関連記事:プログラミングスクールにDIVE INTO CODEをおすすめする理由【卒業生で講師の僕が語る】

 

SNSやブログで発信してみる

地方なのでなかなか勉強会とかがない!スクールに入る余裕がない!

そんな方におすすめの方法です。

僕もこのブログを通して技術的なことも発信していますが、自分が勉強してできるようになったことを、自分の言葉で書いてあげるだけでもかなりいい復習になります。

WordPressとかでがっつりサイトを作らなくても、無料で作れるブログはたくさんありますから、金銭的な面を気にせずに運用できるのも大きなメリットですね!

 

 

プログラミング学習に悩む方にアドバイス

ここまでアウトプットの方法について書いてきましたが、ここでプログラミングが上達しなくて悩んでいる方へ一つアドバイスさせていただきます。

それは、

思うように上達しないことを、悲観的に考えなくていい

ということです。

そもそもの話ですが、プログラミングってそんな簡単に身につくスキルじゃありません。

誰でも、お金をかけずに、短時間で身につくスキルだったら、エンジニア不足になんてなってないし、こんなに需要があるわけないですよね 笑

自分はセンスがないのかな…
早く転職しないと収入もないのにどうしよう…

こんな悩みを抱えている方もいるかもしれません。

ちなみに僕は2つ目のパターンでした 笑

でもご安心ください。

経験則ですが、目標を決めて、最適な手段で、時間を投資すればプログラミングはできるようになります。

僕は他の記事でも、会社を辞めてから2ヶ月ほどで転職できたと書いていますが、退職日の1ヶ月前くらいからコツコツと勉強は始めていました。

スクールに通ってからも毎日10~12時間くらいは勉強していたので、たぶん合計で800時間くらいは投資してます。(ふつーに飲みにも行ってたから周りの友達はそんな風に思ってなかったと思うけど。)

 

価値の高いスキルを習得するにはそれなりに時間はかかるもんだということを頭の隅っこに置いて、

  • 1日5ページだけ参考書を読む
  • 1行でいいからコードを書いてみる
  • 何か一つ覚えたことをメモしておく

まずはこのくらいゆる〜い目標で大丈夫なので、継続してみましょう(^ ^)

ちょっとずつでも、毎日やれば1ヶ月後にはかなりの知識が増えてますよ!

 

 

まとめ

今回の記事をまとめると、

定着度の高いアウトプットの方法

  • 自ら体験する
  • 人に教える

 

アウトプットしやすい環境づくり

  • 初心者向け勉強会に参加してみる
  • プログラミングスクールに通う
  • SNSやブログで発信してみる

 

こんな感じです。

質の高いアウトプットを意識して、どんどんプログラミングスキルを習得していきましょうー!!

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です