ノンプロ研流「プログラミング上達のための8つの約束」
※本記事はコミュニティ「ノンプロ研」で行われた「初心者プログラミング講座VBAコース」の事前課題をまとめた記事です。
講座の事前課題2つ目は、2019年1月15日に行われた[ノンプロ研大阪分科会Vol.1「プログラミング上達のための8つの約束」]の動画を視聴することでした。
今回は動画を見た感想を書いていきます。
こちらの動画はYoutubeでも公開されているので気になる方はぜひご覧ください。
またノンプロ研オーナーであるタカハシノリアキさん(@ntakahashi0505)のブログにもレポートがまとめられています。
私はVBAというプログラミング言語の勉強のために受講しますが、他のプログラミング言語の勉強に取り組もうとしている人にも通ずるものがあると思います。
プログラミング上達のための8つの約束
本気記事タイトルにもなってる動画内で紹介しているプログラミング上達のための8つの約束とは以下の通りです。
- 実務で使う
- 習慣化する
- 構文どおりに書く
- 調べる
- 打たない
- 構造化データ
- リーダブルコード
- アウトプット
特に1・2・8はプログラミング上達以外の勉強にも活用できる内容ではないでしょうか。
今回はこの3つの項目について自分の考えも含めてご紹介していきす。
その1「実務で使う」
そもそもプログラミングを学ぶにはどれくらいの時間が必要なのでしょうか?
もちろんどのレベルをめざすのか、何を作るのかなど個人差によると思いますが大体180~300時間が理想とのこと。
180~300時間って想像つきますか?
1日2~3時間勉強した場合、週14~21時間、1ヶ月60~90時間くらい。
なのでプログラミンの習得には約3~4ヶ月くらいかかるそうです。
時間がないから1日1時間でいいかなーと思ってると半年から1年近くかかってしまいます。
プログラミング学習は短距離走ではなくペナントレース
その2「習慣化する」
そのためには毎日当たり前に勉強を続けられる体制、要は習慣化が大事です。
そんな勉強する時間がないよ!といういう人へのタカハシさんのアドバイスは「仕事中に学べばいい」というまさかの逆転の発想!
言われてみればそもそも仕事で使うために学ぶのなら仕事中に学んでも別に問題ないよね?(他の仕事に支障がない程度に)
私も仕事中に分からないことがあればググりまくっているので、同じように分からなければネットで調べまくればいい。
また、動画では『上達の法則』という本を取りあげ、そこで書かれている「自分に関係していることほど学びの質があがる」という一節を紹介していました。
大事なのは**「業務がプログラミング化できるか」「どのようにプログラミング化できるか」を常に考えながら仕事をする。**
8.アウトプット
ワシントン大学の実験では教えることを前提で学習すると学習効率が高くなる。という実験結果があるそうです。
また、フランスの哲学者ジュベールの「教えることは、二度学ぶことである。」という言葉があります。
誰かに、何かを教えようとすると、自分がよく理解しておく必要があります。
そのため、学習するときは他人のために学習しようと思うと、より理解しようと意識するため、学習の効率がよくなるそうです。
ですが、プログラマーを本職としないノンプログラマーには、勉強会や開発の話し合いの場がなく、基本1人でプログラミングを学ぶことが多いと思います。
あまりアウトプットの機会がない場合、プログラミング学習を誰にどう教えればいいのでしょうか。
最も良い方法が、ブログです。
ブログでの発信により得られるものはプログラミングスキルだけではなく、書くスキルも得ることができます。
まあ、記事がストックされると、自分専用の辞書にもなります。
今でははてなブログやライブドアブログなど多くのブログサービスで誰でも簡単にブログを開設することができます。
他にもnoteやこのZennなど、よりSNSに近い感覚で使えるものもあります。
グループや世界に向けてインターネットを使い、学んだことをアウトプットすることで多くの人に学んだことを発信することができます。
学生時代に勉強ができる同級生からノートを借りたり、または貸してくれと頼まれたことがある人はいるのではないでしょうか。
ブログを単なる日記ではなく、学習ノートとして使用することで、自分のブログを読んだ人に自分の学びを伝えることができるのです。
もしかしたら「まだ勉強したばかりで誰かにまだまだ教えらえれる段階じゃない・・・」、「間違ったことを発信したらどうしよう・・・」と不安になるかもしれません。
ですが、適度なそういった緊張感がある方が学習効率が高いのです。
むしろ、何か間違いの指摘を受けたらそれが学びになるのです。
まとめ
以上、「プログラミング上達のための8つの約束」のうち3つをご紹介しました。
プログラミング学習の参考にしてみてください!
今後この講座で学んだVBAのアウトプットをしていく予定ですので、良ければぜひ見ていってください。
ここまで読んでいただきありがとうございましたー!
Discussion