目次
はじめに
プログラミングなどの学習において理想は次のような感じではないでしょうか。
- 早くやりたい
- 成果物も作りたい
- 身に着けたい
でも、現実はそんなに甘くないですよね。現実はこんな感じでしょうか?
- 分からない
- 自分で作るってなると難しい
- 身についた感じがしない
私もこんな感じでしたが、最近、ちょっとうまくいっているので自分の備忘録を兼ねつつ、情報共有したいと思います。
結論:W3Schoolsと科学的な勉強法の組み合わせ
やり方を詳しく説明します。
- まずW3Schoolsという海外の学習サイトで軽くインプット
- もう作ります。アウトプットです。
ここに次の要素を足します。
- 科学的な勉強法 つまり検索練習をプラスします。
検索練習とは思い出す練習の事ですね。誰かに説明したり、問題集を作ったり。
要するにこういうこと。
- W3Schools + 検索練習
これだけだと何ぞやということだと思うので、それぞれ、W3Schoolsと科学的な勉強法について説明していきます。
W3Schoolsとは
はじめまして。W3SchoolsとはWikipediaにはこう書かれています。
W3Schoolsはウェブ技術のオンライン学習サイトである[1]。HTML、CSS、JavaScript、PHP)、SQL、Bootstrap、jQueryに関する参考資料や教材があり、月間100万人以上のユニークビジターが訪問している。
1998年に開設され、サイト名はWorld Wide Webに由来するが、ノルウェーのRefsnes Data社が運営しておりW3C (World Wide Web Consortium) には属していない[2]。数千のコード例の記載があり、オンラインエディタで利用者がサンドボックス)に自由に編集し試せる。
引用元: wiki, W3Schools
要するに、無料でWEB系の開発に必要な知識が学べるデーってことです!しかも、サイト上でコードも書けちゃう優れもの。プログラミング学習をするときの落とし穴って意外と環境構築にあるんですよね。めんどくさいのに時間がかかるという。。まあ、逆にこれがコンピューターの仕組みを知る一歩になったりするわけですが、めんどくさいですよね。
科学的な勉強法とは?
一言でいってしまえば検索練習のことです。思い出す訓練という感じですよね。ここではあんまり説明しませんが次の動画がとても参考になると思います。それか本もおすすめですね。
- アクティブリコール
- 分散学習
- 自己説明
それでは、それぞれの勉強法をプログラミング学習に応用するとどうなるのか。
アクティブリコール
- 練習問題や実際に動かす: W3Schoolesならその場でコーディングできるぞ!
- フラッシュカード:例えば、JavaScriptのメソッドやPythonの標準ライブラリについて、質問と答えのフラッシュカードを作成し、定期的に復習する。
分散学習
学習を一度に集中して行うのではなく、時間を分けて少しずつ行う方法です。プログラミング学習でも、少しずつ継続して学ぶことで効果が上がります。
- 通勤通学電車の中で読む+夜にコーディング 要するに分散
- 一度に本や動画で勉強するのではなく隙間時間の活用にもってこい
- 別に一気にやってもいいですが、
自己説明
自己説明は、自分自身に対して学んだ内容を説明することです。プログラミング学習においては、コードを書いたり、設計を説明したりすることで理解を深めます。
- コードのコメント:自分が書いたコードに対して詳細なコメントを追加し、各ステップの意図や動作を説明する。
- ブログやメモ:学んだ内容をブログに書く、もしくはメモを取る。例えば、新しく学んだアルゴリズムの動作を詳細に説明する記事を書く。
一応私が過去やってみて良かったなと思った方法をとりあえず別居しています。要するに分散して思い出ことが要点です。それができる方法だったら、クリエイティビティ発揮してどんどんいろんな方法を試して言ってもらったらいいと思います。
W3Schoolsのデメリットとメリット
- デメリット
- 英語
- Google翻訳でどうにかなる
- 説明が簡潔すぎて物足りないかも
- 英語
- メリット
- 要点がまとまっている
- 必要な知識がいい感じの量でまとまっている
- コードを書いて実行できる
デメリットとメリットをまとめるとこんな感じです。英語はやっぱりネックになってきますよね。やはり私たち日本語話者ですから。この記事を読まれているっていうことはおそらく日本語メインで話されていると思いますし。日本語の熟練度が高いですよね。一応Google翻訳でもどうにかなるぐらいの英語ですし、文章もそんなに長くないので、英語の勉強も兼ねてっていうならちょうどいいかもですね。
まとめ
さっくりとインプット+科学的な勉強法を取り入れながらアウトプット(プログ、成果物、フラッシュカード、分散学習)
ということでした!
- 今回はここまで読んでくださってありがとうございます。プログラミング学習は、結構難しいので忍耐努力が必要な部類だと思います。そんな中でも効率よく前に進めていきたいという方々も多いと思います。そんな方々への一助になれば幸いです。